解读shell之备份mysql脚本

# !/ bin / sh
export d
= `date  +% Y % m % d % H % M % S`   # 定义时间输出格式
mkdir 
- / data / dbbak / baktables / $d          #按照定义好的时间格式生成备份目录
for  i in `echo  " show tables "   |  mysql  - u bak  - ppassword db | grep  - v Tables`; #登陆数据库库选择db数据库,显示数据库表格。
do     
  echo $i; mysqldump 
-- add - drop - table  -- allow - keywords  - - - - u bak  - ppasswod mbook_hd $i  >  backup / $d / $i.sql   #   显示show table 结果按其对应参数进行备份--add -drop -   table 选项是防止导入时出错。
done   

tar czf backup
/ $d.tar.gz backup / $d /    #把backup下的文件分别 打包到 / backup/$d目录下
rm 
- rf backup / $d /        # 删除backup下的的已打包的文件夹

lftp 
- " cd /dbbak/; mput -c $d.tar.gz; quit "   - u bak,password sftp: // 192.168.0.138 

  #用lftp把 /dbback下的打包文件 传到192.168.0.138 sftp服务器上。-e 在选择上执行命令。

 

--------------------------------------

windows下批处理版本

@echo off
set remote_host=192.168.1.7
set remote_db=dbname
set romote_user=username
set remote_passwd=passwd
set local_db=dbname
set local_user=username
set local_passwd=passwd
echo '备份远程数据库数据'
mysqldump -h%remote_host% -u%romote_user% -p%remote_passwd% --skip-lock-tables --default-character-set=utf8 %remote_db%> pm.sql
echo '恢复本地数据库数据'
mysql -u%local_user% -p%local_passwd% --default-character-set=utf8 %local_db%< pm.sql
pause

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值