04 金融系统数据库设计

全栈学习体系大约 1 分钟

04 金融系统数据库设计

目标

设计金融系统的核心数据库,满足以下要求:

  • 支持高并发查询
  • 完整的审计日志
  • 资金安全和数据一致性
  • 易于扩展(分库分表预留)

核心表设计

用户表(user)

CREATE TABLE user (
  id BIGINT PRIMARY KEY AUTO_INCREMENT,
  username VARCHAR(50) UNIQUE NOT NULL,
  email VARCHAR(100) UNIQUE NOT NULL,
  phone VARCHAR(20),
  status TINYINT,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

账户表(account)

资金账户核心表,支持多币种...

订单表(order)

订单生命周期管理...

支付记录表(payment)

第三方支付对接...

设计原则

版本管理

使用 Flyway 管理数据库迁移:

db/migration/
├── V1.0__init_user_tables.sql
├── V1.1__add_account_tables.sql
└── V1.2__add_payment_tables.sql

下一课

05 项目分层架构

本文阅读量