【笔记】MySql数据库单机配置优化

262 阅读1分钟

MySql 单机配置优化

  • max_connection=1000

    增加最大链接数,默认为100

  • innodb_file_per_table=1

    可以存储每个innodb表和他的索引在自己的文件中

  • innodb_buffer_pool_size=1G

    缓存池大小,设置为当前数据库服务内存的60%-80%

  • innodb_log_file_size=256M

    一般取256M可以兼顾性能和recovery的速度,写满后只能切换日志靠buffer存储

  • innodb_log_buffer_size=16M

    该参数确保有足够大的日志缓冲区来保存脏数据在被写入到日志文件之前可以继续mysql事务操作

  • innodb_flush_log_at_trx_commit = 2

    1时,在每个事务提交时,日志缓冲被写到曰志文件,对日志文件做到磁盘操作的刷新。Truly ACIDo速度慢。

    2时,在每个事务提交时,日志缓冲被写到系统缓冲,但不对日志文件做到磁盘操作的刷新。然后根据innodb_flush_log_at_timeout (默认为1s)时间flush disk只有操作系统崩溃或掉电才会删除最后一秒的事务,不然不会丢失事务。

    0时,效率更高,但安全性差。每秒才write曰志任何mysqld进程的崩溃会删除崩溃前最后一秒的事务

  • innodb_data_file_path=ibdata1:1G;ibdata2:1G;ibdata3:1G:autoextend

    指定表数据和索引存储的空间,可以是一个或者多个文件。