Linux下mysql数据库备份与恢复

Linux下mysql数据库备份与恢复

具体操作步骤如下:

1.建备份文件夹:

Bash
mkdir /usr/db_backup

2.建脚本文件:

Bash
cd /usr/db_backuptouch autobackupmysql.shchmod 777 autobackupmysql.sh

3.打开文件

Bash
vi  autobackupmysql.sh

4.在脚本中加入如下内容:(一般这种写法都会报错,主要原因是MySQL安全机制不允许脚本上直接暴露密码,下面附有解决方法)

Bash
filename=`date +%Y%m%d`/usr/local/mysql/bin/mysqldump -uroot -ppass yourDatabaseName > /usr/db_backup/$filename.sql

5.添加如下内容:  每天早上7点运行此文件,对数据库进行备份

Bash
00 07 * * * source /usr/db_backup/autobackupmysql.sh

6.也可手动执行如下命令,手动备份

Bash
./autobackupmysql.sh


恢复备份

1、建脚本文件:

Bash
cd /usr/db_backuptouch autorecovermysql.shchmod 777 autorecovermysql.sh

2、在脚本中加入如下内容,test_zbp是数据库名称,此处省略用户名和密码,需要在my.cnf配置[mysql],也可以不省略,就无需配置my.cnf,但是会报警告,我有强迫症,受不了

Bash
filename=`date +%Y%m%d`mysql test_zbp < /usr/db_backup/$filename.sql

3、my.cnf配置

Bash
[mysql]user=root password=root

4、添加定时任务,时间需要在备份完成之后

Bash
00 08 * * * source /usr/db_backup/autobackupmysql.sh


常见错误:

mysql: [Warning] Using a password on the command line interface can be insecure

原因:命令行上使用密码不安全

解决:找到数据库my.cnf配置文件,在[mysqldump]下增加如下代码,没有mysqldump就加一个

Bash
[mysqldump]user=root password=root

脚本文件改为:

Bash
filename=`date +%Y%m%d`/usr/local/mysql/bin/mysqldump yourDatabaseName > /usr/db_backup/$filename.sql


免责声明:
1、本站提供和发布的所有内容及源码资源均来自于互联网、网友上传,仅供学习交流使用,版权归原著所有,下载本站资源禁止参与商业和非法行为,请在24小时之内自行删除!
2、本站的所有内容都不保证其准确性,完整性,有效性。阅读及下载本站的内容因误导等因素而造成的损失本站不承担连带责任。
3、用户在访问和使用本站资源的前提条件是必须接受本站“免责声明”如不遵守,请勿访问或使用本网站资源!如因使用者违反本声明的规定而触犯中华人民共和国法律的,一切后果由用户自行负责,本站不承担任何责任。
4、用户使用本网站必须遵守适用的法律法规,对于用户违法使用,非法运营而引起的一切责任,由用户自行承担与本站无关。
5、凡以任何方式登陆本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。
6、如用户会员将密码告知他人或与他人共享同一会员ID,由此导致的任何会员资料泄露、积分丢失以及所带来的任何其它损失,本网站均不负任何责任。
7、本网站如无意中有相关资源丶软件丶源码丶文章内容侵犯了您的权益版权或侵犯了某个企业或个人的知识产权,请来信通知,本站在收到来信核实后立即删除。
8、本站所有售卖的虚拟物品和会员的目的是为了维持网站的日常运营和搬运分享的辛苦费用!用户可自愿赞助购买,量力而为。
内容投诉
小孟网络技术交流分享 » Linux下mysql数据库备份与恢复
您需要 登录账户 后才能发表评论

发表评论

欢迎 访客 发表评论