mysql大頁配置
1、HugePages簡介
HugePages是kernel 2.6引入以便適應越來越大的實體記憶體
在Linux下、page size預設是4K、如果使用HugePages、預設是2M
再看2個術語:
page table 對映表:實體記憶體和swap的對應關係、訪問記憶體是先讀page table、根據表裡的對映關係操作
TLB :cpu cache元件、快取部分page table以提高轉換速度
2、MySQL 配置大頁 (要大於 innodb_buffer_pool_size+innodb_additional_mem_pool_size+
innodb_log_buffer_size+tmp_table_size)
好處
① 提高TLB的命中率
② 利用HugePages不會被Swap 的特性保證MySQL記憶體不會被交換到Swap中
目前在MySQL中HugePages只被InnoDB所支援
以下簡單介紹其配置流程
(1) 配置前:
[root@cdio ~]# cat /proc/meminfo | grep -i huge
HugePages_Total:0
HugePages_Free: 0
HugePages_Rsvd: 0
Hugepagesize:2048 kB
(2) 設定大頁數量、每頁通常2M、20個就40M、系統要有足夠的記憶體待分配
[root@obe11g ~]# echo 20 > /proc/sys/vm/nr_hugepages
(3) 增加最大共享記憶體段的大小、本例12G
[root@obe11g ~]# echo 1560281088 > /proc/sys/kernel/shmmax
(4) 增加共享記憶體的大小、每頁4K
[root@obe11g ~]# echo 4194304 > /proc/sys/kernel/shmall
(5) 將mysql使用者所屬組新增到系統核心中
[root@obe11g ~]# more /proc/sys/vm/hugetlb_shm_group
0
[root@obe11g ~]# id mysql
uid=501(mysql) gid=501(dba) groups=501(dba)
[root@obe11g ~]# echo 501 > /proc/sys/vm/hugetlb_shm_group
(6) 再次確認配置情況
[root@obe11g ~]# cat /proc/meminfo | grep -i huge
HugePages_Total: 20
HugePages_Free:20
Hugepagesize:4096 kB
(7) 設定max locked memory
[root@obe11g ~]# cat /etc/security/limits.conf | grep -i mysql
mysql hard memlock unlimited
mysql soft memlock unlimited
(8) 配置 my.cnf
[mysqld]
large-pages
(9) 啟動mysqld
(10) 觀察HugePages 使用情況
[root@obe11g ~]# grep -i huge /proc/meminfo
HugePages_Total: 20
HugePages_Free:16
Hugepagesize:4096 kB
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69990629/viewspace-2772767/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL InnoDB頁面大小配置MySql
- MySQL 配置索引頁的合併閾值MySql索引
- 【大頁記憶體】Oracle資料庫配置大頁記憶體記憶體Oracle資料庫
- oracle 大頁配置詳細介紹Oracle
- 探索MYSQL開啟大頁記憶體MySql記憶體
- mysql配置MySql
- 【IT老齊074】海量資料大頁碼MySQL查詢MySql
- mysql分頁-limit offset分頁MySqlMIT
- t620折騰 —— 給虛擬機器配置大頁虛擬機
- Mysql安全配置MySql
- MySQL分頁查詢offset過大,Sql最佳化經驗MySql
- MySQL InnoDB髒頁管理MySql
- MySQL、Elasticsearch 深度分頁MySqlElasticsearch
- oracle大頁Oracle
- MySQL配置檔案MySql
- MySQL多例項配置MySql
- MySQL安裝配置MySql
- Mac 下配置 MySQLMacMySql
- mysql 配置檔案MySql
- mysql主從配置MySql
- mysql分頁時offset過大的Sql最佳化經驗分享MySql
- myBatis分頁外掛配置MyBatis
- tomcat網頁壓縮配置Tomcat網頁
- 【Mysql】Windows下安裝和配置MysqlMySqlWindows
- excel匯出、mysql分頁ExcelMySql
- MySQL的頁與行格式MySql
- MySQL的分頁查詢MySql
- mysql 使用技巧 分頁limitMySqlMIT
- MySQL 頁完全指南——淺入深出頁的原理MySql
- mysql5.7MHA配置MySql
- JPA配置mysql連線MySql
- 【MySQL】安裝與配置MySql
- MySQL配置與啟動MySql
- mysql安裝及配置MySql
- mysql 5.7主從配置MySql
- MySQL安全配置基線MySql
- MySQL主從同步配置MySql主從同步
- docker mysql 主從配置DockerMySql