加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql 调优方案_MySQL数据库多种优化方案

发布时间:2022-10-20 14:31:49 所属栏目:MySql教程 来源:转载
导读: MySQL数据库多种优化方案
1、硬件优化(物理机)
a、CPU 8~16颗CPU ,2~4颗
b、mem 96G~128G,3~4个实例。 32~64G内存,2个实例
c、disk 数量越多越好,性能上:SSD (高并发)> SAS(普通) > s

MySQL数据库多种优化方案

1、硬件优化(物理机)

a、CPU 8~16颗CPU ,2~4颗

b、mem 96G~128G,3~4个实例。 32~64G内存,2个实例

c、disk 数量越多越好,性能上:SSD (高并发)> SAS(普通) > sata (线下)

4块盘为例:RAID0 > RAID10 > RAID5> RAID1

d、网卡,多块网卡bond,buffer等等。内核调优可以处理

2、软件优化

操作系统:x64,

软件:mysql ,编译安装,编译优化。

3、my.cf参数优化(优化的幅度比较小,大部分是架构及SQL语句优化)

参考:

思想:

监控:生产参数是一般情况下的参数

mysql优化视频教程_mysql分页优化_mysql优化教程

命令监控:show global status\G 然后可以看到每个参数用了多少,每个缓存用了多大。通过监控慢慢调整。

调优工具:mysqlreport,还有其他的工具

3、SQL语句的优化

a、索引的优化

1、抓出慢SQL。让DBA尽量早的参与的开发里面和开发共同讨论。白名单机制

long_query_time= #

log-slow-queries= /vra/lib/mysql/slow-log

2、慢查询日志分析工具 -- mysqlsla ,

pt-query-digest.,mysqldumpslows,

3、每天晚上0:00定时分析慢查询,发到核心开发,DBA分析,及高级运维,CTO邮箱。

DBA分析给出优化建议--> 核心开发确认更改--->DBA上线操作。

b、大的复杂的SQL语句的拆分为多个小的SQL语句

子查询,JOIN连表查询。一张表数据太大,怎么拆分都有问题。需要拆表,拆库

c、数据库是存储数据的地方,但是不是计算数据的地方。

计算,应用类处理,都要拿到前端应用解决,禁止在数据库上处理。

d、搜索功能,like "%51cto%" ,一般不要使用MySQL数据库。

4、架构上的优化

a)业务拆分: 搜索功能,like"%51cto%" ,一般不要使用MySQL数据库。

b)业务拆分:某些业务应用使用nosql持久化分出,例如:memcachedb.redis,ttserver.

例如:粉丝关注,好友关系等等。

c)数据库前端必须要加cache,例如:memcached,用户登录mysql优化教程,商品查询等等。

d)动态的数据静态化,整个文件静态化,页面片段静态化

e)数据库集群与读写分离,一主多从,通过程序或者dbproxy进行集群读写分离。

f)单表查过2000万了,拆库拆表,不同的请求分到不同的机器上面,前面hash取模。

5、流程,制度,安全优化。

任何一次认为数据库记录的更新都要走一个流程:

人的流程:开发 --> 核心开发确认 --> 运维或DBA

测试的流程:开发人员内网测试 --> IDC测试 --> 线上执行。

客户端的管理,客户端PHPmyadmin。客户端访问控制。防患于未然

(编辑:财气旺网 - 财气网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!