1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - Linux系统 - 正文

君子好学,自强不息!

Linux下定时备份数据库

linux下使用crontab定时备份MYSQL数据库的方法

只需按照下面3步做,一切都在你的掌控之下:

第一步:在服务器上配置备份目录代码:

mkdir /var/lib/mysqlbackup 
cd /var/lib/mysqlbackup

第二步:编写备份脚本代码:

vi dbbackup.sh
粘帖以下代码,务必更改其中的username,password和dbname。
#!/bin/sh
mysqldump -uuser -ppassword dbname | gzip > /var/lib/mysqlbackup/dbnamedate +%Y-%m-%d_%H%M%S.sql.gz
cd  /var/lib/mysqlbackup
rm -rf find . -name '*.sql.gz' -mtime 10  #删除10天前的备份文件

第三步:更改备份脚本权限

chmod +x dbbackup.sh

第四步:用crontab定时执行备份脚本代码:

crontab -e

若每天晚上21点00备份,添加如下代码

00 21 * /var/lib/mysqlbackup/dbbackup.sh

会遇到的问题:

1.mysqldump 是备份数据库的命令,不懂直接百度就好。

2.Crontab 是定时任务的命令,如果不懂可以访问http://www.thinkphp.cn/code/1...

3.备份数据首先要确定已经给root设置了密码,否则会报mysqldump执行时Got error: 1045: Access denied for user ‘root’@’localhost’ (using password: YES) when trying to connect

解决办法:

登录mysql客户端

mysql -hserverip -uroot -p
mysql> use mysql; Database changed
mysql> update user set password=password('new password') where user='root'; Query OK, 4 rows affected (0.00 sec) Rows matched: 4  Changed: 4  Warnings: 0
mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) //这个命令是给用户赋予了新的权限或者密码,直接读到内存中不需要重启数据库防止出错
mysql> quit


本文来源:1818IP

本文地址:https://www.1818ip.com/post/1788.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。