zoukankan      html  css  js  c++  java
  • mysql优化

    max_connections MySQL所允许的的同时会话数 Error: Too many connections
    max_connect_errors 最大错误(连接类)允许数,会引发FLUSH HOSTS重启服务
    key_buffer_size 关键词缓冲区大小,缓存MyISAM索引块,决定索引处理速度,读取索引处理速度
    max_allowed_packet 设置最大包,限制server结束数据块大小,避免超长SQL执行,Error: 信息包过大 关闭连接。 如果客户端遇到丢失与MySQL连接的报错,检查这个选项。
    thread_cache_size 服务器线程缓存
    thread_concurrency 默认为CPU核数X2,设置错误的话影响MySQL利用多核处理器性能
    sort_buffer_size 每个连接需要使用buffer时分配的内存大小,不是越大越好。例:1000个连接,一个1MB,会占用1GB内存,200WX1MB=20GB
    join_buffer_size join表使用的缓存大小,一般默认,不重设
    query_cache_size 查询缓存大小,再查询时返回缓存,缓存期间表必须没有被更改,否则缓存失效,多写入操作的话设置大了会影响写入效率
    read_buffer_size MyISAM引擎下全表扫描的缓冲大小。如果无法添加索引时还要全表扫描,增大这个值进行优化
    read_rnd_buffer_size 从排序好的数据中读取行时,行数据从缓冲区读取的大小,会提升order by性能 注意:MySQL会为每个客户端申请这个缓冲区,并发过大时,设置过大影响内存开销
    myisam_sort_buffer_size MyISAM表发生变化时,重新排序所需的缓存
    innodb_buffer_pool_size InnoDB 使用缓存保存索引,保存原始数据的缓存大小,可以有效减少读取数据所需的磁盘IO
    innodb_log_file_size 数据日志文件大小,大的值可以提高性能,但增加了恢复故障数据库的时间(恢复故障数据库时需要读取数据日志文件,当日志过大会导致时间过长)
    innodb_log_buffer_size日志文件缓存,增大该文件可以提高性能,但增大了忽然宕机后损失数据的风险(日志文件在缓存中,还没来得及存进硬盘就断电了)
    innodb_flush_log_at_trx_commit 执行事务的时候,会往InnoDB存储引擎的日志缓存插入事务日志,写数据前先写日志(预写日志方式)设置为0,实时写入;当设置为1时,缓存实时写入磁盘;2时,缓存实时写入文件,每秒文件实时写入磁盘
    innodb_lock_wait_timeout 被回滚前(当一个事务被撤销时),一个InnoDB事务,应该等待一个锁被批准多久,当InnoDB无法检测死锁时,这个值就有用了
    总结:buffur_size大了,可以提高性能,但是占用相应的内存。

     

     

     

  • 相关阅读:
    虚拟机镜像压缩(qcow2,raw)
    CentOS7--删除virbr0
    django简单实例(1)
    python3.7操作mysql数据库
    KVM虚拟化安装部署
    zabbix监控温度及风扇
    excel以某列为基础进行行排序
    kibana添加首页登陆认证
    openstack常见问题解决方法
    linux的7种运行模式
  • 原文地址:https://www.cnblogs.com/yulu612/p/7290999.html
Copyright © 2011-2022 走看看