Від автора: нещодавно в гості родичі заїжджали. Так вони за пару днів виснажили спочатку всю продуктову базу, потім «прокомпостувати» всю нервову, а під кінець спалили музичну (музичний центр). Загалом, від гріха подалі я вирішив швидше перенести базу даних MySQL. Якщо ви теж опинилися в такій ситуації, тоді обов’язково прочитайте цю статтю.
Швидкий спосіб експорту
Почнемо з огляду phpMyAdmin. Щоб перенести базу, спочатку потрібно створити її дублікат. Для цього в програмі є спеціальний функціонал. Розглянемо детально цей процес:
Можна спочатку вибрати у списку ліворуч потрібну базу, і потім перейти по вкладці меню «Експорт». Якщо використовувати цей параметр, то буде проведений потабличный перенесення MySQL. Для цього в «Спосіб експорту» встановлюємо «Звичайний», а в «Таблиці» вибираємо елементи експорту.
Якщо потрібно експортувати БД (з усіма таблицями), то відразу переходите в «Експорт». Тільки тут ми вже оперуємо не таблицями, а базами. У «Спосіб експорту» також встановлюємо «Звичайний». Потім виділяємо потрібну БД, і в розділі «Висновок» вибираємо варіант «Зберегти вивід в файл».
Наступним кроком задаємо формат, в якому буде збережена копія бази. Вибираємо у відповідному списку значення «SQL». Це буде гарантом того, що копію можна буде використовувати на більшій частині платформ. Але якщо збираєтеся переносити базу на конкретну основу, то тут можна вибрати відповідний формат: масив PHP, CSV, PDF і інші.
Нижче в розділах «форматування» і «збереження даних» можна налаштувати більш «професійні» параметри для перенесення бази MySQL. Але ми не будемо детально зупинятися на їх огляді. Якщо ви не знайомі з якими-небудь з них, то краще не змінювати (без потреби) встановлені значення за замовчуванням. Тут можна налаштувати максимальну сумісність зі старими версіями СУБД і як будуть збережені таблиці. Можна експортувати лише дані або структури. Ми скопіюємо таблиці повністю (варіант «структура і дані).
Після установки усіх параметрів для створення копії бази натискаємо внизу «Ок». В результаті ми отримуємо дублікат БД, який легко перенести на інший сервер. За замовчуванням файл зберігається в папці завантажень вашого браузера.
Імпортуємо
За допомогою phpMyAdmin можна не тільки створювати копії всього сервера, баз та окремих таблиць. Програма дозволяє легко перенести дані MySQL на інший екземпляр СУБД. Виконання цього процесу багато в чому схоже з експортом бази. phpMyAdmin «вміє» приєднувати як окремі таблиці бази, так і відразу декілька БД до сервера. Для приєднання таблиць зліва в списку виберіть потрібну базу, і потім перейдіть по вкладці «Імпорт».
Щоб приєднати до сервера базу (або декілька баз), відразу переходите на цій вкладці. Потім в розділі «файл» відзначаємо пункт «Огляд вашого комп’ютера», і через провідник вказуємо місце розташування файлу БД.
Тут потрібно вказати кодування, в якій представлені дані в імпортованому джерелі. З цим параметром слід бути акуратніше, інакше замість рядків в таблицях отримаєте справжні «ієрогліфи», і для їх розшифровки доведеться наймати корінного японця або китайця. А з ними в нашій місцевості – справжній дефіцит .
Найчастіше використовується кодування UTF-8, яка і встановлена за замовчуванням. Тому, навіть якщо не знаєте точно, яка використовується в переносимої базі MySQL, то варто спробувати дану кодування. У будь-якому випадку ви завжди зможете видалити імпортовану базу, і потім «перезаливати» її з кодуванням.
Також поспішаю засмутити «завзятих» шанувальників phpMyAdmin. Дана утиліта підходить тільки для експорту-імпорту невеликих баз (до 2 «метрів»). Цього значення цілком вистачає для часткового (поетапного) перенесення сервера, що може бути не зовсім зручно і надовго затягнути весь процес.
В розділі «Формат» встановлюємо значення «SQL». Якщо потрібно, то включаємо режим сумісності. А також відключаємо автоматичне створення значення ключа для стовпців з нульовим значенням (залежить від структури таблиць імпортованого джерела). І для закінчення імпорту тиснемо «Ок».
Якщо збираєтеся перенести базу даних MySQL з бекапа, то не забудьте перед початком імпорту видалити з сервера «оригінал» джерела. Інакше отримаєте повідомлення про помилку, оскільки дана БД вже існує.
Якщо процес пройшов вдало, то система програми виведе відповідне повідомлення.
Альтернативне ЗА
Я обіцяв по ходу вивчення MySQL знайомити вас з різним програмним забезпеченням для адміністрування СУБД. Так ви зможете розширити свій «професійний кругозір, і вибрати ту програму, яка найбільше підходить під ваші потреби і рід діяльності.
Сьогодні ми протестуємо можливості перенесення MySQL за допомогою потужного багатофункціонального додатка, розробленого творцями СУБД. Скачати MySQL Workbench можна з офіційного ресурсу компанії. Тут же детально описані кілька сторонніх дистрибутивів (і посилання на них), які потрібні для адміністрування СУБД за допомогою даної платформи.
Повторюся ще раз: розглянуте засіб володіє потужним функціоналом, тому ми розглянемо лише той, який призначений для імпорту-експорту окремих баз у форматі SQL. Для цього запускаємо програму, тиснемо по іконці потрібного з’єднання (якщо їх декілька).
У новому розкрився вікні ліворуч у панелі «Navigator» вибираємо потрібну вкладку (для експорту або імпорту). Я імпортують дублікат бази, створений за допомогою phpMyAdmin.
Щоб здійснити перенесення даних MySQL, переходимо через пункт «Data Import». В однойменній вкладці у розділі «Import Options» вибираємо другий варіант (позначений на знімку).
Так як у нас немає ніяких схем, то внизу натискаємо «Start Import». У сусідній вкладці «Import Progress» відображається стан процесу перенесення зазначеного файлу. Ця опція може стати в нагоді при імпорті великих обсягів даних.
Після закінчення перенесення MySQL в списку баз у нас з’явиться db1, дублікат яку ми створили за допомогою phpMyAdmin.
Ну, а поки я «ховав» свою БД MySQL, всі родичі роз’їхалися. Так як я був зайнятий, а поповнювати продуктову базу холодильника було нікому. Ось як улюблена СУБД врятувала мене від «родинної» напасті. За що їй величезне спасибі .