Spec-Zone.ru › MySQL 5.7

2.10.13 Копирование баз данных MySQL на другой компьютер

В случаях, когда вам необходимо перенести базы данных между разными архитектурами, вы можете использовать mysqldump для создания файла со SQL-командами. Затем вы можете перенести файл на другой компьютер и использовать его в качестве входных данных для клиента mysql.

Используйте mysqldump --help, чтобы узнать о доступных параметрах.

Самый простой (хотя и не самый быстрый) способ перемещения базы данных между двумя компьютерами — это выполнить следующие команды на компьютере, на котором находится база данных:

mysqladmin -h 'other_hostname' create db_name
mysqldump db_name | mysql -h 'other_hostname' db_name

Если вам нужно скопировать базу данных с удаленного компьютера по медленной сети, вы можете использовать эти команды:

mysqladmin create db_name
mysqldump -h 'other_hostname' --compress db_name | mysql db_name

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

mysqldump --quick db_name | gzip > db_name.gz

Перенесите файл с содержимым базы данных на целевой компьютер и выполните там эти команды:

mysqladmin create db_name
gunzip < db_name.gz | mysql db_name

Вы также можете использовать mysqldump и mysqlimport для переноса базы данных. Для больших таблиц это намного быстрее, чем просто использование mysqldump. В следующих командах DUMPDIR представляет полное имя пути к каталогу, который вы используете для хранения вывода из mysqldump.

Сначала создайте каталог для выходных файлов и сохраните дамп базы данных:

mkdir DUMPDIR
mysqldump --tab=DUMPDIR db_name

Затем перенесите файлы в каталоге DUMPDIR в соответствующий каталог на целевом компьютере и загрузите файлы в MySQL там:

mysqladmin create db_name           # create database
cat DUMPDIR/*.sql | mysql db_name   # create tables in database
mysqlimport db_name DUMPDIR/*.txt   # load data into tables

Не забудьте скопировать базу данных mysql, потому что именно там хранятся таблицы разрешений. Возможно, вам придется выполнять команды как пользователю MySQL root на новом компьютере, пока вы не разместите базу данных mysql.

После импорта базы данных mysql на новый компьютер выполните mysqladmin flush-privileges, чтобы сервер перезагрузил информацию таблицы разрешений.

Примечание

Вы можете скопировать файлы .frm, .MYI и .MYD для таблиц MyISAM между различными архитектурами, которые поддерживают тот же формат чисел с плавающей точкой. (MySQL позаботится о любых проблемах с обменом байтов.) См. Раздел 15.2, «Двигатель хранения MyISAM».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/copying-databases.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API