配置MySQL服务器离不开配置文件,接下来就开始这一部分的内容。
首先一定要清楚配置文件的位置,如果不知道可以尝试下面的操作:/usr/local/mysql/bin/mysqld --verbose --help | grep -A 1 'Default options'
#结果如下
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
有时候可以使用show global status 的输出来看状态,有的时候也需要看随着时间的变化而变化的状态值,可以使用命令:/usr/local/mysql/bin/mysqladmin extended-status -ri60 -uroot -p123456
接下来看看内存的配置使用了。
MySQL可以使用的内存会受到操作系统位数的限制,MySQL保持一个连接(线程)只需要少量的内存,同时也需要为高峰时期执行大量查询预留好足够的内存。
下面是我们认为比较重要的缓存:
a、InnoDB缓冲池
b、InnoDB日志文件和MyISAM数据的操作系统缓存
c、MyISAM键缓存
d、查询缓存
InnoDB缓冲池并不仅仅缓存索引,还会缓存行的数据,自适应哈希索引,插入缓冲,锁,以及其他内部数据结构。很大的缓冲池,预热和关闭都很话费很长时间,重启服务器也会话费很长的时间,尤其是磁盘很慢的时候,可以使用Percona Server的快速预热功能,