MySQL –データベースまたはテーブルのバックアップと復元
このチュートリアルでは、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のバックアップと復元の手順を示します。
-
サーバー「myserver1」へのSSH
-
データベース「db1」のバックアップとgzip
-
SCP commandを介して 'myserver1'からバックアップファイルをダウンロードします
-
バックアップファイルをローカルデータベース「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
参考文献
-
http://dba.stackexchange.com/questions/9306/how-do-you-mysqldump-specific-tables [StackOverflow
-
特定のテーブルをmysqldumpする方法]
-