暂时提高数据库性能的方法

短链接风暴

短链接属于执行很少的语句断开链接,需要的时候再重新建立。

数据库的链接成本高,高在以下三点。

正常的网络连接三次握手

登录的权限验证

获得这个连接的数据读写权限

连接次数

有最大的链接数限制,max_connections参数。超过这个值其他链接就拒绝。

解决短链接

方法1断链接

1 查看现存的链接是否还是执行状态,不是执行状态的链接进行断开

2 在执行断开链接时,需要查看该线程是否处于事务空闲的。命令可以使用 show processlist命令,事务查看事务表信息。

方法2减少链接的损耗

业务代码申请大量的数据库链接做备用。

或者数据库跳过权限验证阶段。不建议

方式2风险高,在于出现安全问题,外网可以访问的情况下风险极高


慢查询

慢查询容易出现的问题

1 索引没有设计好

2sql语句没有写好

3 mysql选错了索引

索引没有设计好

重新设计索引。但是数据库可能有多个状态,主从库。

重写索引,先在从库上关闭binlog,增加索引,主备切换,关闭原先主库的binlog,增加索引。

新的方式是采用gh-ost方式。

语句没写好

改写sql执行语句。

选错索引

可以使用force index来解决这个问题。

QPS突增问题

1根据白名单去掉这个业务代码

2权限删除用户

3查询重写限制语句

你可能感兴趣的:(暂时提高数据库性能的方法)