如何完成Docker中MySQL数据的导入、导出

导入步骤
1、创建一个导入的脚本

#!/bin/bash

# 配置部分(根据实际情况修改)
MYSQL_CONTAINER="mysql" # 容器名称
DB_NAME="web-chart" # 数据库名称
MYSQL_USER="root" # 用户名
MYSQL_PASSWORD="neIIqlwGsjsfsA6uxNqD" # 密码
SQL_FILE="/opt/apps/input.sql" # 宿主机上的SQL文件路径

# 检查SQL文件是否存在
if [ ! -f "$SQL_FILE" ]; then
echo "❌ SQL 文件不存在: $SQL_FILE"
exit 1
fi

# 1. 创建数据库(加反引号处理 - 号)
echo "👉 正在创建数据库:$DB_NAME"
docker exec -i $MYSQL_CONTAINER \
mysql -u$MYSQL_USER -p$MYSQL_PASSWORD \
-e "CREATE DATABASE IF NOT EXISTS \`$DB_NAME\` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"

# 2. 导入SQL文件
echo "📥 正在导入SQL文件到数据库:$DB_NAME"
docker exec -i $MYSQL_CONTAINER \
mysql -u$MYSQL_USER -p$MYSQL_PASSWORD $DB_NAME < $SQL_FILE

echo "✅ 导入完成"

2.脚本授权,执行脚本
chmod +x input.sh
./input.sh


导出步骤
docker exec -it mysql mysqldump -uroot -pneIIqlwGsjsfsA6uxNqD kjzsq > /root/dbbak/t_use_bak.sql

 



posted @ 2023-01-09 10:05  方大帝的博客  阅读(2200)  评论(0)    收藏  举报