在mysql中备份与恢复数据库会使用到mysqldump,我们可以把数据备份到各种压缩文件然后再恢复,下面我来总结一下常用的mysql数据库备份与恢复的具体操作方法.
一般情况我们通过mysqldump来备份MySQL数据库,并上传至其它备份机器,如果数据库比较大,在备份传输的时候可能会慢,所以我们尽量让备份的文件小一些.
在写自动备份脚本时,最好把备份结果直接压缩,恢复时也可以直接由压缩备份恢复,下面介绍如何使用bzip2和gzip进行压缩mysql备份文件.
备份并用bzip压缩,代码如下:
mysqldump | bzip2 > outputfile.sql.bz2
从bzip2备份恢复,代码如下:
bunzip2 < outputfile.sql.bz2 | mysql < mysql options>
备份并用gzip压缩,代码如下:
mysqldump | gzip > outputfile.sql.gz
从gzip备份恢复:gunzip < outputfile.sql.gz | mysql < mysql options>
补充本文章
备份指定数据库,代码如下:
mysqldump -h hostname -u username -p databasename > db.sql不明确指定路径的话被分到用户工作目录:C:Documents and SettingsAdministrator
可以明确指定备份目录,代码如下:
mysqldump -u root -p mydb -h 192.168.14.204 > D:mydb.sql //phpfensi.com
说明:-p之后不用输入密码,点击回车键之后才需要输入密码.
直接将MySQL数据库压缩备份,代码如下:
mysqldump -h hostname -u username -p databasename | gzip > db.sql.gz
说明:gzip是linux下的压缩工具,所以在windows环境下无法使用.
备份MySQL数据库某个(些)表,代码如下:
mysqldump -h hostname -u username -p databasename table1 table2 > db.sql
同时备份多个MySQL数据库,代码如下:
mysqldump -h hostname -u username -p –databases db1 db2 db3 > dbs.sql
备份服务器上所有数据库,代码如下:
mysqldump --all-databases > allbackupfile.sql
测试,代码如下:
mysqldump --all-databases -u root -p > allbackupfile.sql
Enter password: ******windows下可以使用Mysql Query Browser的File–》Open Script来执行备份的脚本,同时也可以使用一下命令直接进行恢复:
mysql -h hostname -u username -p databasename < backupfile.sql |