mysql数据库备份而且实现远程复制

一.实现ssh 远程登录mysql

机器环境:sql

192.167.33.108 clent 用户:crawler数据库

192.167.33.77 server 用户:crawler服务器

1.客户端 生成密钥ssh

/home/crawler/.ssh/ssh-keygen测试

2. 查看密钥文件权限spa

ls -ld ~/.ssh; ls -l ~/.sshserver

3.修改文件权限图片

chmod 700 /home/crawler/.sship

chmod 600 /home/crawler/.ssh/id_rsa

4.复制公钥到服务器端

scp -r /home/crawler/.ssh/id_rsa.pub crawler@192.167.33.77:/home/crawler/.ssh

5.服务器端设置公钥

ls -ld /home/crawler/.ssh 查看文件权限 
chmod 700 /home/crawler/.ssh 须要是drwx
ls -l /home/crawler/.ssh/*pub 查看是否有公钥
cat /home/crawler/.ssh/id_rsa.pub >> /home/crawler/.ssh/authorized_keys //生成公钥最好用这种方式避免替换掉以前的公钥
chmod 644 /home/crawler/.ssh/authorized_keys //修改权限
ls -l /home/crawler/.ssh // 查看权限

6.ssh crawler@192.167.33.47 登录成功

 

2、备份mysql数据库

1.备份脚本(天天凌晨3点30开始备份,只保留7天的备份数据)

30 03 * * * sh /home/crawler/mysql_back_up/script/mysql-backup.sh gquan_miss8

 

rq=` date +%Y%m%d `

echo backuping $1

mysqldump -uroot -p111111 --default-character-set=utf8 --opt  --triggers -R --hex-blob --single-transaction  $1 | gzip > /home/crawler/mysql_back_up/daily/$1-all-$rq.sql.gz

find  /home/crawler/mysql_back_up/daily  -mtime +7 -name "*.sql.gz"  -exec  rm -rf {} \;

echo finished backup $1

2.rsync实现远程备份数据增量同步(天天凌晨5点10分执行)

10 05 * * * sh /home/crawler/mysql_back_up/script/back_mysql_77.sh >> /home/crawler/mysql_back_up/script/back.log

#!/bin/sh
echo "------------------------start--------------"`date`
rsync -au --delete /home/crawler/mysql_back_up/daily/ crawler@192.168.32.77:/home/crawler/back_96_data
echo "------------------------over--------------"`date

3.测试查看服务器上面有client文件说明正确

server图片

client 图片

相关文章
相关标签/搜索