MySQL - データベースやテーブルのバックアップと復元

MySQL –データベースまたはテーブルのバックアップと復元

mysql logo

このチュートリアルでは、MySQLデータベースまたはテーブルをバックアップおよび復元する方法を示します。

1. MySQL –バックアップの例

1.1 Quick reference – mysqldump

#Backup a database
$ mysqldump -u [username] -p [dbname] > filename.sql

#Backup a table
$ mysqldump -u [username] -p [dbname] [table] > filename.sql

#Backup multiple tables
$ mysqldump -u [username] -p [dbname] [table1] [table2] > filename.sql

#Backup a database and gzip it
$ mysqldump -u [username] -p [dbname] | gzip > filename.sql.gz

1.2 Backup a database ‘wrdp1’ to a SQL file ‘db.20160726.sql’

$ mysqldump -u example -p wrdp1 > db.20160726.sql
Enter password:

1.3 Backup and gzip together.

$ mysqldump -u example -p wrdp1 | gzip > db.20160726.sql.gz
Enter password:

1.4 Back a table ‘wp_postmeta’ to a SQL file ‘wp_postmeta.sql’

$ mysqldump -u example -p wrdp1 wp_postmeta > wp_postmeta.sql
Enter password:

# backup + gzip
$ mysqldump -u example -p wrdp1 wp_postmeta | gzip > wp_postmeta.sql

#multiple tables - wp_postmeta and wp_posts
$ mysqldump -u example -p wrdp1 wp_postmeta wp_posts > tables.sql

2. MySQL –復元の例

2.1 Quick reference – mysql

#Restore, uses 'mysql' command for backup database and table
$ mysql -u [username] -p [dbname] < filename.sql

#Restore back a gzip SQL file.
$ gunzip -c filename.sql.gz | mysql -u [username] -p [dbname]

Note
SQLファイルを復元する場合は、mysqldumpではなくコマンドmysqlを使用してください。

2.2 Restore back a SQL file 'db.20160726.sql' to a database 'wrdp1'.

$ mysql -u example -p wrdp1 < db.20160726.sql
Enter password:

#table, same command
$ mysql -u example -p wrdp1 < wp_postmeta.sql

2.3 Restore back a gzip SQL file 'db.20160726.sql.gz' to a database 'wrdp1'.

$ gunzip -c db.20160726.sql.gz | mysql -u example -p wrdp1
Enter password:

3. ケーススタディ

自己参照のためだけに、MySQLのバックアップと復元の手順を示します。

  1. サーバー「myserver1」へのSSH

  2. データベース「db1」のバックアップとgzip

  3. SCP commandを介して 'myserver1'からバックアップファイルをダウンロードします

  4. バックアップファイルをローカルデータベース「local_db1」に復元します

# local environment
$ ssh myserver1

# server environment
$ mysqldump -u example -p db1 | gzip > db1.20160726.sql.gz

# server environment
$ exit

# local environment
$ scp example@myserver1:db1.20160726.sql.gz .

# local environment
$ $ gunzip -c db1.20160726.sql.gz | mysql -u example -p local_db1

完了しました。

Note
他の例については、この究極のコマンドを使用してください-mysqldump --help