[{"data":1,"prerenderedAt":402},["ShallowReactive",2],{"blog-uk-three-ways-to-back-up-a-supabase-database":3},{"id":4,"title":5,"body":6,"category":364,"cover":365,"coverAlt":365,"description":366,"draft":367,"extension":368,"faq":369,"image":382,"keywords":383,"meta":389,"navigation":390,"ogTitle":391,"path":392,"published":393,"seo":394,"stem":395,"tldr":396,"updated":400,"__hash__":401},"blog_uk\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database.md","Три способи зробити резервну копію бази Supabase, і чого бракує",{"type":7,"value":8,"toc":353},"minimark",[9,17,20,25,28,31,120,124,127,130,175,181,193,197,200,203,210,215,218,227,231,237,247,250,256,259,263,270,277,280,288,292,295,298,311,315,340],[10,11,12,13],"p",{},"Кожен, хто будує на Supabase, зрештою ставить те саме запитання, зазвичай десь\nза тиждень після запуску і зазвичай о другій ночі: ",[14,15,16],"strong",{},"якщо я щось зламаю, чи\nповерну свої дані?",[10,18,19],{},"Відповідь цілком залежить від того, який із трьох шляхів ви обрали, і кожному з\nних бракує того, що покривають два інші.",[21,22,24],"h2",{"id":23},"який-із-них-обрати","Який із них обрати?",[10,26,27],{},"Увімкніть те, що дає ваш тариф Supabase, а потім тримайте копію деінде. Це дві\nрізні справи, і зробити лише першу означає припуститися саме тієї помилки,\nзаради якої написано цю статтю.",[10,29,30],{},"Копія з панелі захищає вас від ваших власних помилок. Копія, яку тримаєте ви,\nзахищає від втрати акаунта: невдалого списання, призупиненого проєкту, пароля,\nякий не вдається відновити. Це різні катастрофи, і вони потребують різних\nвідповідей.",[32,33,34,56],"table",{},[35,36,37],"thead",{},[38,39,40,43,46,53],"tr",{},[41,42],"th",{},[41,44,45],{},"Панель Supabase",[41,47,48,52],{},[49,50,51],"code",{},"pg_dump"," вручну",[41,54,55],{},"Керовані копії",[57,58,59,73,84,95,106],"tbody",{},[38,60,61,65,68,71],{},[62,63,64],"td",{},"Працює без вас",[62,66,67],{},"Так",[62,69,70],{},"Ні",[62,72,67],{},[38,74,75,78,80,82],{},[62,76,77],{},"Копію тримаєте ви",[62,79,70],{},[62,81,67],{},[62,83,67],{},[38,85,86,89,91,93],{},[62,87,88],{},"Переживе втрату акаунта",[62,90,70],{},[62,92,67],{},[62,94,67],{},[38,96,97,100,102,104],{},[62,98,99],{},"Перевірено, перш ніж зарахувати",[62,101,70],{},[62,103,70],{},[62,105,67],{},[38,107,108,111,114,117],{},[62,109,110],{},"Вартість",[62,112,113],{},"Лише на платних тарифах",[62,115,116],{},"Безкоштовно",[62,118,119],{},"Підписка",[21,121,123],{"id":122},"що-насправді-міститься-в-резервній-копії","Що насправді міститься в резервній копії",[10,125,126],{},"Ваші таблиці, ваші рядки, ваші індекси й функції та ваші правила Row Level\nSecurity, тобто політики, які вирішують, хто що може читати, а не лише таблиці,\nдо яких вони застосовуються. Оце й усе.",[10,128,129],{},"У ній немає всього того, що ніколи не було в базі:",[32,131,132,142],{},[35,133,134],{},[38,135,136,139],{},[41,137,138],{},"У файлі",[41,140,141],{},"Поза файлом",[57,143,144,152,160,168],{},[38,145,146,149],{},[62,147,148],{},"Структура таблиць із кожним стовпцем і обмеженням",[62,150,151],{},"Файли у Storage: завантаження, аватари, вкладення",[38,153,154,157],{},[62,155,156],{},"Кожен рядок, який створили ваші користувачі",[62,158,159],{},"Налаштування автентифікації, як-от ваш застосунок Google чи GitHub",[38,161,162,165],{},[62,163,164],{},"Індекси й функції",[62,166,167],{},"Edge-функції, які живуть у вашому репозиторії",[38,169,170,173],{},[62,171,172],{},"Політики Row Level Security",[62,174],{},[176,177],"diagram",{"alt":178,"caption":179,"src":180},"Піктограма бази даних зі стрілкою, що веде у файл, позначена галочкою. Нижче стоїть піктограма зображення з перекресленою стрілкою до того самого файлу, позначена хрестиком.","Резервна копія бази даних копіює саме базу даних. Ваші завантажені файли лежать деінде, на всіх трьох шляхах.","\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database\u002Fdatabase-not-files-1600x570.png",[10,182,183,184,187,188,192],{},"Люди найчастіше спотикаються на ",[14,185,186],{},"Storage",". Кожен аватар, кожен\nзавантажений PDF, кожне зображення, яке додали ваші користувачі, живе в\nоб'єктному сховищі, а не в базі. База тримає лише ",[189,190,191],"em",{},"шлях"," до кожного файлу.\nВідновіть копію бази в порожній проєкт, і ви отримаєте таблицю, повну посилань\nна файли, яких там немає.",[21,194,196],{"id":195},"шлях-1-панель-supabase","Шлях 1: панель Supabase",[10,198,199],{},"Найпростіший, і той, який більшості варто увімкнути першим. Supabase робить\nщоденні копії на платних тарифах, а відновлення на конкретний момент часу\nдоступне як надбудова, якщо потрібно відмотати до певної хвилини, а не до\nминулої півночі.",[10,201,202],{},"У чому він добрий: працює без вас, він повний, а відновлення займає кілька\nкліків в інтерфейсі, а не команду, яку треба ввести правильно під тиском.",[10,204,205,206,209],{},"Чого йому бракує: ",[14,207,208],{},"копія лежить усередині акаунта."," Якщо проєкт призупинено,\nякщо не пройшла прив'язана картка або ви втратили доступ до входу, копії\nопиняються за тими самими дверима, що й те, що вони мали захищати. Це пожежний\nвихід усередині будівлі.",[176,211],{"alt":212,"caption":213,"src":214},"Два акаунти, обидва перекреслені. У першому файл резервної копії лежить усередині межі акаунта і гасне разом з ним. У другому файл стоїть поза межею і досі там.","Той самий втрачений акаунт двічі. Змінилося лише те, з якого боку лінії стояла копія.","\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database\u002Finside-the-account-1600x570.png",[10,216,217],{},"До того ж на безкоштовному тарифі його немає взагалі, а саме там і сидить\nбільшість щойно запущених застосунків.",[10,219,220,221,226],{},"Від того, на якому ви тарифі, залежить, чи є це у вас узагалі, а\n",[222,223,225],"a",{"href":224},"\u002Fblog\u002Fdoes-supabase-back-up-my-database","перевірка займає дві хвилини",".",[21,228,230],{"id":229},"шлях-2-pg_dump-на-вашій-власній-машині","Шлях 2: pg_dump на вашій власній машині",[10,232,233,234,236],{},"Supabase працює на Postgres, тож стандартний інструмент Postgres підходить. ",[49,235,51],{},"\nзаписує всю базу у файл, який тримаєте ви.",[238,239,244],"pre",{"className":240,"code":242,"language":243},[241],"language-text","pg_dump \"postgresql:\u002F\u002F…ваш рядок підключення…\" \\\n  --clean --if-exists --no-owner \\\n  --file backup-2026-08-09.sql\n","text",[49,245,242],{"__ignoreMap":246},"",[10,248,249],{},"У чому він добрий: безкоштовний, повний, файл ваш, і ви можете відновити його в\nцілком новий проєкт на іншому акаунті. З трьох шляхів це єдиний, який переживає\nвтрату всього іншого.",[10,251,205,252,255],{},[14,253,254],{},"він стається лише тоді, коли ви про нього згадаєте."," Це не\nдрібниця, це і є вся вада. Дамп на вашому ноутбуці має дату того дня, коли ви\nвостаннє про нього подумали, а день, коли він потрібен, ніколи не буває днем,\nколи ви про нього думали.",[10,257,258],{},"Є й друга, тихіша проблема: неперевірений дамп лишається здогадом. Файл,\nзаписаний тоді, коли міграція була застосована наполовину, або мовчки обрізаний\nчерез розрив з'єднання, виглядає точнісінько як добрий, аж до дня, коли ви\nспробуєте ним скористатися.",[21,260,262],{"id":261},"шлях-3-керовані-резервні-копії","Шлях 3: керовані резервні копії",[10,264,265,266,269],{},"Щось інше знімає копію за розкладом, кладе її поза вашим акаунтом і\n",[14,267,268],{},"перевіряє, що копія справжня, перш ніж вважати справу зробленою."," Саме ця\nостання частина справді має значення.",[10,271,272,273,276],{},"Саме це робить Reeve Care: кілька копій на день залежно від тарифу, зашифрованих\nі збережених поза вашим акаунтом Supabase, кожна перевірена підрахунком того, що\nвийшло, проти того, що зайшло. Копія зараховується як зроблена лише після\nперевірки, і тому в панелі показано дату останньої ",[189,274,275],{},"перевіреної"," копії, а не\nостанньої спроби.",[10,278,279],{},"Чесний компроміс: це коштує грошей і це ще один сервіс у вашому стеку. Якщо вам\nвистачає дисципліни вести шлях 2 за справжнім розкладом і перевіряти\nвідновлення, він вам не потрібен.",[10,281,282,283,287],{},"Увесь цикл показано на ",[222,284,286],{"href":285},"\u002Fsupabase-backups","сторінці резервних копій Supabase",":\nкопія виходить із Supabase, потім перевірка, а потім кнопка, яка повертає все\nназад.",[21,289,291],{"id":290},"чи-ви-бодай-раз-робили-відновлення","Чи ви бодай раз робили відновлення?",[10,293,294],{},"Це запитання вирішує, чи є у вас резервна копія, чи файл, який ніхто ніколи не\nвідкривав. Дамп, який ніхто не прочитав назад, лишається здогадом про майбутнє, і мить,\nколи ви дізнаєтеся, що він був хибним, і є тією миттю, коли він мав бути\nправильним.",[10,296,297],{},"Перевірка відновлення не має бути драматичною. Створіть новий проєкт Supabase,\nзавантажте в нього найсвіжішу копію, відкрийте застосунок проти цього проєкту й\nподивіться, чи є там рядок, який ви впізнаєте. Пів години, раз на квартал. Якщо\nвідновлення провалиться, ви дізнаєтеся про це у вівторок по обіді, а не посеред\nзбою.",[10,299,300,301,305,306,310],{},"Якщо потрібен ширший перелік того, що варто перевірити у щойно запущеному\nзастосунку, ",[222,302,304],{"href":303},"\u002Fchecklist","10-хвилинний чеклист безпеки"," охоплює резервні копії\nразом з рештою, а ",[222,307,309],{"href":308},"\u002Fis-your-supabase-app-safe","посібник із безпеки Supabase","\nпроходить по тому, що ще зазвичай лишається відкритим.",[21,312,314],{"id":313},"що-зробити-цього-тижня","Що зробити цього тижня",[316,317,318],"key-takeaways",{},[319,320,321,325,331,334,337],"ul",{},[322,323,324],"li",{},"Увімкніть резервну копію, яку включає ваш тариф Supabase. Це найдешевше в цьому списку і займає близько хвилини.",[322,326,327,328,330],{},"Зробіть сьогодні один ",[49,329,51],{}," і покладіть файл кудись, що не є вашим ноутбуком. Навіть застаріла копія краща за жодну.",[322,332,333],{},"Робіть копії файлів зі Storage окремо. Жодна копія бази на цих шляхах їх не містить.",[322,335,336],{},"Зробіть одне відновлення у тимчасовий проєкт, щоб наступне читання цього файлу не було першим.",[322,338,339],{},"Вирішіть, скільки даних ви витримали б утратити, і виберіть розклад із цього числа, а не з того, що виглядає відповідально.",[10,341,342,343,347,348,352],{},"Варто прочитати далі: якщо ви вважали, що скасування у вашому білдері охоплює й\nдані, ",[222,344,346],{"href":345},"\u002Fblog\u002Fversion-history-is-not-a-backup","історія версій не є резервною копією","\nварта прочитання першою. Після цього: ваша база даних настільки приватна,\nнаскільки приватні ключі перед нею, і ",[222,349,351],{"href":350},"\u002Fblog\u002Fwhich-api-keys-are-safe-in-your-frontend","які ключі API безпечні у фронтенді","\nрозповідає про той, що обходить кожне правило, яке ви задасте.",{"title":246,"searchDepth":354,"depth":354,"links":355},3,[356,358,359,360,361,362,363],{"id":23,"depth":357,"text":24},2,{"id":122,"depth":357,"text":123},{"id":195,"depth":357,"text":196},{"id":229,"depth":357,"text":230},{"id":261,"depth":357,"text":262},{"id":290,"depth":357,"text":291},{"id":313,"depth":357,"text":314},"Backups",null,"Панель, pg_dump і керований сервіс. Що насправді зберігає кожен спосіб, що тихо лишає осторонь і який із них переживе втрату акаунта.",false,"md",[370,373,376,379],{"q":371,"a":372},"Чи входять резервні копії у безкоштовний тариф Supabase?","Ні. Щоденні копії починаються з тарифу Pro, а відновлення на конкретний момент часу є окремою надбудовою понад нього. На безкоштовному тарифі автоматичної копії ваших даних немає ніде, і це дивує більшість людей тоді, коли копія вперше стає потрібною.",{"q":374,"a":375},"Чи резервна копія – це те саме, що історія версій у моєму білдері?","Ні, і це найдорожче непорозуміння в цій статті. Lovable, Bolt та інші зберігають версії вашого КОДУ. Ваша база даних працює як окремий сервіс із вашими користувачами, їхнім вмістом і їхніми замовленнями. Відкотити код на вчора не відкочує дані, а видалена в редакторі Supabase таблиця лишає ваш код цілком неушкодженим.",{"q":377,"a":378},"Як часто робити резервні копії?","Запитайте краще, скільки ви готові набрати заново. Якщо втратити день реєстрацій буде прикро, вистачить щоночі. Якщо втратити годину замовлень означатиме повертати людям гроші, потрібно щось ближче до щогодини. Чесна перевірка полягає не в розкладі, а в тому, чи ви бодай раз робили відновлення.",{"q":380,"a":381},"Чи потрібні копії, якщо в застосунку майже немає користувачів?","Це найдешевший момент, щоб почати, бо даних мало, а важить саме звичка. Болючі втрати рідко бувають драматичними. Це помилково набране видалення під час нічного ремонту, у проєкті, де реальних користувачів рівно стільки, щоб почати з нуля вже не вийшло.","\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database\u002Fcard-800x500.png",[384,385,386,387,388],"резервна копія supabase","pg_dump supabase","supabase point in time recovery","відновити базу даних supabase","резервна копія vibe coded застосунку",{},true,"Три способи зробити резервну копію бази Supabase","\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database","2026-08-09",{"title":5,"description":366},"blog\u002Fthree-ways-to-back-up-a-supabase-database",[397,398,399],"Власні резервні копії Supabase найлегше увімкнути й найгірше на них покладатися: копія лежить усередині того самого акаунта, який ви можете втратити.","pg_dump безкоштовний і повний, і він стається лише тоді, коли ви про нього згадаєте. Згадати і є саме тією частиною, що підводить.","Жоден із трьох способів не копіює ваші файли зі Storage. Це окрема робота, хоч який шлях ви оберете.","2026-08-10","Ft4QOdI2fx4p4MOAReEMb8Gke8qn7ahP87t_30mTo-k",1787826051175]