MySQL 基本使用

1 基本定义

MySQL: 广泛使用的关系型数据库管理系统(RDBMS)

优点:

  • 普及和易用性强,相关教程和管理工具丰富,生态完善
  • 读写性能出色,安全有保障(多用户多权限管理机制)
  • 分布式支持出色,方便横向/纵向扩展和主从架构

缺点:

  • 不符合完整的 SQL 标准,开发更新缓慢
  • 并发读写效率低,多用户支持不友好

2 常用技巧

数据分库和分表

2.1 慢日志配置查询

SQL 查询中查询时间超过了 10s (默认)的值时会生成慢查询日志

long_query_time 默认是 10s,最小是 1s(推荐值为 2~5s)

查看慢查询的相关配置:

show variables like 'slow_query%';

开启慢查询(默认关闭):

  1. 启动 MySQL 时配置参数项 --slow_query_log=[{0|1}]
  2. MySQL 启动后设置参数项 set global slow_query_log=[1|0|ON|OFF]
  3. 在配置文件 my.ini 中配置:slow_query_log=1

SQL Server 可以通过扩展事件实现类似的慢查询日志的逻辑

2.2 库表名称兼容大小写的情况

首先使用以下语句查看数据库的配置项:

SHOW VARIABLES LIKE 'lower_case_table_names';
# `0`:表名区分大小写(通常在 Unix/Linux 系统上)。
# `1`:表名不区分大小写(通常在 Windows 系统上)。
# `2`:表名存储为小写,但比较时不区分大小写(通常在 macOS 系统上)

如果 lower_case_table_names 值为 0,则根据需求修改为 1 或者 2 即可

往年同期文章