mysql的备份脚本
remrem C:\Program Files\WinRAR 需要放到 path 下,才能调用rar cli工具remrem 跳转到工作目录下f:cd f:\DBBAK
rem 设置变量:备份文件名
SET BAK_FILE=MY_DBBAK_%date:~0,-4%.sql
rem 设置变量:日志文件名
SET LOG_FILE=MY_DBBAK.log
rem 记录日志
echo "%date%" 》 %LOG_FILE%
rem 开始做备份
mysqlmp --default-character-set=utf8 -hlocalhost -uroot -R --triggers --single-transaction -B mydb %BAK_FILE%
rem 压缩备份文件
rar a %BAK_FILE%.rar %BAK_FILE%
rem 删除源文件
del /F %BAK_FILE%
echo "%date%" 》 %LOG_FILE%
部署完脚本后,剩下的就是在系统中添加计划任务项目了。
❷ mysql自动备份
为了避免服务挂掉,数据库无法恢复,搞个脚本做数据库备份。核心的东西就是一个命令:mysqlmp
首先写一个自动备份的shell脚本:
升级版本1:压缩文件
如果gzip未安装需要安装gzip
升级版本2:防止锁表
升级版本3:备份多个库
升级版本4:删除过期数据
添加系统定时任务:
over!
❸ 【MySQL】Xtrabackup备份及恢复脚本
简介:
此备份脚本的策略是每周日和周三进去全备 其余每天增量备份。
❹ centos 6.5 mysql 自动备份数据库脚本怎么写
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
#数据库用户名
dbuser='root'
#数据库用密码
dbpasswd='********'
需要备份的数据库,多个数据库用空格分开
dbname='xiaohuai xiaohuai2'
#备份时间
backtime=`date +%Y%m%d%H%M%S`
#日志备份路径
logpath='/home/mysqlbak'
#数据备份路径
datapath='/home/mysqlbak'
#日志记录头部
echo ‘"备份时间为${backtime},备份数据库表 ${dbname} 开始" >> ${logpath}/log.log
#正式备份数据库
for table in $dbname; do
source=`mysqlmp -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;
❺ 基于 mysql 镜像的定时自动备份数据和清除过期备份
CentOS 7
mysql8镜像
备份方式:mysqlmp 命令
mysql_backup.sh 脚本,本例将其放置在 /home/test/db_bk 文件夹下
执行以上脚本后,会在挂在路径下生成 “/backup/日期” 的文件夹,文件夹内存着备份的 sql 文件,当需要恢复备份时,执行对应的 sql 文件即可。
linux 内置的 cron 进程可以用于开启定时任务
cron进程简介
进入 cron 编辑器:
编辑cron命令:
可以通过以下命令,查看定时任务情况:
执行以上脚本后,会在挂在路径下生成 “/backup/日期” 的文件夹,文件夹内存着备份的 sql 文件,当需要恢复备份时,执行对应的 sql 文件即可。
可以把备份的 sql 文件导出,然后用 navicat 之类的工具执行 sql 文件即可。
1.3.2.1
*注意: 需要设置字符集,否则会乱码,mysql -u [用户] -p --default-character-set=utf8mb4
1.3.2.2
❻ mysql 自动备份脚本怎么写呀网上的一些都用了不好使呀!
用windows的定时作务,写一个BAT文件执行备份处理。
定时执行这个BAT就可以了。
希望可以帮助你!
如果对我的回答满意,请点击我的回答下方选择满意回答按钮,谢谢
❼ mysql怎么操作备份
1、建立自动备份脚本
为了使数据库备份和恢复的符合我们的实际要求(备份保留七天,每天凌晨备份一次),用一段符合要求的Shell脚本来实现整个备份过程的自动化。
[root@mysqltest ~]# vim mysql-backup.sh
#!/bin/bash
##作者:Barlow##
##最后修订:2013-6-25##
#脚本作用:备份Mysql数据库
#
#设定备份保留天数K
K=7
#
TODAY=`date '+%Y%m%d'`
KDAY=`date -d "$TODAY - $K day" '+%Y%m%d'`
BACKDIR=/var/mysqlbak/$TODAY
KDAYDIR=/var/mysqlbak/$KDAY
mkdir -p $BACKDIR
#
# The Password of MySQL
ROOTPASS=******* ##将*替换为实际mysql数据库的root密码
#
# Get the Name of Database
DBLIST=`ls -p /var/lib/mysql | grep / | tr -d /`
#
# Backup with Database
for dbname in $DBLIST
do
mysqlhot $dbname -u root -p $ROOTPASS $BACKDIR | logger -t mysqlhot
done
#
#删除过期备份
if [ -d "$KDAYDIR" ];then
rm -rf $KDAYDIR
exit
fi
改变脚本权限,root具有完全权限,其他用户没有任何权限:
[root@mysqltest ~]# chmod 700 mysql-backup.sh
运行一次脚本:
[root@mysqltest ~]# ./mysql-backup.sh
查看运行结果:
[root@mysqltest ~]# ll /var/mysqlbak/20130625/
mysql/ wordpress/
[root@mysqltest ~]# ll /var/mysqlbak/20130625/
总用量 8
drwxr-x---. 2 mysql mysql 4096 6月 25 14:26 mysql
drwxr-x---. 2 mysql mysql 4096 6月 25 14:26 wordpress
可以看到备份已经成功完成。
2、创建自动任务每天运行
[root@mysqltest ~]# crontab -e
00 01 * * * /root/mysql-backup.sh
##每天凌晨1点运行一次
❽ 请问mysql怎么自动备份数据库
数据库的自动备份,可以减轻维护者的工作量也便于系统恢复,对于比较重要的数据库,最好还是设置下自动备份。
工具/原料
navicat for mysql
mysql 5.5
方法/步骤
打开navicat客户端,连上mysql后,双击左边你想要备份的数据库。点击“计划”,再点击“新建批处理作业”。
❾ mysql备份如何做
常规的mysql备份使用命令是 mysqlmp命令用法如下,
mysqlmp [选项] 数据库名 [表名] > 脚本名
或mysqlmp [选项] --数据库名 [选项 表名] > 脚本名
或mysqlmp [选项] --all-databases [选项] > 脚本名
例如:
备份所有数据库:
mysqlmp -uroot -p --all-databases > /backup/mysqlmp/all.db
备份指定数据库:
mysqlmp -uroot -p test > /backup/mysqlmp/test.db
备份指定数据库指定表(多个表以空格间隔)
mysqlmp -uroot -p mysql db event > /backup/mysqlmp/2table.db
备份指定数据库排除某些表
mysqlmp -uroot -p test --ignore-table=test.t1 --ignore-table=test.t2 > /backup/mysqlmp/test2.db
还原命令例如:
mysqladmin -uroot -p create db_name
mysql -uroot -p db_name < /backup/mysqlmp/db_name.db
注:在导入备份数据库前,db_name如果没有,是需要创建的; 而且与db_name.db中数据库名是一样的才可以导入。
❿ linux环境下,如何实现异地备份mysql,脚本怎么写,已经实现本地自动备份
只要在这个备份脚本下增加一个异地传输功能即可。假定异地服务器建立一个ftp服务器。
则在本地Mysql备份脚本中将现有的文件打包,或者放置一个独立目录,然后上传到Ftp服务器即可。其他部分补齐即可。
ftp-n<<!
open$Dest_Server
user$FtpUserName$FtpPassword
binary
promptoff
cd/backpath
lcd/tmp
put"*.tar.gz"
bye
!