Home > Database > Mysql Tutorial > body text

linux系统下MYSQL备份恢复(主要看红色字体部分)_MySQL

WBOY
Release: 2016-06-01 13:18:00
Original
1124 people have browsed it

bitsCN.com

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

一、 用名航实现备份

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

#mysqldump -u root -p tm > tm_050519.sql
Copy after login
按提示输入密码,这就把tm数据库所有的表结构和数据备份到tm_050519.sql文件中,因为要总进行备份工作,如果数据量大会占用很大空间,这时可以利用gizip压缩命令,命令如下:
#mysqldump -u root -p tm | gzip > tm_050519.sql.gz
Copy after login
系统崩溃,重建系统时,可以这样回复数据:
#mysql -u root -p tm < tm_050519.sql
Copy after login

从压缩文件直接恢复

#gunzip < tm_050519.sql.gz | mysql -u root -p tm
Copy after login
当然,有很多MySQL工具提供更直观的备份恢复功能,比如用phpMyAdmin就很方便。但我认为,mysqldump是最基本、最通用的。

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

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

#mkdir /mysqldata
Copy after login
2、创建/usr/sbin/bakmysql文件
#vi /usr/sbin/bakmysql
Copy after login
输入
rq=` date +%Y%m%d `tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql
Copy after login
或者写成
rq=` date +%Y%m%d `mysqldump --all-databases -u root -p密码 > /mysqldata/mysql$rq.sql
Copy after login
/var/lib/mysql是你数据库文件的目录,部分用户是/usr/local/mysql/data,每个人可能不通

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

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

# chmod +x /usr/sbin/bakmysql
Copy after login
4、修改/etc/crontab
#vi /etc/crontab
Copy after login
在下面添加
01 3 * * * root /usr/sbin/bakmysql
Copy after login
表示每天3点钟执行备份

5、重启crond

# /etc/rc.d/init.d/crond restart
Copy after login
完成。

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

mysql20140324.tar.gz

你直接下载就可以了

cd /usr/local/mysql/bin

mysqldump -u用户名 -p密码 --databases 库名 >/backdata/ddd14-03-23.sql
Copy after login
恢复语法
mysqladmin create target_db_namemysql target_db_name < backup-file.sql
Copy after login
即 mysql 库名 完成,注意:-u后面没有空格,你只需要把上面的中文替换成你的相关信息就可以了 bitsCN.com
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template