适用于Linux平台下的一个定时备份压缩数据库代码 压缩备份Mysql数据库 #!
,这个必须修改\\-- ----删除当前日期前15-前10天内的数据库备份,可根需要自行修改---- set @i=10 while @i<15 begin set @cmd1 ='if...,' ','-'),':','') SET @path='E:\DATABACKUP\'+@filename BACKUP DATABASE @dbname TO DISK=@path ----压缩数据库备份...\'+@filename exec master..xp_cmdshell @cmd2----压缩数据库 set @cmd3='DEL E:\DATABACKUP\'+@filename exec...master..xp_cmdshell @cmd3----删除原备份文件(只保留压缩包) go --1.修改本过程中目标数据库名成你要备分的数据库名 2.复制此行(可含此行)以上内空到查询分析器中执行即可...--3.数据库备份文件存放在E:\DATABACKUP文件夹中,文件名为 数据库名四位年两位月两位日-两位时两位分.rar
/bin/bash #by azura #About database backup #URL https://www.mxsina.com DBCMD=/usr/local/mysql/bin/mysqldump...123456789 #数字段请修改为root用户数据库连接密码 DATABASE=emlogdb #emlogdb请修改为备份的数据库...---------------------------------------------------------" echo echo "Start the database backup" #示例备份命令...mysqlbak/bak_emlogdb.sql $DBCMD -u$DBUSER -p$DBPWD $DATABASE > $BAK_DIR/db_emlog.sql #db_emlog.sql可修改为备份文件的文件名
一般情况我们通过mysqldump来备份MySQL数据库,并上传至其它备份机器。如果数据库比较大,在备份传输的时候可能会慢,所以我们尽量让备份的文件小一些。...在写自动备份脚本时,最好把备份结果直接压缩,恢复时也可以直接由压缩备份恢复。下面介绍如何使用bzip2和gzip进行压缩mysql备份文件。...备份并用bzip压缩: 代码如下 mysqldump | bzip2 > outputfile.sql.bz2 从bzip2备份恢复: 代码如下 bunzip2 备份并用gzip压缩: 代码如下 mysqldump | gzip > outputfile.sql.gz 从gzip备份恢复: gunzip < outputfile.sql.gz...直接将MySQL数据库压缩备份 代码如下 mysqldump -h hostname -u username -p databasename | gzip > db.sql.gz 说明: gzip是linux
概述 mysql脚本加crontab实现自动备份。 具体内容 vi /opt/mysqlBackup.sh #!.../bin/bash mysql_user="USER" # MySQL备份用户 mysql_password="PASSWORD" # MySQL备份用户的密码 mysql_host="localhost...如("db1" "db2" "db3") backup_location=/opt/mysql # 备份数据存放位置,末尾请不要带"/",此项可以保持默认,程序会自动创建文件夹 expire_backup_delete...# 欢迎语 # 判断MYSQL是否启动,mysql没有启动则备份退出 mysql_ps=`ps -ef |grep mysql |wc -l` mysql_listen=`netstat -an |grep...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$
文章时间:2019年1月31日 08:49:46 作者:余伟同学 说明:利用crotab定时器,实现定时自动备份mysql数据库 更新人 更新时间 更新内容 余伟同学 2019年10月10日...12:30:57 增加复杂版本sh,7天自动删除 安装crotab 安装教程地址:https://wiki.nooss.cn/archives/84.html 编写备份mysql的shell脚本 #简单版本...###################数据库配置信息####################### user=root passwd=root dbname=databases mysql_back_path...#########数据库配置信息####################### /usr/bin/mysqldump -h127.0.0.1 -u$user -p$passwd $dbname > $mysql_back_path.../$time.sql.gz echo '数据库备份完成' find /home/dbback/ -mtime +3 -name "*.sql.gz*" -exec rm -rf {} \; #删除3天以上的备份
1、执行 crontab -e 00 00 /bin/bash yourpath/mysqlbak.sh 2、打开自动执行文件 vi /etc/crontab 在etc中加入如下内容,让其自动执行任务...00 00 root /mysqlbak.sh 以上两个 00 00 * 为每天的凌晨自动执行脚本 分 时 日 月 周 命令 M: 分钟(0-59)。.../sbin:/usr/local/mysql/bin export PATH 数据库用户名 dbuser=’root’ 数据库密码 dbpasswd=’123456′ 数据库名,可以定义多个数据库,中间以空格隔开...== 0 ];then cd $datapath 为节约硬盘空间,将数据库压缩 tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql > /dev/null...删除原始文件,只留压缩后文件 rm -f ${datapath}/${backtime}.sql echo “数据库表 ${dbname} 备份成功!!”
定时执行脚本: 1、执行 crontab -e 00 00 * * * /bin/bash yourpath/mysqlbak.sh 2、打开自动执行文件 vi /etc/crontab... 在etc中加入如下内容,让其自动执行任务。 ...usr/local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='root' #数据库密码 dbpasswd='123456...== 0 ];then cd $datapath #为节约硬盘空间,将数据库压缩 tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql >.../dev/null #删除原始文件,只留压缩后文件 rm -f ${datapath}/${backtime}.sql echo "数据库表 ${dbname} 备份成功!!"
/bin/bash #the script is backup all databases for mysql server,first grant all on *.* to adminbak@'172.16.2.222
/bin/bash db_user="root" db_passwd="123456" db_name="test_db" #进入备份目录将之前的移动到old目录 cd /mnt/backup/bakmysql...directory now" mv test_db* /mnt/backup/bakmysqlold echo "Old databases are moved to bakmysqlold folder" #备份目录...backup_dir="/mnt/backup/bakmysql" #时间格式 time=$(date +"%Y-%m-%d") #mysql 备份的命令,注意有空格和没有空格 mysqldump -...db_name > "$backup_dir/$db_name"-"$time.sql" echo "your database backup successfully completed" #这里将7天之前的备份文件删掉
# 创建执行脚本 tar jcvf data_cold_back.tar.bz2 data 当需要进行冷备份操作时, 只需执行脚本命令即可(操作会覆盖掉之前备份的压缩文件,没啥不利影响) ☞ tar..."/var/lib/mysql/" 下 所有生成的文件也在这里: tar 压缩命令可以减少存储空间 待还原备份时,进行解压即可 但是要特别注意下,很可能报出这种错误: 【tar 解压缩文件报错...感觉,这个技术含量不如 —— 使用 XtraBackup 进行数据热备 ---- Shell 脚本自动备份 不过,这种方式需要 MySQL 服务开启,不然无法备份数据 个人觉得有点像热备份 但是,...如("db1" "db2" "db3") backup_location=/var/lib/mysql/backup #备份数据存放位置,末尾请不要带"/",此项可以保持默认,程序会自动创建文件夹.../test_pxc-202101291229.sql 参考文章 —— 【CentOS MySQL 自动备份 shell 脚本】 【题外话】 个人觉得 这种方式倒是挺适合本地测试或者小型项目
首先建立以个空白文档,然后打开编辑成需要的内容,最后保存为*.sh文件 比如我现在Linux 系统 /usr下有个目录soft需要让它每天自动压缩打包到/opt/ftp的目录下,并以当前时间命名 例.../bin/sh tar -czvf /opt/ftp/soft.tar.gz /usr/soft 恢复备份,在预设的情况下,我们可以将压缩档将文件恢复到指定目录!...,但要排除目录内的某些文件夹,例子 我现在要备份opt目录,但要排除opt目录下的FTP文件夹 tar -czvf /opt/ftp/opt.tar.gz --exclude=/opt/ftp /opt...00 2 * * * 每天晚上2点运行 01 2 * * * 每天晚上2点1分运行 01 2 29 * * 每个月第29天2点1分运行 01 2 29 10 * 第十个月的第29天2点1分运行 压缩与解压缩要看用什么格式压缩的对应用什么格式解压...,比如.gz(有gzip压缩而成),解压方法:gzip -d filename
1.环境 测试环境:centos6.9 mysql版本:mysql5.6 mysql安装目录:/usr/local/mysql/ 备份目录:/mysqlbak 脚本位置:/mysqlbak/mysqlbak.sh...2.脚本代码 脚本内容如下,已有注释,请自行根据内容修改: #2018.4.15刘编写 #定义用户名和密码 user="root" pass="root" #设置备份目录,在此为/mysqlbak...可执行文件目录,本人mysql安装在/usr/local/mysql cd /usr/local/mysql/bin #执行导出全库语句 ..../mysqldump -u$user -p$pass --all-databases> "$backup_dir"/mysql_"$backuptime.sql" zip -r /mysqlbak/mysqlbak...若无该文件请执行yum安装crond命令:yum install crontabs 末尾添加一行: 59 21 * * * root /mysqlbak/mysqlbak.sh 以上意思为每天21:59分执行一次备份
首先建立以个空白文档,然后打开编辑成需要的内容,最后保存为*.sh文件 比如我现在Linux 系统 /usr下有个目录soft需要让它每天自动压缩打包到/opt/ftp的目录下,并以当前时间命名 例:写个.../bin/sh tar -czvf /opt/ftp/soft.tar.gz /usr/soft 恢复备份,在预设的情况下,我们可以将压缩档将文件恢复到指定目录!...,但要排除目录内的某些文件夹,例子 我现在要备份opt目录,但要排除opt目录下的FTP文件夹 tar -czvf /opt/ftp/opt.tar.gz --exclude=/opt/ftp /opt...例子: 00 2 * * * 每天晚上2点运行 01 2 * * * 每天晚上2点1分运行 01 2 29 * * 每个月第29天2点1分运行 01 2 29 10 * 第十个月的第29天2点1分运行 压缩与解压缩要看用什么格式压缩的对应用什么格式解压...,比如.gz(有gzip压缩而成),解压方法:gzip -d filename
,多个数据库用空格分开 dbname='12312' #备份时间 backtime=`date +%Y%m%d%H%M%S` #日志备份路径 logpath='/data/backup/wpblog_backup...' #数据备份路径 datapath='/data/backup/wpblog_backup' #日志记录头部 echo "备份时间为${backtime},备份数据库表 ${dbname} 开始" >...== 0 ];then cd $datapath #为节约硬盘空间,将数据库压缩 #tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql > /dev/...null #删除原始文件,只留压缩后文件 #rm -f ${datapath}/${backtime}.sql #删除七天前备份,也就是只保存7天内的备份 find $datapath -name "*...>> ${logpath}/wpblog_backup.log else #备份失败则进行以下操作 echo "数据库 ${db} 备份失败!!"
MYSQL 8.0后,XTRABACKUP 的参数有哪些变化,如果是通过XTRABACKUP 来备份那些参数的意义在哪里,是不是需要进行调整 1 compress 在XTRABACKUP 进行文件的备份时...,是有一个compress参数的,通过这个参数可以将INNODB 格式的数据进行压缩,他支持的压缩的逻辑是quicklz而压缩完毕的数据具有qpress格式,也就是说备份的文件的后缀是。...qp 从上图两个备份方式的比较上为压缩备份,下为非压缩备份,可以看到压缩后的备份的确是某些文件缩减了10倍。 ...CPU在备份的压缩上。...mydumper来完成,而不是xtrabackup 下面我们看看 1 前提条件是你的mysql 必须是开启 innodb_file_per_table的 2 备份的方式也可以是1个表 一群表,或者一个数据库中的一组表
基于前面的文章方法,加入批处理命令即可实现自动备份。只是由于批处理命令中对于备份文件的名字按照时间命名比较特别,所以特别整理一文。...1、复制date文件夹备份 ============================ 假想环境: MySQL 安装位置:C:\MySQL 论坛数据库名称为:bbs 数据库备份目的地:C:\db_bak...2、mysqldump备份成sql文件 ============== 假想环境: MySQL 安装位置:C:\MySQL 论坛数据库名称为:bbs MySQL root 密码:123456 数据库备份目的地...(日期的字符串的下标是从0开始的) 3、利用WinRAR对MySQL数据库进行定时备份。 对于MySQL的备份,最好的方法就是直接备份MySQL数据库的Data目录。...这种方法缺点是占用时间比较多,备份期间压缩需要时间,mysql断开比第一种方法更多的时间,但是对于文件命名很好。
一、mysql提供了一个mysqldump的工具可以方便的导出导入数据库信息; 一般情况下mysql的数据库安装成功后,mysqldump的位置在:/usr/bin 的目录会有mysqldump这个文件...#mysql_bin_dir:mysql的bin路径; #dataname:数据库名; #user:数据库用户名; #password:用户密码; #name:自定义备份文件前缀标识 # name:自定义备份文件前缀标识...#数据库备份的位置 backupdir=/home/mysqlbak time=` date +%Y%m%d%H%M%S` #需要备份的数据库的连接的用户名和密码和数据库 #mysql_bin_dir/..._$time.sql.gz #传输至备份服务器,如果保留本机则不需要此步骤 #scp $backupdir/mysql_$time.sql.gz 22.122.51.158:/data/bakup/159...image.png 第三步:创建bakmysql.sh中的备份文件夹 ? image.png 第四步:配置linux定时任务 创建定时任务:crontab -e [图片上传失败...
/bin/bash #功能说明:本功能用于备份mysql数据库 #编写日期:2018/05/17 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr.../local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='dbuser' #数据库密码 dbpasswd='dbpasswd' #数据库名...='/opt/mysqlbackup/log' #数据备份路径 datapath='/opt/mysqlbackup' #日志记录头部 echo ‘”备份时间为${backtime},备份数据库表 ${...== 0 ];then cd $datapath #为节约硬盘空间,将数据库压缩 tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql > /dev/null...#删除原始文件,只留压缩后文件 rm -f ${datapath}/${backtime}.sql echo “数据库表 ${dbname} 备份成功!!”
下面收集了几种自动备份mysql数据库的脚本,一般的站够用了,但要注意:如果数据库过大,或者系统设置不当,都可能导致自动备份失败,因此即使采用了自动备份,也要记得经常查看是否备份成功,以及备份的数据是否完整...1、自动导出mysql备份,并上传到指定ftp !...> $(date +%Y%m%d)-数据库名.sql 压缩备份文件 tar -zcvf $(date +%Y%m%d)mysql数据库名.tar.gz $(date +%Y%m%d)* 上传到ftp...sql $(date +%Y%m%d)mysql数据库名.tar.gz rm -rf $(date +%Y%m%d)* rm -rf $(date +%Y%m%d)* 2、自动备份mysql数据库,并发送到指定...也可以用下面的命令直接导出mysql备份为压缩文件: mysqldump -u用户 -p密码 数据库名 | gzip -c > $(date +%Y%m%d)-数据库名.sql.
领取专属 10元无门槛券
手把手带您无忧上云