Linux HugePages及MySQL大頁配置

2021-12-30 11:52:05 字數 1960 閱讀 7703

linux hugepages及mysql大頁配置

㈠ hugepages簡介

hugepages是kernel 2.6引入以便適應越來越大的物理記憶體

在linux下、page size預設是4k、如果使用hugepages、預設是2m

再看2個術語:

page table 對映表:物理記憶體和swap的對應關係、訪問記憶體是先讀page table、根據表裡的對映關係操作

tlb :cpu cache元件、快取部分page table以提高轉換速度

㈡ mysql 配置大頁

好處① 提高tlb的命中率

② 利用hugepages不會被swap 的特性保證mysql記憶體不會被交換到swap中

目前在mysql中hugepages只被innodb所支援

以下簡單介紹其配置流程

⑴ 配置前:

[plain]

[root@cdio ~]# cat /proc/meminfo | grep -i huge

hugepages_total: 0

hugepages_free: 0

hugepages_rsvd: 0

hugepagesize: 2048 kb

⑵ 設定大頁數量、每頁通常2m、20個就40m、系統要有足夠的記憶體待分配

[plain]

[root@obe11g ~]# echo 20 > /proc/sys/vm/nr_hugepages

⑶ 增加最大共享記憶體段的大小、本例12g

[plain]

[root@obe11g ~]# echo 1560281088 > /proc/sys/kernel/shmmax

⑷ 增加共享記憶體的大小、每頁4k

[plain]

[root@obe11g ~]# echo 4194304 > /proc/sys/kernel/shmall

⑸ 將mysql使用者所屬組新增到系統核心中

[plain]

[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

⑹ 再次確認配置情況

[plain]

[root@obe11g ~]# cat /proc/meminfo | grep -i huge

hugepages_total: 20

hugepages_free: 20

hugepagesize: 4096 kb

⑺ 設定max locked memory

[plain]

[root@obe11g ~]# cat /etc/security/limits.conf | grep -i mysql

mysql hard memlock unlimited

mysql soft memlock unlimited

⑻ 配置 my.cnf

[plain]

[mysqld]

large-pages

⑼ 啟動mysqld

⑽ 觀察hugepages 使用情況

[plain]

[root@obe11g ~]# grep -i huge /proc/meminfo

hugepages_total: 20

hugepages_free: 16

hugepagesize: 4096 kb

mysql三大正規化及資料約束及查詢及儲存過程

資料約束 連線查詢 多表查詢 儲存過程 引數型別 會話變數 變數只在當前連線會中有效 區域性變數 帶有輸入輸出引數的儲存過程 帶有判斷條件的儲存過程 帶有迴圈條件的儲存過程 接收表中的資料的儲存過程 觸發器create table student id int,name varchar 20 gen...

xml及DTD的解析及運用

9月18日 xml的認識 xml是一種標記語言。標記指計算機所能理解的資訊符號,通過此標記,計算機之間可以處理包含各種資訊的文章等,xml用來傳送及攜帶資料資訊,不用來表現或展示資料,html 語言則是用來表示資料,所以 xml用途的焦點是它說明資料是什麼,以及攜帶資料資訊。xml定義結構,儲存資訊...

預設樣式重置及及display轉換

body,p,h1,h2,h3,h4,h5,h6,dl,dd ol,ul aimg 注意 一般先清除預設樣式 display 塊元素 內嵌元素 inline block 塊元素 eg,block 1 預設獨佔一行 2 沒有寬度時,預設撐滿一排 3 支援所有css命令 內嵌元素eg,inline 1 ...