MySQL系统配置优化

操作系统配置优化

数据库基于操作系统的,目前大多数MySQL都是安装在Linux系统之上,所以对于操作系统的一些参数配置也会影响到MySQL的性能,下面就列出一些常见的系统配置。

1.网络方面的配置,要修改/et/sysctl.conf文件

#增加tcp支持的队列数
net.ipv4.tcp_max_syn_backlog = 65535
#减少断开连接时,资源回收
net.ipv4.tcp_max_tw_buckets = 8000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10

2.打开文件数的限制,可以使用ulimit -a查看目录的限制,可以修改/etc/security/limits.conf文件,增加以下内容以修改打开文件数量的限制

* soft nofile 65535
* hard nofile 65535

除此之外,最好在MySQL服务器上关闭iptables、selinux等防火墙软件。

MySQL配置文件优化

mysql可以通过启动时指定配置参数和使用配置文件2中方法进行配置,在大多数情况下配置文件位于/etc/my.cnf或是/etc/mysql/my.cnf
mysql查找配置文件的顺序可通过以下方法获得

$/usr/sbin/mysqld --verbose --help |grep -A 1 'Default options'

注意:如果存在多个配置文件,则后面的会覆盖前面的。
%

MySQL配置文件-常用参数说明
innodb_buffer_pool_size
#非常重要的一个参数,用于配置Innodb的缓冲池,如果数据库中只有Innodb表,则推荐配置量为总内存的75%(独立的mysql服务器)
innodb_buffer_pool_instances
#msyql5.5新增参数,可以控制缓冲池的个数,默认情况下只有一个缓冲池
innodb_log_buffer_size
#innodb log缓冲的大小,由于日志最长每秒钟就会刷新,所以一般不用太大 
innodb_flush_log_at_trx_commit
#关键参数,对innodb的IO效率影响很大。默认值为1,可以取0、1、2,一般建议设为2。如果数据安全性要求比较搞则使用默认值1.
innodb_read_io_threads
innodb_write_io_threads
#这2个参数决定了innodb读写io进程数,默认为4
innodb_file_per_table
#关键参数,控制innodb每一个表使用独立的表空间,默认为OFF,也就是所有表都会建立在共享表空间中
innodb_stats_on_metadata
#决定了mysql在什么情况下会刷新innodb表的统计信息

第三方配置工具

https://tools.percona.com/wizard

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值