Spec-Zone .ru
спецификации, руководства, описания, API
|
Можно скопировать .frm
, .MYI
, и .MYD
файлы для MyISAM
таблицы между различной
архитектурой, которая поддерживает тот же самый формат с плавающей точкой. (MySQL заботится о любых
подкачивающих байт проблемах.) См. Раздел 14.3," MyISAM
Механизм хранения".
В случаях, куда Вы должны передать базы данных между различной архитектурой, можно использовать mysqldump, чтобы создать файл, содержащий SQL-операторы. Можно тогда передать файл другой машине и подать это как входной mysql клиенту.
Используйте mysqldump - помогают видеть, какие опции доступны.
Самое легкое (хотя не самое быстрое) способ переместить базу данных между двумя машинами должно выполнить следующие команды на машине, на которой располагается база данных:
shell>mysqladmin -h '
shell>other_hostname
' createdb_name
mysqldump
db_name
| mysql -h 'other_hostname
'db_name
Если Вы хотите скопировать базу данных с удаленной машины по медленной сети, можно использовать эти команды:
shell>mysqladmin create
shell>db_name
mysqldump -h '
other_hostname
' --compressdb_name
| mysqldb_name
Можно также сохранить дамп в файле, передать файл целевой машине, и затем загрузить файл в базу данных там. Например, можно вывести базу данных к сжатому файлу на исходной машине как это:
shell> mysqldump --quick db_name
| gzip > db_name
.gz
Передайте файл, содержащий содержание базы данных к целевой машине, и выполните эти команды туда:
shell>mysqladmin create
shell>db_name
gunzip <
db_name
.gz | mysqldb_name
Можно также использовать mysqldump
и mysqlimport, чтобы передать базу данных. Для больших таблиц
это намного быстрее чем простое использование mysqldump. В следующих командах, DUMPDIR
представляет имя полного пути каталога, который Вы
используете, чтобы сохранить вывод от mysqldump.
Во-первых, создайте каталог для выходных файлов и выведите базу данных:
shell>mkdir
shell>DUMPDIR
mysqldump --tab=
DUMPDIR
db_name
Затем передайте файлы в DUMPDIR
каталог к некоторому соответствующему
каталогу на целевой машине и загрузке файлы в MySQL там:
shell>mysqladmin create
shell>db_name
# create databasecat
shell>DUMPDIR
/*.sql | mysqldb_name
# create tables in databasemysqlimport
db_name
DUMPDIR
/*.txt # load data into tables
Не забывайте копировать mysql
база данных, потому что это - то, где таблицы
предоставления сохранены. Вы могли бы иметь к командам выполнения как MySQL root
пользователь на новой машине, пока Вы не имеете mysql
база данных на месте.
После того, как Вы импортируете mysql
база данных на новой машине, выполните mysqladmin
полномочия сброса так, чтобы сервер перезагрузил информацию о таблице предоставления.