In cases where you need to transfer databases between different architectures, you can use mysqldump to create a file containing SQL statements. You can then transfer the file to the other machine and feed it as input to the mysql client.
You can copy the
MyISAM tables between different
architectures that support the same floating-point format.
(MySQL takes care of any byte-swapping issues.) See
Section 15.2, “The MyISAM Storage Engine”.
Use mysqldump --help to see what options are available.
The easiest (although not the fastest) way to move a database between two machines is to run the following commands on the machine on which the database is located:
mysqladmin -h '
db_name| mysql -h '
If you want to copy a database from a remote machine over a slow network, you can use these commands:
db_namemysqldump -h '
You can also store the dump in a file, transfer the file to the target machine, and then load the file into the database there. For example, you can dump a database to a compressed file on the source machine like this:
db_name| gzip >
Transfer the file containing the database contents to the target machine and run these commands there:
db_name.gz | mysql
You can also use mysqldump and
mysqlimport to transfer the database. For large
tables, this is much faster than simply using
mysqldump. In the following commands,
DUMPDIR represents the full path name
of the directory you use to store the output from
First, create the directory for the output files and dump the database:
Then transfer the files in the
directory to some corresponding directory on the target machine
and load the files into MySQL there:
db_name# create database cat
DUMPDIR/*.sql | mysql
db_name# create tables in database mysqlimport
DUMPDIR/*.txt # load data into tables
Do not forget to copy the
because that is where the grant tables are stored. You might have
to run commands as the MySQL
root user on the
new machine until you have the
After you import the
mysql database on the new
machine, execute mysqladmin flush-privileges so
that the server reloads the grant table information.