MySQL虽然出了多个分支,但它仍然是世界上最受欢迎的关系数据库。但它最初的安装以及至部署到生产环境之时,可能不是最优化的状态。许多人就用它的默认值在跑,没有深入的进行研究。我在本文中,和你讨论这些MySQL的优化技巧,并将它们与后面MySQL的新特性结合在一起来讲解。
配置优化
首先,这一部分是最容易被人们忽略的。性能是每个MySQL最应该做的事。虽然MySQL5.7之后配置默认值比以前有更合理,但是即使如些还是有很多优化的空间。
我们假设你正在一个linux主机,无论是阿里云,腾讯云还是AWS还是其它布拉布拉,MySQL安装后的配置文件都在/tc/mysql/my.cnf中。也有可能你的MySQL配置文件内容不多,可能还加载了其它配置文件,需要仔细观察一下。比如/tc/mysql/mysql.conf.d/mysqld等名称。
配置文件
你需要有一个熟悉的命令行工具,比如vi或macs。如果你没有接触过它,那么也可以用其它方式。你可以在本地使用Vagrantbox来编辑,比如把原文件复制到安全的文件夹中编辑。比如:
cp/tc/mysql/my.cnf/hom/vagrant/Cod
使用编辑器做正则编辑,编辑完毕后将原来的配置文件备份,再复制回原目录。当然你也可直接编辑它,如果你有十足把握的情况下来操作:
sudovim/tc/mysql/my.cnf
注意:上面的路径是我当前Linux系统的真实路径,你的配置文件有可能在/tc/mysql/mysql.conf.d/mysqld.conf上。
手动微调
下面我们手动调整上面的my.cnf配置文件。将以下代码放在[mysqld]段中:
innodb_buffr_pool_siz=1G#(adjustvaluhr,50%-70%oftotalRAM)
innodb_log_fil_siz=M
innodb_flush_log_at_trx_