#!/bin/bash
DB_USER="mysql账号"
DB_PASS="mysql密码"
DB_NAMES=("数据名1" "数据库名2")
BIN_DIR="/usr/local/mysql/bin"
BCK_DIR="/root/mysql_backup"
DATE=`date +%Y_%m_%d`
length=${#DB_NAMES[@]}
for ((i=0; i<$length; i++))
do
${BIN_DIR}/mysqldump -u${DB_USER} -p${DB_PASS} ${DB_NAMES[$i]} > ${BCK_DIR}/${DB_NAMES[$i]}_${DATE}.sql
done
保存成 【文件名.sh】使用
DB_NAMES 是数据库名数组,无需使用逗号隔开
BIN_DIR 是mysqldump的所处目录
BCK_DIR 是备份文件的输出目录
后面的for是循环数据库名数组,备份数据库(表结构和表数据)到 sql 文件
使用phpmyadmin或navicat,可以把sql文件导入到数据库,即恢复数据
结果,21号才开始备份两个库
本文介绍了一个用于MySQL数据库备份的bash脚本。该脚本通过循环遍历指定的数据库列表,并利用mysqldump工具将其备份为.sql文件。备份文件被保存在预设的目录中,便于后续的数据恢复。
705

被折叠的 条评论
为什么被折叠?



