mysqldump同时备份多个数据库

在使用MySQL数据库时,经常需要备份数据库以防止数据丢失。mysqldump是一个常用的命令行工具,可以用来备份MySQL数据库。但是,如果需要备份多个数据库,每个数据库都使用一个mysqldump命令是非常麻烦的。在本文中,我们将介绍如何使用mysqldump同时备份多个数据库,并提供相应的代码示例。

备份多个数据库

mysqldump命令可以用来备份单个数据库,语法如下:

mysqldump -u 用户名 -p 密码 数据库名 > 备份文件名.sql

要备份多个数据库,可以使用下面的命令:

mysqldump -u 用户名 -p 密码 --databases 数据库1 数据库2 ... > 备份文件名.sql

其中,数据库1、数据库2等为要备份的数据库名,中间用空格分隔。

代码示例

下面是一个示例,演示了如何使用mysqldump同时备份多个数据库。

```bash
#!/bin/bash

# 数据库配置
DB_USER="root"
DB_PASSWORD="password"
DB_LIST="db1 db2 db3"

# 备份目录
BACKUP_DIR="/path/to/backup"

# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR

# 循环备份每个数据库
for DB_NAME in $DB_LIST
do
    # 备份文件名
    FILENAME="${BACKUP_DIR}/${DB_NAME}_$(date +%Y%m%d_%H%M%S).sql"
    
    # 备份数据库
    mysqldump -u $DB_USER -p$DB_PASSWORD --databases $DB_NAME > $FILENAME
    
    # 检查备份是否成功
    if [ $? -eq 0 ]; then
        echo "备份 $DB_NAME 成功:$FILENAME"
    else
        echo "备份 $DB_NAME 失败"
    fi
done

将上述代码保存为一个脚本文件(例如:backup.sh),然后通过命令行运行该脚本即可同时备份多个数据库。

总结

使用mysqldump命令备份多个数据库非常方便,只需在命令中指定要备份的数据库名即可。本文提供了一个代码示例,展示了如何使用mysqldump同时备份多个数据库。希望本文对你备份MySQL数据库有所帮助。