谐振dba设置参数详解

MySQL: 1 .1 缓存数据,将内存设置为5 0%-7 5 %,例如1 6 G内存使用8 -1 2 G。
1 .2 控制连接数,根据并发量调整,5 00并发设置为5 00。

Oracle: 2 .1 SGA缓存,占内存的5 0%-8 0%,8 GB内存为4 -6 .4 G。
2 .2 PGA内存,2 0%-3 0%,1 0GB内存使用2 -3 G。

SQLServer: 3 .1 最大内存,使用独享服务器的9 0%-9 5 %,使用1 6 GB内存1 4 -1 5 G。

调整参数,查看硬件和业务,优化性能。

Mysql Innodb引擎块大小设置

嘿,我以前在做数据库优化时遇到过这种情况。
MySQL InnoDB的默认块大小是1 6 KB,这确实是由源代码中的一组参数和宏定义决定的。

想一想,最关键的宏是UNIV_PAGE_SIZE,它直接代表页面大小。
该宏的值由 srv_page_size 变量确定。
当我查看mysql-5 .7 .1 6 /storage/innobase/srv/srv0/srv.cc文件时,发现srv_page_size默认为UNIV_PAGE_SIZE_DEF。

深入挖掘,UNIV_PAGE_SIZE_DEF 是在文件 mysql-5 .7 .1 6 /storage/innobase/include/univi.i 中定义的,它等于 1 < UNIV_PAGE_SIZE_SHIFT_DEF 位于同一个文件中,默认值为 1 4
所以计算过程为:1 <<1>计算结果为 1 6 3 8 4 ,正好是 1 6 KB。
经过这样的操作,InnoDB的默认页面大小被设置为1 6 KB。

不过,MySQL也对用户友好。
虽然这是在源代码中定义的,但用户可以在数据库初始化期间通过 innodb_page_size 参数更改它。
可用值为 4 KB、8 KB、1 6 KB、3 2 KB 和 6 4 KB。
但如果你改变它,一旦数据库初始化,该值就会被焊接到这里。
你想改变它吗?重置它。

这个块大小对性能有很大影响。
我曾经注意到一个电子商务客户,当他们使用1 6 KB时,内存碎片更少,系统运行得很好。
但有一家公司进行金融交易。
他们转向 8 KB 是因为他们的事务非常小,并且有很多小表,因此浪费的存储空间更少。
但他们测试了很长时间才改变,因为你知道,这件事一旦决定了,就不能半途而废。

我个人的建议是在大多数情况下使用默认的 1 6 KB。
足够了,无忧无虑。
如果您的业务非常具体,例如,如果您总是处理非常大的文件或非常小的事务,您可能需要查看其他值。
但请记住,在进行任何更改之前您需要进行全面测试。
不要只听理论。
只有实践了才知道效果。
一旦设置了该块的大小,在数据库执行期间就无法移动它。
我们必须记住这一点。