vlambda博客
学习文章列表

Linux备份Mysql,同步到Window机器

题菊花【黄巢】

飒飒西风满院栽,蕊寒香冷蝶难来。

他年我若为青帝,报与桃花一处开。


        前两句是说,飒飒秋风卷地而来,满院菊花瑟瑟飘摇。菊花是劳苦大众的象征,迎风霜开放,固然显出它的生命力,但时值寒秋,却是极大的憾事,在飒飒的秋风中,菊花似乎带着寒意,散发着幽冷细微的芳香,浓香竟发,因此蝴蝶也就难得飞来采掇菊花的幽芳了。后两句是说,有朝一日,我要当了春神,我将安排菊花和桃花同在春天盛开。

        后两句是说,有朝一日,我要当了春神,我将安排菊花和桃花同在春天盛开。作者想象自己有朝一日做了司春之神,就要让菊花和桃花一起在春天里开放。这一充满强烈浪漫主义激情的想象,集中的表达了作者宏伟的抱负。诗中的菊花,是当时社会上千千万万处于底层劳动人民的化身,作者既赞赏他们迎风霜而开放的顽强生命力,又深深为他们所处的环境,所遭遇命运的而愤激不平,立志要彻底加以改变。


需求描述:

从A机器到B机器备份文件数据,为了保护数据不被丢失或者A机器中的数据被误删后,公司系统能正常运行。如果是Linux机器之间的拷贝可以写一个shell拷贝脚本再新建crontab任务即可完成,如果是window机器之间的拷贝可以写一个批处理再新建个任务计划即可,但是从Linux拷贝到window机器,会想到使用ftp登陆进行拷贝,发现ftp connect :连接超时,查询Linux机器ftp启动正常,生无可恋的样子,此时我们可以借助psftp工具来完成自动下载的批处理脚本

psftp、bat脚本、sftp.txt 3个放在同一目录,否则执行过程会找不到对应文件

1.数据库备份sh脚本


#!/bin/bash#备份test库除msglog和user_action这2张表SHELL_DAY=$(date '+%Y%m%d')BACK_DIR="/home/temp/sql_bak"mysqldump --ignore-table=test.msglog --ignore-table=test.user_action -uroot -p'root123' test > ${BACK_DIR}/test_${SHELL_DAY}.sql

2.写个定时任务(每天23:40执行)

40 23 * * * sh /home/temp/sql_bak/mysql_back.sh


3.sftp.txt文件中命令

lcd C:\sqlbackcd /home/temp/sql_bakmget test_*rm test_*bye

4.编写bat脚本

用户名密码登陆

@echo offcd D:\toolspsftp 机器IP -l 用户 -pw 密码 -b "sftp.txt"


配置ssh免密登陆

@echo offcd D:\toolssftp -b "sftp.txt" root@机器IP

5.bat脚本、sftp.txt都已经弄好,接下来配置window定时任务

下载链接

参考文献:

https://blog.csdn.net/maimai1993/article/details/79171674

https://blog.csdn.net/slibra_l/article/details/89227736

其它命令可参考psftp操作

https://blog.csdn.net/wbcg111/article/details/48787227