## ADDED Requirements

### Requirement: MySQL 连接管理
系统应当提供 MySQL 连接管理能力，包括连接初始化、连接池管理和表结构初始化。

#### Scenario: MySQL 连接初始化成功
- **WHEN** 应用启动且 MySQL 配置有效
- **THEN** 系统成功建立 MySQL 连接并创建必要的表结构

#### Scenario: MySQL 连接初始化失败
- **WHEN** 应用启动但 MySQL 服务不可用
- **THEN** 系统输出错误日志并标记 MySQL 为不可用状态，但不阻止应用启动

### Requirement: 行情数据持久化存储
系统应当使用 MySQL 作为行情数据的主要持久化存储，替代 SQLite。

#### Scenario: 行情数据写入 MySQL
- **WHEN** 刷新接口接收到行情数据更新请求
- **THEN** 系统将数据写入 MySQL 的 `market_data` 表

#### Scenario: 行情数据从 MySQL 读取
- **WHEN** Redis 缓存未命中且 MySQL 可用
- **THEN** 系统从 MySQL 读取行情数据并返回

### Requirement: MySQL 表结构迁移
系统应当提供从 SQLite 到 MySQL 的数据迁移能力，保证历史数据不丢失。

#### Scenario: 首次启动数据迁移
- **WHEN** 应用首次启动且 MySQL 可用但表为空
- **THEN** 系统从 SQLite 读取历史数据并迁移到 MySQL

#### Scenario: 迁移完成
- **WHEN** 数据迁移完成
- **THEN** 系统输出迁移成功日志，后续读写直接操作 MySQL

### Requirement: MySQL 事务支持
系统应当使用 MySQL 事务保证数据写入的原子性和一致性。

#### Scenario: 批量写入事务
- **WHEN** 刷新接口需要写入多个品种的行情数据
- **THEN** 系统使用事务保证所有数据要么全部写入成功，要么全部回滚
