Назад | Перейти на главную страницу

Таблицы экспорта MySQL с префиксом из командной строки Unix

Я хочу экспортировать определенные таблицы из одной базы данных и импортировать их в другую. Рассматриваемые таблицы используются для моей установки MediaWiki и имеют префикс "wiki_".

У меня нет доступа к phpMyAdmin, но я могу подключиться к серверу через SSH. Полагаю, мне нужно использовать mysqldump , но как мне указать, что я хочу выгружать только таблицы с префиксом "wiki_"?

Вам нужно создать список таблиц, которые вы хотите сбросить, и действовать в соответствии с ним.

mysql -u USER -p -D test -Bse "show tables like 'wiki_%'" >tables.out
mysqldump -u USER -p test <tables.out >wiki_tables.dump

или как один лайнер

mysqldump -u USER -p test $(mysql -u USER -p -D test -Bse "show tables like 'wiki_%'")

но вы все равно можете ввести пароль дважды.

поскольку mysqldump не может работать с подстановочными знаками, вам нужно будет указать нужные таблицы:

mysqldump -u username -p database wiki_table1 wiki_table2 .. > database.sql

Или вы можете указать таблицы, которые не хотите экспортировать:

mysqldump -u username -p database --ignore-table=atable --ignore-table=anothertabl > database.sql