linux自动备份脚本,谢谢给个详细 *** 作。本人Linux不熟

linux自动备份脚本,谢谢给个详细 *** 作。本人Linux不熟,第1张

使用crontab -e命令进入定时执行设置里面添加
/8 bash /usr/local/scripts/ERP_baksh
保存退出
然后创建脚本
touch /usr/local/scripts/ERP_baksh
chmod +x /usr/local/scripts/ERP_baksh
vi /usr/local/scripts/ERP_baksh
编辑脚本输入以下内容
#!/bin/bash
tar zcvf ERP_bak-`date +%Y-%m-%d`tgz /var/backup/
保存退出
每天8点就会在/usr/local/scripts/下生成一个归档文件比如今天是ERP_bak-2015-1-23tgz
如果要恢复数据的话就进入 /usr/local/scripts/ 目录找到要恢复的tgz文件用 tar zxvf 解压就可以了

#!/bin/bash
#设置日志文件,前提建好了/backup/log目录
LogFile=/backup/log/`date +"%Y-%m"`log
#备份源目录
SourceDir=/cvs
#备份目标
BakDir=/backup
#保存20天过期自动删除
RetainDay=20
#备份的内容可以写进projectlst,如cvs目录下有a,b,c三个目录,projectlst填写多少就备份多少,下面是备份的
#具体脚本,其核心是tar打包,并把重要的内容记录到日志文件里
ProjectLst=/backup/projectlst
##################################################
DATE=`date +"%Y-%m-%d"`
echo "backup start at $(date +"%Y-%m-%d %H:%M:%S")" >$LogFile
echo "--------------------------------------------------" >>$LogFile
cd $BakDir
PROJECTLIST=`cat $ProjectLst`
for Project in $PROJECTLIST
do
ProjectData=$SourceDir/$Project
DestDir=$BakDir/$Project
PackFile=$DATE$Projecttgz
if [ -f $BakDir/$PackFile ]
then
echo "backup file have exist !" >>$LogFile
else
cp -RHpf $ProjectData $DestDir >/dev/null
tar -zcvf $PackFile $Project >/dev/null
echo "backup $Project done into $PackFile" >>$LogFile
rm -rf $Project
fi
done
echo "--------------------------------------------------" >>$LogFile
echo "backup end at $(date +"%Y-%m-%d %H:%M:%S")" >>$LogFile
echo " " >> $LogFile
##################################################
#下面的内容就是把刚才备份的内容传到服务器上,前提是你有一个可以访问到底FTP服务器
#put backup to ftp server
HOST=192168110111
FTP_USERNAME=ftpuser
FTP_PASSWORD=123456
cd $BakDir
echo "start open ftp serverat $(date +"%Y-%m-%d %H:%M:%S")" >> $LogFile
echo "--------------------------------------------------" >>$LogFile
/usr/bin/ftp -in < open $HOST
user $FTP_USERNAME $FTP_PASSWORD
put $DATE$Projecttgz
bye
EOF
echo "put ftp end at $(date +"%Y-%m-%d %H:%M:%S")" >>$LogFile
#最后上传完毕后再查看本地备份大于20天的自动删除,这样就可以实现本地异地双备份
find $Bakdir -type f -mtime +$RetainDay -name "$Projecttgz" -exec rm {} \; >/dev/null
exit 0
#最后我们还可用crontab做个周期性计划,比如每周一次全备份
#59 23 6 /home/backupsh

首先,建立dblink,使TEST2能访问TEST1中的所有表(不会建的话你就参考其他资料吧)
第二,建立存储过程,这个我到是可以帮你写,但太麻烦,最好你能自己写,把
TEST1的所有表建立的TEST2上
第三,设置一个job定时启动这个存储过程

目测:::导出数据库数据,这个标签后面的没有被执行是不是?
如果是的话,那么极可能是exp这条命令不在执行路径里面,把它写成绝对路径就行了,任务计划里的BAT涉及到路径的最好全写成绝对路径,这个执行路径好坑的。

Allway Sync
allwaysync-9-4-11
是一个非常容易使用的 Windows 文件同步软件。 它可以在几个文件夹之间进行文件同步,自动将更新的文件覆盖几个同步文件夹中的旧文件。软件带有一个小型数据库,监视每次更新后的文件状态。如果一次同步之后,你删除了同步文件夹中某些文件,它在同步的时候将其它的几个文件夹的副本也删除,而不会将未删除的旧文件重复拷贝到更新的文件夹。

你运气好,我这个也刚做好,发你一份把 。自动运行在window下的任务计划中添加,如需要Linux下的请H! 我··
@echo off
set sqlserver="aboa" \aboa 为你 要备份的数据库名字
set dn=7 7天以前的,可自己设置
echo
echo 在D盘自动建立文件夹 back
echo
if exist D:\back (
echo "已经存在文件夹"
) else (
md D:\back 创建文件夹back
)
cd/d "D:\back"
echo Wscriptecho dateadd^("d",-%dn%,date^)>rdvbs
for /f "tokens=1-3 delims=-" %%a in ('cscript//nologo rdvbs')do (
set yy=%%a&set mm=00%%b&set "dd=00%%c")
set ymd=%yy%-%mm:~-2%-%dd:~-2%&del rdvbs
set n=0
for /f "delims=" %%i in ('dir/b/a-d sql')do (
if "%%~ti" lss "%ymd%9" (
cls&echo/&echo 正在删除 %%i
set/a n+=1
del "%%i"))
cls&echo/&echo/&echo 检查删除7天以前的备份文件完毕,共删除 %n% 个文件
echo _______________________________
echo
echo 今天是 %date%
echo 时间是 %time%
echo _______________________________
echo
echo MySQL 数据库备份
echo 正在进行数据备份中,请耐心等待
echo
echo _______________________________
mysqldump --port 3306 -h localhost -u root -proot --default-character-set=utf8 -R %sqlserver% > d:\back\%date:~0,4%-%date:~5,2%-%date:~8,2%sql 备份的数据库文件名为当天的日期
echo
pause

最近出了件大事,一大早被领导三番催促,原来是部署在我们机房机器上的禅道莫名挂了,所有用户均无法正常登陆,怀疑是机房机器变动导致部分数据丢失,好在禅道每天有备份,尝试使用备份数据重新覆盖安装,也是失败,最后检查是服务器磁盘满了。。。但也提醒了我这些数据的重要性(数据包已经有6G了,所有开发任务和缺陷、用例全在上面),于是着手把数据远程备份一次。

我使用的机器是Centos7,不同机器命令不太一样,如果使用的是Centos6及以下版本,sytemctl需要换成service

上方是给出的注释,从左往右依次是分、时、日、月、周,我设置的是每天凌晨2点半执行打包脚本,3点半把压缩包传至另一个服务器,4点则删除该压缩包,脚本比较简单

使用RSA非对称加密算法,将禅道服务器的公钥放到备份服务器的authorized_keys中

公钥/root/ssh/id_rsapub
秘钥/root/ssh/id_rsa

可以通过lszrz工具将公钥上传至B服务器中。
尝试一下:
scp testtxt root@47943678:/root/

大功告成


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13036450.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存