From bb671bfd89186709d753cdbf00b3a8974d4626a7 Mon Sep 17 00:00:00 2001 From: WrBug Date: Wed, 3 Dec 2025 05:16:44 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20MySQL=20=E8=BF=9E?= =?UTF-8?q?=E6=8E=A5=E9=85=8D=E7=BD=AE=E5=B9=B6=E5=90=88=E5=B9=B6=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E8=BF=81=E7=A7=BB=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修复 MySQL 连接配置 - 添加 allowPublicKeyRetrieval=true 参数(解决 Public Key Retrieval 错误) - 将 characterEncoding=utf8mb4 改为 utf8(兼容性修复) - 更新所有配置文件:docker-compose.yml, deploy.sh, docs/DEPLOYMENT.md - 合并数据库迁移文件 - 将 V1, V2, V3 迁移文件合并为一个 V1__init_database.sql - 删除 V2__create_proxy_config_table.sql - 删除 V3__rename_copy_trading_accounts_to_wallet_accounts.sql - 新的 V1 包含所有表结构(11 个表) --- backend/deploy.sh | 2 +- backend/docker-compose.yml | 2 +- .../db/migration/V1__init_database.sql | 20 +++++++++++ .../V2__create_proxy_config_table.sql | 20 ----------- ...py_trading_accounts_to_wallet_accounts.sql | 36 ------------------- deploy.sh | 2 +- docker-compose.yml | 2 +- docs/DEPLOYMENT.md | 6 ++-- 8 files changed, 27 insertions(+), 63 deletions(-) delete mode 100644 backend/src/main/resources/db/migration/V2__create_proxy_config_table.sql delete mode 100644 backend/src/main/resources/db/migration/V3__rename_copy_trading_accounts_to_wallet_accounts.sql diff --git a/backend/deploy.sh b/backend/deploy.sh index c93ec75..6c4a68e 100755 --- a/backend/deploy.sh +++ b/backend/deploy.sh @@ -131,7 +131,7 @@ deploy_docker() { warn ".env 文件不存在,创建示例文件..." cat > .env < wallet_accounts --- ============================================ - --- 检查表是否存在,如果存在则重命名 --- 注意:此迁移脚本假设表已经存在(从 V1 迁移创建) - --- 1. 查找外键约束名称并删除 -SET @fk_name = NULL; -SELECT CONSTRAINT_NAME INTO @fk_name -FROM information_schema.KEY_COLUMN_USAGE -WHERE TABLE_SCHEMA = DATABASE() - AND TABLE_NAME = 'copy_trading' - AND COLUMN_NAME = 'account_id' - AND REFERENCED_TABLE_NAME = 'copy_trading_accounts' -LIMIT 1; - --- 2. 如果找到外键,删除它 -SET @drop_fk_sql = IF(@fk_name IS NOT NULL, - CONCAT('ALTER TABLE copy_trading DROP FOREIGN KEY `', @fk_name, '`'), - 'SELECT 1'); -PREPARE stmt FROM @drop_fk_sql; -EXECUTE stmt; -DEALLOCATE PREPARE stmt; - --- 3. 重命名表 -RENAME TABLE copy_trading_accounts TO wallet_accounts; - --- 4. 重新添加外键约束 -ALTER TABLE copy_trading -ADD CONSTRAINT fk_copy_trading_account_id -FOREIGN KEY (account_id) REFERENCES wallet_accounts(id) ON DELETE CASCADE; - --- 5. 更新表注释 -ALTER TABLE wallet_accounts COMMENT = '钱包账户表'; - diff --git a/deploy.sh b/deploy.sh index f88be7e..71e1b37 100755 --- a/deploy.sh +++ b/deploy.sh @@ -45,7 +45,7 @@ create_env_file() { warn ".env 文件不存在,创建示例文件..." cat > .env < .env < .env <