中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在LINUX平臺配置 MSYQL 支持大頁內存

發布時間:2020-08-11 06:18:01 來源:ITPUB博客 閱讀:184 作者:lixiaxin200319 欄目:MySQL數據庫
操作系統:
[root@oradb ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.4 (Santiago)

數據庫:
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.6.27    |
+-----------+
1 row in set (0.00 sec)

在這個測試中我們設置400MB的大頁內存給 MYSQL使用

1. 關閉匿名大頁內存

下面的命令輸出為 [always]  表示開啟匿名大頁內存,需要關閉
[root@oradb ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] never

在  /boot/grub/grub.conf  文件中添加 transparent_hugepage=never 禁止匿名大頁內存

default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux (2.6.32-358.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=UUID=bfd79be7-6446-4864-bc1f-ad15d4b242ad rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet  transparent_hugepage=never
        initrd /initramfs-2.6.32-358.el6.x86_64.img
        
        
重啟操作系統,然后檢查是否禁止了匿名大頁

[root@oradb ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always [never]   # 已經成功禁止匿名大頁內存


[root@oradb ~]# cat /proc/meminfo | grep -i huge
AnonHugePages:         0 kB  # AnonHugePages 為零,表示已經成功禁止了匿名大頁內存
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB # 大頁內存的頁面大小是2MB


2. 在內核參數中配置400MB的大頁內存
# vi  /etc/sysctl.conf
# config hugepages
# vm.nr_hugepages = MYSQL需要使用的內存 / 大頁的頁面大小 = 400/2=200
vm.nr_hugepages=200
vm.hugetlb_shm_group=507 # 507是MYSQL所屬組ID

[root@oradb ~]# sysctl -a |grep shmmax
kernel.shmmax = 68719476736
[root@oradb ~]# sysctl -a |grep shmall
kernel.shmall = 4294967296

操作系統默認已經設置 kernel.shmmax=64GB,kernel.shmall=4GB,已經超過我們
需要的內存量(400MB)所以不需要調整這兩個參數。

3.重新加 LINUX 載內核參數
sysctl  -p

4. 設置 MYSQL用戶限制內存鎖定400MB
vi /etc/security/limits.conf
mysql      soft    memlock   409600 #單位為KB,我們配置的是MYSQL用戶限制內存鎖定400MB
mysql      hard   memlock    409600

5. 配置MYSQL啟用大頁內存
[mysqld]
large-pages

6. 啟動MYSQL
/app/oracle/oradata2/mysql-5.6.27/bin/mysqld_safe --defaults-file=/app/oracle/oradata2/mysql-5.6.27/my.cnf --user=mysql &

檢查已經使用了大頁內存
[root@oradb mysql-5.6.27]# cat /proc/meminfo | grep -i huge
AnonHugePages:         0 kB
HugePages_Total:     200
HugePages_Free:      197
HugePages_Rsvd:       67
HugePages_Surp:        0
Hugepagesize:       2048 kB

HugePages_Total為所分配的頁面數目,和Hugepagesize相乘后得到所分配的內存大小。200*2/1024大約為200MB。

HugePages_Free為從來沒有被使用過的Hugepages數目。即使 MYSQL INNDOB 緩沖池已經分配了這部分內存,但是如果沒有實際寫入,
那么看到的還是Free的。這是很容易誤解的地方。

HugePages_Rsvd為已經被分配預留但是還沒有使用的page數目。在 MYSQL 剛剛啟動時,大部分內存應該都是Reserved并且Free的,隨著
INNDOB 緩沖池的使用,Reserved和Free都會不斷的降低。

HugePages_Free – HugePages_Rsvd 這部分是沒有被使用到的內存,如果沒有其他的 MYSQL實例,這部分內存也許永遠都不會被使用到,也就是被浪費了。
在這個測試中沒有使用的大頁內存是 197-67=130*2=260MB。
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长阳| 双峰县| 抚宁县| 承德县| 沙坪坝区| 贵阳市| 祁阳县| 扎兰屯市| 临西县| 志丹县| 济南市| 秦皇岛市| 青神县| 安平县| 霍邱县| 双流县| 石林| 古交市| 安陆市| 嘉鱼县| 陆河县| 蓬安县| 镇康县| 通海县| 邢台县| 宝坻区| 甘谷县| 潮州市| 武胜县| 辰溪县| 明溪县| 秀山| 江门市| 昌邑市| 浦北县| 潜山县| 吴忠市| 常山县| 甘洛县| 五峰| 闽侯县|