WenRou's Blog
命令行备份与恢复MySQL数据库
2015-5-17 温柔哥
(1) 从命令行备份MySQL数据库

在Linux操作系统中,我们可以使用mysqldump命令进行备份。该命令将连接MySQL服务器并创建SQL转储文件,该文件包含了重新创建数据库所必



需的所有SQL语句。该命令的基本语法如下:

mysqldump --opt -u [uname] -p[pass] [dbname] > [backupfile.sql]

[uname] 数据库用户名

[pass] 数据库密码

[dbname] 数据库名

[backupfile.sql] 数据库备份文件名

[--opt] mysqldump选项,不是必需的

比如现在需要:备份数据库fhx520_ezulove到fhx520_ezulove.sql文件

先cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)

然后

mysqldump -u root -p fhx520_ezulove > fhx520_ezulove.sql

如果mysql数据库较大,你可能希望能压缩mysqldump导出的SQL文件,此时仅需使用如下的备份命令,并通过管道连接到gzip,此时便可导出gzip文件

mysqldump -u root -p fhx520_ezulove | gzip -9 > fhx520_ezulove.sql.gz

解压缩方法如下:

gunzip fhx520_ezulove.sql.gz



(2) 从命令行恢复MySQL数据库

通过上面的方法,我们已经将数据库fhx520_ezulove备份至fhx520_ezulove.sql文件,接下来,我们恢复fhx520_ezulove数据库:

* 在目标机器上创建相应的数据库名

* 使用mysql命令载入sql文件

 mysql -u [uname] -p[pass] [db_to_restore] < [backupfile.sql]

例如,我们现在恢复fhx520_ezulove.sql文件到fhx520_ezulove数据库:

 mysql -u root -p fhx520_ezulove < fhx520_ezulove.sql

如果是恢复压缩的备份文件,可遵循以下格式:

 gunzip < [backupfile.sql.gz] | mysql -u [uname] -p[pass] [dbname]

比如gunzip < fhx520_ezulove.sql.gz | mysql -u root -p fhx520_ezulove

如果是恢复已经存在的数据库,此时可使用mysqlimport命令,该命令的语法格式如下:

 mysqlimport -u [uname] -p[pass] [dbname] [backupfile.sql]
发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容