一个手动备份MySQL数据库的脚本

#!/bin/bash
username=root
hostname=localhost
password=root
mysql -u$username -h$hostname -p$password -e "show databases"
read -p "PLZ input a dbname:" dbname
read -p "PLZ input backupdir:" backupdir
read -p "PLZ input backupname:" backupname
  if [[ "$dbname" == "quit" || "$backupdir" == "quit" || "$backupname" == "quit" ]];then
       exit 4
  else
   echo "----------backup start----------"
    ! [ -d $backupdir ] && mkdir -p $backupdir
    if [[ "$dbname" == "all" ]];then
       /usr/local/mysql/bin/mysqldump -u$username -h$hostname -p$password --all-databases --lock-all-tables --flush-logs --master-data=2 >> $backupdir/$backupname
    else
      /usr/local/mysql/bin/mysqldump -u$username -h$hostname -p$password --databases $dbname --lock-all-tables --flush-logs --master-data=2 >> $backupdir/$backupname
    fi
    if [ $? -eq 0 ];then
        echo "---------backup OK-------"
        echo "---------backup stop-------"
     else
        echo "-------back lose--------"
        exit
     fi
  fi

  使用脚本时需要先修改脚本内数据库信息,赋予执行权限。

时间: 2024-10-06 11:11:27

一个手动备份MySQL数据库的脚本的相关文章

一个自动备份mysql数据库的bat文件内容

自动备份mysql数据库,并已当前的日期时间为目录 copy过去, xcopy将近15年没有用dos命令,还是这么亲切 另 本方法是备份数据库文件,不是dump导出,然后再计划任务中使用,我用的是wamp,其他的环境类似的改改即可 ====dbback.bat============ NET STOP wampapacheNET STOP wampmysqldset /a t1=(1%time:~0,2%-100)*1if %t1% LSS 10 set t1=0%t1%set ymd_hms=

一个简单的MySQL数据库同步脚本

Talk is cheap,show you code. 1 mysqldump -h[remoteHost] -u[username] -p[password] -P[port] --databases [databasename1] [databasename2] > [D:\mysqlsync\temp.sql] 2 echo "备份完成"; 3 mysql -u[root] -p[123456] -h[localhost] < [D:\mysqlsync\temp.

Linux Shell脚本之利用mysqldump备份MySQL数据库(详细注解)

设计该脚本的一些设计.编写考虑: 该脚本适用于编译安装mysql和通过yum或apt-get等安装方式 该脚本可以反复执行,不会重复覆盖数据 可增加,删除N天前的备份以节省磁盘空间 充分利用mysqldump的自带锁表功能.刷新日志.复制等功能 利用mysqldump命令备份MySQL数据库的脚本(不带注释版,适合生产环境使用) #!/bin/bash MYSQLDBUSERNAME=root MYSQLDBPASSWORD=password MYSQBASEDIR=/usr/local/mys

定时备份mysql数据库的shell脚本

最近项目需要定时备份mysql数据库的数据,根据需求写了一份定时备份mysql数据库的脚本. -h mysql的地址  默认为localhost -P 端口号  默认为3306 -u 用户  默认为root -p 密码 默认为123456 -f  备份存放地址  默认为 /bak 下面 -n 指定数据库  默认为所有数据库(除开mysql系统自带数据库) #!/bin/bash now=`date "+%Y-%m-%d_%H:%M:%S" ` echo "==========

自动备份mysql数据库并发送到Email方法

一个博客,一个网站最重要的就是数据库,所以经常备份数据是必须的.尽管 WordPress 有定时备份数据的插件,但只能备份当前的博客,不够灵活.适合个人小小博客,对于一些网站来说,就不适合了.现在很多人都拥有多个网站,showfom 同学就有几个网站.每个网站都装个插件就比较麻烦了.况且不是每个网站都是 WordPress 的 . 所以写了个自动备份mysql数据库的脚本,再加上gmail这个G级邮箱,备份多少数据都可以了...下面是代码: mysqldump -uuser -ppassword

CentOS下每天自动备份mysql数据库

每天自动备份mysql数据库的脚本,并且自动发送到你指定的邮箱面,这样vpser再也不会为丢失数据烦恼啦. mysqldump -uuser -ppassword –databases db1 db2 db3 > /home/website/backups/databackup.sql tar zcf /home/website/backups/databackup.sql.tar.gz /home/website/backups/ echo "主题:数据库备份" |mutt  

[转]一个备份MySQL数据库的简单Shell脚本

本文翻译自 iSystemAdmin 的 <A Simple Shell Script to Backup MySQL Database> Shell脚本是我们写不同类型命令的一种脚本,这些命令在这一个文件中就可以执行.我们也可以逐一敲入命令手动执行.如果我们要使用shell脚本就必须在一开始把这些命令写到一个文本文件中,以后就可以随意反复运行这些命令了. 我首先要在本文带给你的是完整脚本.后面会对该脚本做说明.我假定你已经知道shell scripting. mysqldump和cronta

Linux下定时备份MySQL数据库的Shell脚本

Linux下定时备份MySQL数据库的Shell脚本 对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间和精力,还灰常不专业的说.于是,有了下面这段脚本的出现.参考了网上的很多教程,外加自己的测试,以下脚本经测试可用.#!/bin/bash#Shell Command For Backup MySQL Database Everyday Automatically By Crontab#Author :

Shell脚本-----自动备份Mysql数据库

脚本的整体思路 1.定义需要的变量 2.利用for循环备份需要备份的库,并以库名-当天日期.sql命名,并记录相关日志 3.建立备份当天的日期的目录,向备份的Sql文件移动到该目录 4.压缩打包该目录,以节省空间,打包成功后删除该目录 5.备份目录只备份七天的数据库,第八天删除第一天的备份,目录只会存在连续七天的备份文件 6.查找备份目录下的.log日志文件,超过七天的删除 #!/bin/bash mysql_bin=/usr/local/tdoa/mysql/bin/mysqldump use