在网站平台lnmp中,多用的是mysql数据库,为了提高效率,就必须要对mysq服务器进行常规优化。
个人用到的mysql数据库优化有五个方向:
方向1:mysql数据库硬件优化
对于硬件优化,常规的配置有cpu、内存、磁盘空间等。
如何对cpu、内存进行配置,首先要知道cpu和内存的使用情况
lscpu可以查看cpu核数,可以根据cpu核数修改进程数量,uptime可以查看cpu每1分钟,5分钟,15分钟使用情况
top命令可以按M根据内存排行,按P根据cpu排行,可以把内存或者cpu使用比较高的进程根据情况杀死或者对应服务转移
对于硬盘使用情况,可以使用命令df -h 查看,如果使用空间比较高,可以适当做调整
方向2:网卡流量监控
查看网卡流量情况,如果网卡流量比较大,可以考虑添加服务器,将流量切换给其他服务器
ifconfig eth0 可以查看对应的入口和出口流量情况
方向3:修改mysql运行参数
show variables ; show global status;可以查看运行状态和系统变量参数
修改并发连接数量
超时时间
重复使用的线程数量
多个线程同时打开表的数量
方向4:优化程序员编写的sql命令
查询日志
general-log : 所有sql命令的操作
慢查询日志
记录耗时较长或不使用索引的查询操作
slow-query-log
long-query-time= 默认十秒
log-queries-not-using-indexes 没有使用索引的查询
mysqldumpslow /var/lib/mysql/50-slow.log >/root/sql.txt 查看慢查询日志的sql命令
错误日志
log-error=/var/log/mysqld.log
binlog日志文件
方向5:优化网络架构: 结构中不要有数据传输瓶颈,不要有单点故障
MHA集群:高可用集群,一主多从,保证所有mysql服务正常运行、网络没有堵塞
以上为mysql的简单优化思路,具体参数还要参考mysql开发手册
本文分享了MySQL数据库优化的五大方向,包括硬件优化、网卡流量监控、运行参数修改、SQL命令优化及网络架构优化,旨在提升数据库性能。
856

被折叠的 条评论
为什么被折叠?



