linux系统下MYSQL备份恢复

运维 系统运维
数据库备份是非常重要的。如果定期做好备份,这样就可以在发生系统崩溃时恢复数据到最后一次正常的状态,把损失减小到最少。

数据库备份是非常重要的。如果定期做好备份,这样就可以在发生系统崩溃时恢复数据到最后一次正常的状态,把损失减小到最少。

一、 用命令实现备份

MySQLl提供了一个mysqldump命令,我们可以用它进行数据备份,下面假设要备份tm这个数据库:

#mysqldump -u root -p tm > tm_050519.sql

按提示输入密码,这就把tm数据库所有的表结构和数据备份到tm_050519.sql了,因为要总进行备份工作,如果数据量大会占用很大空间,这时可以利用gzip压缩数据,命令如下:

#mysqldump -u root -p tm | gzip > tm_050519.sql.gz

系统崩溃,重建系统时,可以这样恢复数据:

#mysql -u root -p tm < tm_050519.sql

从压缩文件直接恢复:

#gzip < tm_050519.sql.gz | mysql -u root -p tm

当然,有很多MySQL工具提供更直观的备份恢复功能,比如用phpMyAdmin就很方便。但我认为,mysqldump是最基本、最通用的。

二、利用crontab,系统每天定时备份mysql数据库

【内容提要】利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。

利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的。

1、创建保存备份文件的路径/mysqldata

#mkdir /mysqldata

2、创建/usr/sbin/bakmysql文件

#vi /usr/sbin/bakmysql

输入

rq=` date +%Y%m%d `

tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql

或者写成

rq=` date +%Y%m%d `

mysqldump --all-databases -u root -p密码 > /mysqldata/mysql$rq.sql

/var/lib/mysql是你数据库文件的目录,部分用户是/usr/local/mysql/data,每个人可能不同

/mysqldata/表示保存备份文件的目录,这个每个人也可以根据自己的要求来做。

3、修改文件属性,使其可执行

# chmod +x /usr/sbin/bakmysql

4、修改/etc/crontab

#vi /etc/crontab

在下面添加

01 3 * * * root /usr/sbin/bakmysql

表示每天3点钟执行备份

5、重新启动crond

# /etc/rc.d/init.d/crond restart

完成。

这样每天你在/mysqldata可以看到这样的文件

mysql20040619.tar.gz

你直接下载就可以了。

cd /usr/local/mysql/bin/

mysqldump -u用户名 -p密码 --databases 库名 >/backdata/ddd07-11-15.sql

恢复语法

mysqladmin create target_db_name

mysql target_db_name < backup-file.sql

即 mysql 库名 < 文件名

完成,注意,-u后面没有空格, 你只需要把上面的中文换成你的相关信息就可以了!

【编辑推荐】

  1. 操作系统中Linux配置MySQL案例讲解
  2. 在RHEL 4中安装apache+mysql+php+ZendOptimizer的成功宝典
  3. Linux系统中Mysql 密码恢复
责任编辑:赵宁宁 来源: 比特网
相关推荐

2020-12-16 20:30:24

Linux系统备份系统恢复

2012-05-15 13:55:18

Linux备份

2023-09-21 09:31:24

MySQL数据库

2017-09-12 14:14:05

2010-09-13 14:25:03

2011-03-16 10:11:41

WindowsEnterpriseD

2017-07-10 14:26:03

Mysql数据备份数据恢复

2009-09-30 10:23:20

Linux系统Mysql密码恢复

2010-04-22 18:37:18

Aix系统

2010-08-25 10:16:48

DB2备份Linux

2013-05-24 13:24:46

Mysql数据库自动备份

2020-07-23 19:42:12

MySQL备份恢复数据库

2023-01-11 08:05:23

XtraBackupMySQL备份

2018-06-07 09:22:16

LinuxMysql备份

2021-09-22 09:55:20

LinuxMySQL数据库

2010-04-23 13:43:57

Aix操作系统

2010-08-12 13:32:08

DB2数据库备份

2016-10-19 16:50:43

大数据

2010-08-09 13:30:27

DB2数据库备份

2010-05-26 13:50:15

MySQL备份
点赞
收藏

51CTO技术栈公众号