mysql backup 脚本

网上备份脚本很多,但考虑都不周全。这里增加了

Java代码  

  1. umask 0077  

保证创建备份文件只能是创建者跟root可以访问,其他用户没有权限,保证了数据库备份的安全。

Java代码  

  1. find $BACKUP_DIR -type f -mtime +$COPIES -delete  

上面脚本是负责备份的份数管理,

 

Java代码  

  1. #!/bin/bash  
  2. ###################################  
  3. # $Id: backup 380 2012-04-02 10:38:59Z netkiller $  
  4. # Author: netkiller@msn.com  
  5. # Home: http://netkiller.github.com  
  6. ###################################  
  7. BACKUP_HOST="localhost"  
  8. BACKUP_USER="root"  
  9. BACKUP_PASS=""  
  10. BACKUP_DIR=/opt/backup  
  11. BACKUP_DBNAME="test neo"  
  12. #Number of copies  
  13. COPIES=7  
  14. ####################################  
  15. MYSQLDUMP="mysqldump"  
  16. #TIMEPOINT=$(date -u +%Y-%m-%d)  
  17. TIMEPOINT=$(date -u +%Y-%m-%d.%H:%M:%S)  
  18. MYSQLDUMP_OPTS="-h $BACKUP_HOST -u$BACKUP_USER -p$BACKUP_PASS"  
  19. ####################################  
  20. umask 0077  
  21. test ! -d "$BACKUP_DIR" && mkdir -p "$BACKUP_DIR"  
  22. test ! -w $BACKUP_DIR && echo "Error: $BACKUP_DIR is un-writeable." && exit 0  
  23.   
  24. for dbname in $BACKUP_DBNAME  
  25. do  
  26.     test ! -d "$BACKUP_DIR/$dbname" && mkdir -p "$BACKUP_DIR/$dbname"  
  27.   
  28.     $MYSQLDUMP $MYSQLDUMP_OPTS $dbname | gzip > $BACKUP_DIR/$dbname/$dbname.$TIMEPOINT.sql.gz  
  29. done  
  30. find $BACKUP_DIR -type f -mtime +$COPIES -delete  

 

时间: 2025-01-20 19:25:30

mysql backup 脚本的相关文章

mysql备份脚本

mysql|备份|脚本 操作系统:windows2000 professional 数据库:mysql server4.0.18 首先创建一个批处理文件,在这里名为dbBackup.bat 然后在文件中添加如下内容: rem 判断mysql服务是否启动,然后将查询结果输出到server.log文件里netstat -na | (find "0.0.0.0:3306" & find "LISTENING")>server.logrem 手工建立一个空的文

思维导图学 Linux Shell攻略之干货篇 mysql数据库脚本管理系统

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dba10g.blog.51cto.com/764602/1610653 以结果为导向的学习,才是最有效率学习.笔者以前也曾经隔三差五的学习linux shell编程来着.给我的感觉就是,今天学了,后天忘了,一星期之后就白学了. 还好,最近自己平时没啥事,一直照着<linux shell攻略>,学做一些小例子,看着自己写的shell程序,简单的几行程序,实现一些好玩的效果,信心

关于mysql shell脚本的问题

问题描述 关于mysql shell脚本的问题 第四行我想打印出结果,正确写法是什么,求大神帮忙!!! 解决方案 #!/bin/sh value=`mysql -uroot -proot -e "use powersystemview; select count(*) from alarminfo;"` echo $value exit 0 解决方案二: shell脚本内与mysql交互shell脚本中使用MySQLMysql压力测试shell脚本

nginx日志分割与mysql备份脚本

我们先来看mysql备份脚本  代码如下 复制代码 mysql_back.sh #!/bin/sh #mysql数据库备份成sql文件并压缩 #并删除7天前创建的备份. backupdir=/opt/cpfxs/mysqlbak mysqlpath=/usr/local/mysql/bin/ time=` date +%Y%m%d ` $mysqlpath/mysqldump -h127.0.0.1 -uroot -pluobo mydb | gzip > $backupdir/mydb$tim

基于Innobackupex的MySQL备份脚本

    Innobackupex是Xtrabackup的一部分,其实质也是调用xtrabackup.主要的不同是Xtrabackup除了支持innodb引擎外还支持xtradb引擎.本文主要封装了Innobackupex到shell脚本进行定期备份,供大家参考.   1.脚本描述a.支持增量备份以及全备b.需要传递到备份脚本(如备份路径,连接相关参数等)c.基于周日,周三的全量备份,其他增量备份d.可根据需要调整脚本,比如压缩备份的文件夹以及rsync等   2.脚本内容 ###########

Linux自动备份MySQL数据库脚本代码_Mysql

在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩.需要注意的是,这段脚本仅适用数据一致性要求不高的环境. 复制代码 代码如下: #!/bin/bash mysql_pwd="password"mysql_dump="/usr/local/mysql/bin/mysqldump"cur_year=$(date +"%Y") cur_month=$(date +"%m") cur_day=$(date +&q

centos自动备份网站文件与mysql数据库脚本

案例一:shell+cron实现MySQL自动备份且自动删除N天前备份  代码如下 复制代码 #!/bin/sh DUMP=/usr/local/mysql/bin/mysqldump OUT_DIR=/home/ldl/xxx/backup/ LINUX_USER=ldl DB_NAME=ldl DB_USER=ldl DB_PASS=xxx #How much days backup most DAYS=1 #Core of script cd $OUT_DIR DATE=`date +%Y

Linux自动备份MySQL数据库脚本代码

下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行.在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩.需要注意的是,这段脚本仅适用数据一致性要求不高的环境.  代码如下 复制代码 #!/bin/bash mysql_pwd="password" mysql_dump="/usr/local/mysql/bin/mysqldump" cur_year=$(date +"%Y&

mysql 检测 脚本-mysql 表检及自动修复测脚本

问题描述 mysql 表检及自动修复测脚本 我想写一个bat脚本,来检测哪些表损坏了,并能根据检测到的结果对损坏的表进行自动关机修复.用mysqlcheck不行,我的存储引擎是innoDB