MySQL并发访问基础常识
并发访问,说白了就是同一时间好多连接一起读写 MySQL。比如小皮面板里网站一多,PHP 每个请求开一个连接,数据库就同时在应付很多人。
MySQL 默认每个连接占一个线程,连接太多会吃内存。先看当前连接:
show processlist; -- 看谁在连着、在干啥
show status like 'Threads_connected'; -- 当前连接数
show variables like 'max_connections'; -- 最大允许多少连接
InnoDB 是行锁,改一行只锁一行;MyISAM 是表锁,一写就锁整张表。高并发时常见锁等待、慢查询堆积。事务尽量短,别开着事务等接口。
set global max_connections = 500; -- 临时调大,重启失效
调大连接数别瞎搞,内存不够反而崩。写少读多可以上缓存,写多先看 SQL 和索引。
标签:MySQL并发,数据库连接,锁等待
说点什么 0