Відновлення MULTIPLE баз даних MySQL з одного файлу в командному рядку?


13

Я експортував усі мої бази даних у файл за допомогою phpMyAdmin.

На жаль, у моїй системі призначення не працює робочий phpMyAdmin.

Як я можу відновити всіх їх одночасно за допомогою однієї рядкової команди?


1
Ви заглянули у файл? Він повинен / міг містити команди для створення та переходу до баз даних за потребою.
Том Регнер

Так, бази даних створюються, а потім їх вибирають за допомогою USE database_nameкоманди.
smhnaji

Тоді відповіді Унні та Ларанса правильні.
Том Регнер

Відповіді:


18

Чому ви не зведете всі файли в один файл і не імпортуєте / відновите за допомогою

mysql -u username -p < dump.sql

Створіть один файл за допомогою

mysqldump -u username -p --all-databases > dump.sql

У ОП вже є один файл, і йому потрібно відновити файли, щоб він більше не міг їх скидати.
Лоран

@laurent Так, це зрозуміло. Використання mysql -u username -p < dump.sqlзавантажить декілька mysql бази даних.
devav2

так, обов'язково
Лоран

2
це не працювало для мене. там сказано, що мені потрібно вибрати базу даних
Aryeh Armon

3

Якщо ви створили резервну копію багатьох баз даних на 1 файл, я вважаю, що ви створили резервну копію create databaseтверджень у тому самому файлі. Якщо ні, то вам потрібно лише додати дані create databaseта use databaseзаяви у свій файл у потрібних місцях.

Після цього командою для завантаження файлу в mysql є:

mysql -p < sqlfile.sql

-p це запитати пароль.

Ви можете використовувати, -u usernameякщо вам потрібно скористатися іншим користувачем.


1

Команда mysql для відновлення файлу sql є:

mysql DATABASE_NAME < SQL_FILENAME.sql

спочатку переконайтеся, що файл sql. У випадку, якщо він закінчується розширенням файлу gz, вам потрібно зняти компіляцію за допомогою команди:

gunzip SQL_FILE.sql.gz

1
-1. Як я вже говорив у вищесказаному, у файлі зберігаються МНОГО баз даних, і я хочу, щоб усі вони були відновлені відразу.
smhnaji

Ви можете експортувати кожну базу даних окремо у phpmyadmin та відновити її на вихідному сервері? або використовувати редактори потоків Linux, такі як sed або awk, щоб розділити їх на різні файли.
Унні

1
немає потреби, він може імпортувати всі бази даних з одного файлу
Лоран
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.