编写一键备份MYSQL数据库脚本

远程备份mysql数据库

1.mysql需要有远程访问权限

在这里插入图片描述
这里我为了方便,就设置所有地址都可以访问了。如果没有,在数据库中执行如下命令

创建备份用户及授权
>grant select,lock tables on *.* to "backup"@"192.168.233.%" identified by "123456";
#授权一个用户,并限制地址在192.168.233.*网段。安全性更高
>grant all on *.* to "root"@"%" identified by "123456"; 
#授权所有地址都可以远程登录
>flush privileges;
>select Host,User,Password from mysql.user;   

2.shell脚本编写

#!/bin/bash
#2020年7月6日
#backup  msyql_db.
#by author TuDestiny
######################
MYSQL_IP="192.168.233.129"
MYSQL_USER="root"
MYSQL_PASSWD="123456"
date=`date +%Y%m%d%H%M`

if (($# < 1));then
	echo "输入需要备份的数据库名"
	exit 1
fi

for database in $*
do
	mysqldump -h $MYSQL_IP -u$MYSQL_USER -p${MYSQL_PASSWD} -B ${database}>${database}${date}.sql

		if [ $? -ne 0 ];then
			 echo "数据库${database}备份失败,YOU are A FOOL!!!"
        		 exit 1
        
      		else
        		echo "数据库${database}备份成功,YOU  are  GREAT!!!"
		fi

done

3.执行结果

[Warning] Using a password on the command line interface can be insecure.此告警为密码不够安全,可以将密码设置复杂一些,可解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值