如何让windows将大量文件自动定时备份至linux服务器
比较简单
在linux系统上设置crontab,
晚上定时去windows
ftp上下载。
需要做的
1
在windows上安装ftp服务端
2
在写下载脚本auto_downloadsh:
参考:
lftp
10001
-u
user,passwd
-e
'cd
/pwd;get
XX;quit'
多文件下载请用mget
3
在linux上设定crontab
crontab
-e
00
00
sh
/pwd/auto_downloadsh
编写备份数据库脚本。新建文本文档,粘贴如下内容:
echo 开始备份数据库
if not exist F:\db_bak\files md F:\db_bak\files
if not exist F:\db_bak\logs md F:\db_bak\logs
set var=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
exp ora_user/ora_pwd@ora_conn file=F:\db_bak\files\xxxx_%var%dmp log=F:\db_bak\logs\xxxx_%var%log owner=(user1,user2)
echo 删除过久的备份记录
forfiles /p "F:\db_bak" /s /m dmp /d -60 /c "cmd /c del @path"
forfiles /p "F:\db_bak" /s /m log /d -60 /c "cmd /c del @path"
exit
把文本文档后缀名修改成bat。
bat文件在windows下为可执行文件。
找到windows系统下的“任务计划程序”。
在WIN7下的位置是:开始--所有程序--附件--系统工具--任务计划程序
使用任务计划程序“创建基本任务”。,下一步:
选择任务何时开始执行,(选择每天),下一步:
设置任务开始执行的具体时间,(设置成零晨3点),下一步:
选择任务执行的具体操作,(启动程序),下一步:
选择程序或脚本,通过“浏览”按钮把我们在第1、2步骤编写好的bat文件指定好。,下一步:
任务创建好了。点击完成即可。至此,定时备份oracle数据库的操作已经完成
转发
--SQL如何备份到异机
写成存储过程,建立作业定时备份~~~
--在sql中映射一下就可以了
exec masterxp_cmdshell 'net use z: \\yizhi\D$ "密码" /user:yizhi\administrator'
/--说明:
exec masterxp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'
z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径
xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--/
--备份;with init覆盖 |noinit添加
backup database 库名 to disk='E:\H_BACKUPbak' with init
--COPY
exec masterxp_cmdshell 'copy E:\H_BACKUPbak z:'
--删除(这句可以去掉)
--exec masterxp_cmdshell 'del E:\H_BACKUPbak'
--完成后删除映射
exec masterxp_cmdshell 'net use z: /delete'
用同步软件不就搞定了,省的瞎折腾了啊
我现在用的Bestsync2011同步软件,我觉得还蛮好用的,速度比较快,日志功能很强大,反正如果同步有任何错误,你能查看到每个文件的同步状态。
for example: 你可以把软件安装在服务器上,建立1个任务,来将这两台服务器进行实时同步。
1 在主菜单里面点 编辑-->追加任务
文件夹1选择 B电脑本地硬盘上的某个位置
文件夹2选择 服务器共享文件夹的位置
方向为由文件夹2到文件夹1
然后选择 完成 按钮
在主菜单上,点选 开始 按钮, 这样, A与B上的文件就完全一致了。
2 在任务列表中,双击你刚刚建立的这个任务,然后会弹出属性对话框
翻到 “日程” 那页
勾选上 “按指定日程同步”这个选项,然后再下面出现的时间选项里面选你想要同步的时间段
最后点击 确定 按钮
这样,在你指定的时间点,服务器指定的这个文件夹如果有变化,就会执行这个同步任务,将服务器共享文件夹的文件同步到B电脑的指定位置。
他们新浪微博上要好多教程,你不清楚可以去看那上的手册。。。
可以直接备份到移动硬盘的;我上班的第一家公司就是这样做;每天的备份到移动硬盘;一个礼拜后再做一压缩。一般我们保留一年的数据;那时候有ERP和内部通讯的系统;都做备份。
但根据我目前的经验来说;不推荐这样做;可以先让它备份在本地电脑;然后一周后做一个压缩包放到移动硬盘里面去比较好一些;因为移动硬盘一直连接在电脑有可能会出现连接异常的情况,如果这个情况的出现会导致备份失败(当然这也可以在代理里面可以设置,如果备份失败要怎么做,——转硬盘备份)
服务器的数据备份可以根据需要人工定时备份,也可以借助备份软件进行数据库、文件和操作系统的备份。目前,实时备份软件的种类有很多,随着技术的发展,CDP容灾备份软件又比实时备份软件高出一筹,例如:备特佳,在实时备份的基础上,还有数据库的任意时间回退功能,还能支持应用级的灾备。如果是虚拟机的数据备份,则可以考虑数易云备系统。这两种软件都可以在官网下载免费试用。
在MySQL中进行数据备份的方法有两种:
1
这个命令会在拷贝文件之前会把表锁住,并把数据同步到数据文件中,以避免拷贝到不完整的数据文件,是最安全快捷的备份方法。
命令的使用方法是:
-u root -p db1 db2 dbn
如果需要备份全部数据库,可以加上_regexp=””参数。
命令可自动完成数据锁定工作,备份时不用关闭服务器。它还可以刷新日志,使备份文件和日志文件的检查点能保持同步。
2 mysqlmp
这个命令是用来把数据库倒成sql文件的,是非常古老的命令了。
命令的使用方法是:
mysqlmp -u root -p _hex-blob db1 > db1sql
加上_hex-blob参数以后,blob数据会被类似BASE64的方法转换为文本来存储在sql文件中,就不会导致sql文件格式问题了。经过测试,通过这种方法备份的blob数据再重新恢复回去能够完全正确。
如果要备份所有的数据库,可以加上_all-databases参数。
用mysqlmp命令还可直接把数据库转移到另外一台服务器上,不用生成备份文件。重复执行可定期更新远程数据库。
% mysqladmin -h remote_host create testdb
% mysqlmp _opt testdb | mysql -h remote_host testdb
另外还可通过ssh远程调用服务器上的程序,如:
% ssh remote_host mysqladmin create testdb
0条评论