Назад | Перейти на главную страницу

как добавить команду ядра перед запуском mysql в Linux

Я хочу добавить эти команды в ядро ​​Linux перед запуском mysql (во время загрузки):

echo never> /sys/kernel/mm/transparent_hugepage/enabled
echo never> /sys/kernel/mm/transparent_hugepage/defrag

Это необходимая спецификация для приложения, которое я запускаю.

Вы можете запустить эти команды перед запуском MySQL, отредактировав сценарии запуска mysql. Но было бы лучше сделать эти настройки постоянными, отредактировав свой /etc/sysfs.conf.

Если вы хотите отключить прозрачную огромную страницу, вы должны добавить:

kernel/mm/transparent_hugepage/enabled = never

в вашу конфигурацию sysctl.

После того, как вы отредактировали конфигурацию sysctl, вы можете перечитать конфигурацию с помощью:

sysctl -p path/to/your/sysctl/config

Расположение файла конфигурации sysctl зависит от используемого вами дистрибутива. Вы сможете определить файл, заглянув в sysctl страница руководства man sysctl. Путь должен быть указан в конце под FILES

Дистрибутивы на основе Debian, такие как Ubuntu, похоже, используют /etc/sysfs.conf, Дистрибутивы на основе RedHat, похоже, используют /etc/sysctl.conf.

Если вы действительно хотите изменить настройку с помощью сценариев запуска, вы можете отредактировать свой /etc/rc.local и добавьте эти строки:

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
    echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi

if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
   echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

Но редактирование /etc/sysfs.conf было бы намного чище.

Если вам нужна дополнительная информация, я рекомендую прочитать это https://askubuntu.com/ вопрос.