Делаем дамп mysql таблицы с помощью mysqldump и сразу же перенаправляем его в другую базу данных:
mysqldump -uroot database1 my_table | mysql -uroot database2
Этот запрос создаст точную копию таблицы my_table вместе с данными из базы данных database1 в базе данных database2.
Полезные опции mysql и mysqldump:
-
-u
— имя пользователя; -
-p
— пароль; -
-h
— адрес хоста (по умолчанию 127.0.1).
Если пароль задан пустой, то опцию -p
можно смело опускать. Можно читать с базы данных на одном хосте и писать в базу на другой.
Для InnoDB лучше использовать опцию --single-transaction:
mysqldump --single-transaction -uroot database1 my_table | mysql -u root database2
Также можно делать через файл, если очень хочется:
mysqldump -uroot database1 my_table > /tmp/my_table.sql # создаём дамп в файл mysql -uroot -ppassword database2 < /tmp/my_table.sql #разворачиваем дамп из файла
После удачного переноса исходную таблицу можно удалить:
DROP table my_table;
Комментарии 0