msyql自动备份

先编辑一个.sh文件出来内容如下:
#!/bin/bash
# 数据库认证
 user="root"
 password="41b203b698"
 host="127.0.0.1"
 db_name="uwhere"
# 其它
 backup_path="/mingshine/mysql_backup"
 date=$(date +"%d-%b-%Y")
# 设置导出文件的缺省权限
 umask 177
# Dump数据库到SQL文件
 /alidata/server/mysql-5.1.73/bin/mysqldump --user=$user --password=$password --host=$host $db_name > $backup_path/$db_name-$date.sql
 
 
 注意:/alidata/server/mysql-5.1.73/bin/mysqldump这个要用绝对路径
 
 
 
 
 
如果是window下编辑的一到Linx下 会报错:
错误信息:
bad interpreter: No such file or directory

解决方法
错误信息:
bad interpreter: No such file or directory

解决办法
1.首先用vi命令打开文件
[root@localhost test]# vi test.sh   
2.在vi命令模式中使用 :set ff 命令
可以看到改文件的格式为
fileformat=dos

3.修改文件format为unix

命令::set ff=unix
或者::set fileformat=unix
然后:wq保存退出就可以了







然后就是定时执行shell命令了
主要是用到crontab 

先了解命令:
service crond status  查看crond运行状态
 /bin/systemctl restart crond.service    重启crond
  /bin/systemctl start crond.service    开启crond
  
如果要定时
查看这个博客:http://blog.csdn.net/buster2014/article/details/46349497

Crontab 示例

1、在 凌晨00:01运行

1 0 * * * /home/linrui/XXXX.sh

2、每个工作日23:59都进行备份作业。

59 11 * * 1,2,3,4,5 /home/linrui/XXXX.sh   

或者如下写法:

59 11 * * 1-5 /home/linrui/XXXX.sh

3、每分钟运行一次命令

*/1 * * * * /home/linrui/XXXX.sh

4、每个月的1号 14:10 运行

10 14 1 * * /home/linrui/XXXX.sh

注:进入crontab
vi /etc/crontab



#*/1 * * * *     root /home/test.sh  每一分钟执行一次

 


backup_mysql.sh

#!/bin/bash
# 数据库认证
 user="root"
 password="0c56d95e99"
 host="127.0.0.1"
 db_name="smartphone"
# 其它
 backup_path="/mingshine/mysql_back"
 date=$(date +"%d-%b-%Y-%h-%m-%s")
# Dump数据库到SQL文件
 /alidata/server/mysql-5.1.73/bin/mysqldump  --user=$user --password=$password --host=$host $db_name > $backup_path/$db_name-$date.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值