Links#
https://dev.mysql.com/doc/refman/8.4/en/
https://dev.mysql.com/doc/refman/8.4/en/creating-database.html
https://dev.mysql.com/doc/refman/8.4/en/getting-information.html
https://dev.mysql.com/doc/refman/8.4/en/show.html
https://dev.mysql.com/doc/refman/8.4/en/information-schema.html
https://dev.mysql.com/doc/refman/8.4/en/optimization-indexes.html
https://dev.mysql.com/doc/refman/8.4/en/using-encrypted-connections.html
https://dev.mysql.com/doc/refman/8.4/en/metadata-locking.html1. Important Points#
MySQL 是最常见的 relational database 之一。它适合 OLTP、业务系统、后台管理面板、报表查询和通用中小规模数据模型。
MySQL 用来做:
order / user / inventory / payment
业务系统主库
读写分离架构中的 primary / replica
管理后台和运营查询
需要明确 SQL 和事务边界的应用
MySQL 不适合:
无边界分析扫描而且没有专门数仓设计
依赖单表无限扩展而没有分区 / 归档 / 索引计划
把应用逻辑全塞进存储过程而没有治理核心原则:
schema 在 MySQL 里通常就是 database
先用 SQL 查清楚对象、权限、索引、大小、锁,再做变更
大表 DDL 要先确认在线算法和锁级别
容量问题先看 schema / table size,再看单表热点和索引膨胀
生产环境优先用最小权限账号,区分 DBA / migrator / app / readonly2. Common Topics#
| Topic | Notes |
|---|---|
| Database | MySQL 里 schema 和 database 常常是同义词 |
| Access Control | CREATE USER, CREATE ROLE, GRANT, REVOKE, SHOW GRANTS |
| Metadata | SHOW TABLES, SHOW CREATE TABLE, INFORMATION_SCHEMA |
| Space | DATA_LENGTH, INDEX_LENGTH, DATA_FREE, SHOW TABLE STATUS |
| Performance | EXPLAIN, EXPLAIN ANALYZE, ANALYZE TABLE |
| Locks | SHOW PROCESSLIST, performance_schema.metadata_locks, SHOW ENGINE INNODB STATUS |
| TLS | require_secure_transport, client --ssl-mode=VERIFY_IDENTITY |
3. Where The Details Live#
SQL commands and DBA runbook:
SQL.md
Linux VM / systemd install:
Setup.md
TLS / encrypted connection:
TLS.md