/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' #数据库名...,可以定义多个数据库,中间以空格隔开,如:test test1 test2 dbname='dbname' #备份时间 backtime=`date +%Y%m%d%H%M%S` #日志备份路径 logpath...='/opt/mysqlbackup/log' #数据备份路径 datapath='/opt/mysqlbackup' #日志记录头部 echo ‘”备份时间为${backtime},备份数据库表 ${...>> ${logpath}/mysqllog.log else #备份失败则进行以下操作 echo “数据库表 ${dbname} 备份失败!!”
Python脚本自动备份Mysql数据库,此脚本会备份所有数据库,并按库名创建文件夹保存,只保留最近7天的备份数据。可自定义修改。支持Python2,、Python3。...> /data/shell/logs.log 2>&1 & #定时时间格式 脚本路径/脚本 #:wq保存退出即可 mysql_back.py脚本文件 #!...-8类型的,需要制定数据库 conn = pymysql.connect( host=mysql_host, # 数据库地址 user=mysql_user..., # 数据库用户名 passwd=mysql_pwd, # 数据库密码 db='mysql',...如果日志是mysqldump: command not found,在备份mysql数据库时,提示mysqldump: command not found的解决方法
/bin/bash #by azura #About database backup #URL https://www.mxsina.com DBCMD=/usr/local/mysql/bin/mysqldump...#请修改为数据库dump命令目录 DBUSER=root DBPWD=123456789 #数字段请修改为root用户数据库连接密码 DATABASE=emlogdb...#emlogdb请修改为备份的数据库 BAK_DIR=/mysqlbak/`date +%Y%m%d` #/mysqlbak/目录可自由修改 if...---------------------------------------------------------" echo echo "Start the database backup" #示例备份命令...mysqlbak/bak_emlogdb.sql $DBCMD -u$DBUSER -p$DBPWD $DATABASE > $BAK_DIR/db_emlog.sql #db_emlog.sql可修改为备份文件的文件名
定时执行脚本: 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...usr/local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='root' #数据库密码 dbpasswd='123456...'"备份时间为${backtime},备份数据库表 ${dbname} 开始" 》 ${logpath}/mysqllog.log #正式备份数据库 for table in $dbname;
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′ 数据库名,可以定义多个数据库,中间以空格隔开...’ 数据备份路径 datapath=’/second/backup’ 日志记录头部 echo ‘”备份时间为${backtime},备份数据库表 ${dbname} 开始” >> ${logpath}/...>> ${logpath}/mysqllog.log else 备份失败则进行以下操作 echo “数据库表 ${dbname} 备份失败!!”
/bin/bash #the script is backup all databases for mysql server,first grant all on *.* to adminbak@'172.16.2.222
下面是脚本user="root" #备份用户密码 password="111111" #mysql连接端口 port="3306" mysql_path="/usr/bin/" date=$(date...-e $backup_path/${date} ];then mkdir -p {$backup_path/${date},$backup_log_path} fi #echo "开始备份所有数据库"...:${date} 备份方式:mysqldump 备份数据库:$dbname($size) 备份状态:成功!"...>>$backup_log else cd $backup_path/${date} echo "备份时间:${date} 备份方式:mysqldump 备份数据库:${dbname} 备份状态:失败,.../ echo "备份时间:${date} 备份方式:云备份数据库:$dbname($size) 备份状态:成功!"
一、任务描述: 写一个自动化脚本,每天2点将school数据库的score表备份并上传到FTP服务器backup目录。 二、程序代码 #!...58.220.207.226 &> /dev/null 00 02 * * * sh auto_backup.sh &> /dev/null 四、测试效果 这里为了测试方便,将时间调整为每分钟做一次备份
192.168.1.2服务器对192.168.1.1服务器上的MySQL数据库进行备份。...必须满足的条件: 1、在192.168.1.1服务器上创建专门用来备份的数据库账号,并赋予相应的权限: mysql> grant select,lock tables on *.* to 'operator...'@'192.168.%.%' identified by '123456'; #备份数据库需要账号具有查看表和锁定表的权限 2、在192.168.1.2服务器上使用该账号进行手工备份,测试是否可以备份成功...bak="/opt/backup" #指定备份目录 cmd="/usr/local/mysql/bin/mysqldump" #指定命令工具 time=`date +%Y%m.../mysqlbak.sh #执行脚本测试是否备份成功 Warning: Using a password on the command line interface can be
# 创建执行脚本 tar jcvf data_cold_back.tar.bz2 data 当需要进行冷备份操作时, 只需执行脚本命令即可(操作会覆盖掉之前备份的压缩文件,没啥不利影响) ☞ tar...感觉,这个技术含量不如 —— 使用 XtraBackup 进行数据热备 ---- Shell 脚本自动备份 不过,这种方式需要 MySQL 服务开启,不然无法备份数据 个人觉得有点像热备份 但是,...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$mysql_user..." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !.../test_pxc-202101291229.sql 参考文章 —— 【CentOS MySQL 自动备份 shell 脚本】 【题外话】 个人觉得 这种方式倒是挺适合本地测试或者小型项目
概述 每天定时远程或者本地备份mysql数据库,并且保存最新7天的备份内容。 脚本内容 [root@myhost ~]# cat /home/script/mysqlbackup.sh #!...,mysqldump and other bin's path MYSQL_COMMDAND="" #根据自己的数据库安装路径决定 MYSQLDUMP_COMMAND="" #根据自己的数据库安装路径决定...$next_int" fi done exit 0; 定时任务 数据库备份的定时任务尽量避开数据库访问的高峰期,可以选择在半夜执行。...[root@myhost ~]# cd $backup_dir && ll ##假设备份文件名为:2019-09-29.dbname.gz [root@myhost ~]# gzip -d 2019...-09-29.dbname.gz && ll #解压备份文件之后文件名: 2019-09-29.dbname [root@myhost ~]# cat 2019-09-29.dbname >
bak.log Date=date +%Y%m%d cd $BakDir DumpFile=Date.sqlBZDumpFile=Date.sql.tar.bz2/usr/bin/mysqldump -u数据库登录帐号...-p数据库密码 --all-databases > DumpFile/bin/tar jvcf BZDumpFile DumpFile/bin/rm DumpFile openssl enc -k 备份加密密码...-d mysql_zip="/home/mysql_backup/data"/lvshan_zip.zip mysql_back="/home/mysqlbackup/data"/lvshandata...mysql_zip mysql_data/bin/rm mysql_data openssl enc -k 备份加密密码 -aes-128-ecb -e -in mysql_zip -out mysql_back.../bin/rm scp -P 6008 $mysql_back root@ip:/home/mysql_backup_lvshan_ip
文章时间: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...-p$passwd $dbname > $mysql_back_path/$time.sql.gz echo '数据库备份完成' find /home/dbback/ -mtime +3 -name..."*.sql.gz*" -exec rm -rf {} \; #删除3天以上的备份sql echo '检查删除过期备份数据库成功' 说明 -u 后面跟的是用户名 -p 后面跟的是密码 datebaes
, 如果站多的话简直是一种折磨,不过好在我们可以通过编写好的脚本让系统自动备份数据,省去体力劳动。...下面收集了几种自动备份mysql数据库的脚本,一般的站够用了,但要注意:如果数据库过大,或者系统设置不当,都可能导致自动备份失败,因此即使采用了自动备份,也要记得经常查看是否备份成功,以及备份的数据是否完整...如在ssh中输入: crontab -e 输入: 00 00 * /home/website/mysqlbackup.sh 即为每天00:00自动运行备份脚本。 ...1、自动导出mysql备份,并上传到指定ftp !...sql $(date +%Y%m%d)mysql数据库名.tar.gz rm -rf $(date +%Y%m%d)* rm -rf $(date +%Y%m%d)* 2、自动备份mysql数据库,并发送到指定
/bin/sh # 备份数据库 # Mysql 用户名密码 MYSQL_USER=root MYSQL_PASS=root BACKUP_DIR=/data/backup/mysql DATA_DIR...="mysql_"$DATE".gz" # 删除一个月之前的数据库备份 find $BACKUP_DIR -name "mysql_*.gz" -type f -mtime +30 -exec rm...= 0 ]; then rm -r $DATA_DIR fi ---- 第二种方法: 可以选择设置需要备份的库,自动备份压缩,自动删除 7 天前的备份,需要使用 crontab 定时执行。.../bin/bash # 要备份的数据库名,多个数据库用空格分开 databases=(db1 db2 db3) # 备份文件要保存的目录 basepath='/root/backup/b3log.org...然后使用 crontab 设置该脚本定时执行: crontab -e 设置为凌晨 3 点执行: 0 3 * * * /root/backup_mysql.sh ----
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 -h localhost -uroot -p123456 database > /home/dump.sql 导出单个数据表结构和数据...mysqldump -h localhost -uroot -p123456 database table > /home/dump.sql 导出整个数据库结构(不包含数据) mysqldump -h
下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行。在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩。...需要注意的是,这段脚本仅适用数据一致性要求不高的环境。 #!.../bin/bash mysql_pwd="password" mysql_dump="/usr/local/mysql/bin/mysqldump" cur_year=$(date +"%Y") cur_month...=$(date +"%m") cur_day=$(date +"%d") dump_path="/usr/backup/mysql/$cur_year-$cur_month/$cur_day" arr_tables...-p$mysql_pwd --opt mydb $cur_table | gzip > $dump_path/$cur_table.sql.gz done 阳光部落原创,更多内容请访问 http://
路 获取mysql服务器所有数据库名称,过滤掉不需要备份的数据库 通过mysqldump来for循环导出所有的数据库的sql文件 用zip加密压缩所有的sql文件 定期进行数据清理工作 shell代码.../bin/bash #1.数据库信息定义 mysql_host="192.168.1.1" mysql_user="root" mysql_passwd="root"...-d $back_dir ]; then mkdir -p $back_dir fi #备份的数据库数组 db_arr=$(echo "show databases...;" | mysql -u$mysql_user -p$mysql_passwd -h$mysql_host) #不需要备份的单例数据库 nodeldb="test1" #当前日期...= 0 ]; then rm -r $data_dir fi 数据定期清理脚本 作用定期清理14天前的备份文件 shell代码 #!
backupsFileDay:备份数据文件保留天数 mysqldumpStr:导出工具mysqldump绝对路径 copydb:保存数据库名称,多个数据库用逗号分隔 2、脚本文件: #!...copyDb=${map["copydb"]} #获取默认的字符串分隔符 old_ifs="$IFS" #设置字符串分隔符为逗号 IFS="," #将备份数据库value值的字符串进行分隔,获取一个数组...=$(date -d ${map["backupsFileDay"]}' days ago' +%Y%m%d) #遍历要备份的数据库,删除两天前备份的数据文件 for delDb in ${dbArr...delDb}_database_${delday}.sql rm -f ${map["backupsFileStr"]}/${delDb}_database_${delday}.sql done #遍历要备份的数据库...,备份数据文件 for saveDb in ${dbArr[@]}; do echo $(date +'%Y-%m-%d %H:%M:%S')" 备份数据库:"${saveDb} ${map["mysqldumpStr
/mysql -u$username -p$password -h$hostip -e"SHOW DATABASES;"` denylists=(Database mysql test information_schema...performance_schema) #循环备份数据库 for dbname in ${dblists[*]} do #排除不用备份的数据库 flag=0 for i in ${denylists...[*]} do if [ "$i" = "$dbname" ] then flag=1 fi done if [ $flag -ne 1 ] then #指定时间日期和备份目录.../bin/mysql -u$username -p$password -h$hostip $dbname -e"SHOW MASTER STATUS;" >>$LogFile #开始备份数据库...--net_buffer_length=163840 | gzip>$backupdir echo " " >> $LogFile /usr/local/mysql/bin/mysql -u$
领取专属 10元无门槛券
手把手带您无忧上云