#!/usr/bin/env bash # 将本地/源库 bd_fangke_ali251 的结构与数据导入目标库 yxbd_fangke_ali2。 # 用法(在能访问目标 MySQL 的机器上执行): # export MYSQL_TARGET_HOST=127.0.0.1 # 或 RDS 内网地址 # export MYSQL_TARGET_PORT=3306 # export MYSQL_TARGET_USER=yxbd_fangke_ali2 # export MYSQL_TARGET_PASSWORD='jsy6WQHMR67kY7dN' # export MYSQL_TARGET_DB=yxbd_fangke_ali2 # # 源库(默认本机 root,与开发 .env 一致) # export MYSQL_SOURCE_HOST=127.0.0.1 # export MYSQL_SOURCE_USER=root # export MYSQL_SOURCE_PASSWORD=root123456 # export MYSQL_SOURCE_DB=bd_fangke_ali251 # bash scripts/migrate-db-to-yxbd-fangke-ali2.sh set -euo pipefail ROOT="$(cd "$(dirname "$0")/.." && pwd)" cd "$ROOT" MYSQL_SOURCE_HOST="${MYSQL_SOURCE_HOST:-127.0.0.1}" MYSQL_SOURCE_PORT="${MYSQL_SOURCE_PORT:-3306}" MYSQL_TARGET_PORT="${MYSQL_TARGET_PORT:-3306}" MYSQL_SOURCE_USER="${MYSQL_SOURCE_USER:-root}" MYSQL_SOURCE_PASSWORD="${MYSQL_SOURCE_PASSWORD:-root123456}" MYSQL_SOURCE_DB="${MYSQL_SOURCE_DB:-bd_fangke_ali251}" MYSQL_TARGET_HOST="${MYSQL_TARGET_HOST:-127.0.0.1}" MYSQL_TARGET_USER="${MYSQL_TARGET_USER:-yxbd_fangke_ali2}" MYSQL_TARGET_PASSWORD="${MYSQL_TARGET_PASSWORD:-jsy6WQHMR67kY7dN}" MYSQL_TARGET_DB="${MYSQL_TARGET_DB:-yxbd_fangke_ali2}" echo "Dumping ${MYSQL_SOURCE_DB} from ${MYSQL_SOURCE_HOST} ..." mysqldump -h"$MYSQL_SOURCE_HOST" -P"$MYSQL_SOURCE_PORT" -u"$MYSQL_SOURCE_USER" -p"$MYSQL_SOURCE_PASSWORD" \ --single-transaction --routines --triggers --default-character-set=utf8mb4 \ "$MYSQL_SOURCE_DB" | \ mysql -h"$MYSQL_TARGET_HOST" -P"$MYSQL_TARGET_PORT" -u"$MYSQL_TARGET_USER" -p"$MYSQL_TARGET_PASSWORD" "$MYSQL_TARGET_DB" echo "Import finished into ${MYSQL_TARGET_DB}@${MYSQL_TARGET_HOST}."