首页 > 数据库 > mysql教程 > linux备份Mysql数据库shell_MySQL

linux备份Mysql数据库shell_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-01 13:42:50
原创
951 人浏览过

bitsCN.com
欢迎拍砖,详细内容如下:  # MYSQL 数据文件路径 MYSQL_DATA_PATH="/usr/local/mysql/data/"  # 备份目录 MYSQL_DUMP_PATH="***/DB/"  # 备份用户名 MYSQL_ACCOUNT="mysql_backup"  # 备份密码 MYSQL_PASSWORD="mysql_backup"  MYSQLDUMP_OPTS="mysqldump -u$MYSQL_ACCOUNT -p$MYSQL_PASSWORD --single-transaction"  # 压缩命令  bzip2 -k 保留源文件 TAR_OPTS="bzip2 "  # 单个数据库进行备份 function BackDB(){         FULLPATH="$1"          #遍历目录         for dbName in $(/bin/ls $FULLPATH)         do                 # check is database                 fileType=`/usr/bin/file $FULLPATH$dbName | /bin/awk '{FS=":"} {printf $2}'`                  # 文件夹的类型为directory                 if [ "directory" == $fileType ]; then                         # start dump                         if [ "$dbName" == "mysql" ] /                                 || [ "$dbName" == "test" ] /                                 || [ "$dbName" == "information_schema" ] /                                 || [ "$dbName" == "performance_schema" ]; then                                 echo "------------->$dbName not need dump!!"                         else                                 echo $dbName                                   dumpName=$MYSQL_DUMP_PATH/"$dbName"_"$DATESTR"                                 $MYSQLDUMP_OPTS $dbName > "$dumpName".sql                                  # 压缩备份档                                 $TAR_OPTS "$BACKUP_NAME".sql                         fi                 else                         printf '%s is not database            ######## /n' $dbName                 fi         done }  # 每个数据表单独备份 function BackDBTB(){         FULLPATH="$1"          #遍历目录         for fName in $(/usr/bin/find $FULLPATH -name "*.ibd")         do                 dbPath=`echo "$fName" | /bin/awk 'BEGIN {FS="'$FULLPATH'"} {printf $2}'`                 # get database name                 dbName=`echo "$dbPath" | /bin/awk 'BEGIN {FS="/"} {printf $1}'`                 # get table name                 tbName=`echo "$dbPath" | /bin/awk 'BEGIN {FS="/"} {printf $2}'`                  # start dump                 if [ "$dbName" == "mysql" ]/                         || [ "$dbName" == "test" ] /                         || [ "$dbName" == "information_schema" ] /                         || [ "$dbName" == "performance_schema" ]; then                         echo "------------->$dbName not need dump!!"                 else                         echo $dbName $tbName                           dumpName=$MYSQL_DUMP_PATH/"$dbName"_"$tbName"_"$DATESTR"                         $MYSQLDUMP_OPTS $dbName $tbName > "$dumpName".sql                          # 压缩备份档                         $TAR_OPTS "$dumpName".sql                 fi         done }     作者 babaoqi bitsCN.com

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
数据库数据
来自于 1970-01-01 08:00:00
0
0
0
数据库
来自于 1970-01-01 08:00:00
0
0
0
数据库文件导入
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板