ssh+git实现数据同步

server(192.168.2.82):
1、服务器客户端之间免密码登录
ssh-keygen -t rsa(一直enter结束)
cd /root/.ssh
scp id_rsa.pub root@192.168.2.39:~/.ssh/authorized_keys
验证:
ssh 192.168.2.39(无需输入密码,直接可以登录)

client(192.168.2.39):
ssh-copy-id 192.168.2.82(安装公钥在远程服务器上)
验证:
ssh 192.168.2.82(免密码直接可以登录)

2、创建git版本库
cd /
mkdir ling_tu
cd ling_tu
git init
cd ..
git clone --bare ling_tu #克隆一个裸版本库
rm -rf ling_tu #删除原有的版本库
git clone ling_tu.git #克隆一个新的版本库

3、客户端克隆服务器git版本库
cd /
git clone root@192.168.2.82:/ling_tu.git


4、客户端创建同步脚本
vi backup.sh
#!/bin/bash
ssh 192.168.2.82 'cd /ling_tu;\
/usr/local/mysql/bin/mysqldump -uroot -p密码 ling_tu>ling_tu.sql;\
git commit -a -m "backup database for lingtu";\
git push'

cd /ling_tu;git pull

 

5.运行脚本,验证
sh +x backup.sh

 

posted on 2015-11-19 10:48  luckyjinping  阅读(481)  评论(0编辑  收藏  举报