aidress/init-scripts/01-init-db.sql
2025-03-21 22:49:03 +08:00

46 lines
1.6 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 设置字符集和排序规则
SET NAMES utf8mb4;
SET GLOBAL time_zone = '+8:00';
-- 创建数据库(如果不存在)
CREATE DATABASE IF NOT EXISTS ai_dressing CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 确保使用正确的数据库
USE ai_dressing;
-- 创建用户(如果不存在)
-- 注意在Docker环境中这些通常由MYSQL_USER和MYSQL_PASSWORD环境变量处理
-- 此处作为备用,确保权限正确设置
CREATE USER IF NOT EXISTS 'ai_user'@'%' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON ai_dressing.* TO 'ai_user'@'%';
FLUSH PRIVILEGES;
-- 设置必要的MySQL配置
SET GLOBAL max_connections = 500;
SET GLOBAL connect_timeout = 60;
SET GLOBAL wait_timeout = 600;
SET GLOBAL interactive_timeout = 600;
SET GLOBAL max_allowed_packet = 16777216; -- 16MB
-- 创建一个测试表,验证初始化是否成功
CREATE TABLE IF NOT EXISTS `system_info` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`key` varchar(50) NOT NULL,
`value` text NOT NULL,
`description` varchar(255) DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `key` (`key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 插入初始数据
INSERT INTO `system_info` (`key`, `value`, `description`)
VALUES
('system_name', 'AI Dressing System', '系统名称'),
('version', '1.0.0', '系统版本'),
('init_date', CURRENT_TIMESTAMP, '系统初始化日期')
ON DUPLICATE KEY UPDATE
`value` = VALUES(`value`),
`description` = VALUES(`description`),
`updated_at` = CURRENT_TIMESTAMP;