-- 本地环境建库。一个 domain 一个 database(MySQL 里 schema ≡ database), -- 清单必须和 DomainFlywayConfig.DOMAIN_SCHEMAS 保持一致;新增 domain 时两处一起改。 -- 表结构不在这里建 —— 那是 Flyway 的事,本地和 dev/uat/prod 跑的是同一套迁移脚本。 CREATE DATABASE IF NOT EXISTS `platform` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; CREATE DATABASE IF NOT EXISTS `identity_store` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; CREATE DATABASE IF NOT EXISTS `workbench` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; CREATE DATABASE IF NOT EXISTS `webview_ticket` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; -- 本地图省事:一个账号同时干迁移和运行时的活。 -- UAT/Prod 上这是两个账号——迁移账号有 DDL 权限,运行时账号只有 DML, -- 否则一次 SQL 注入的破坏半径里就包含 drop table(见 09-build-deploy.md)。 GRANT ALL PRIVILEGES ON `platform`.* TO 'conti'@'%'; GRANT ALL PRIVILEGES ON `identity_store`.* TO 'conti'@'%'; GRANT ALL PRIVILEGES ON `workbench`.* TO 'conti'@'%'; GRANT ALL PRIVILEGES ON `webview_ticket`.* TO 'conti'@'%'; FLUSH PRIVILEGES;