CentOS-7 下 systemctl 管理 mysql-5.7的不同,配置jemalloc

mysql-5.7 的 mysqld_safe去哪了?

  • 在CentOS-7下全面使用systemctl管理服務,包括mysqld,使用ps命令時見不到mysqld_safe。
  • 並且安裝完mysql-5.7也找不到mysqld_safe
  • 安裝完初始化mysql基本文件時,也不再使用mysqd_safe, 而是改用 mysqld –initialize 或 –initialize-insecure
  • 以上讓我一度以爲mysqld_safe棄用。my.cnf中還能使用配置[mysqld_safe]
  • 答案在:http://mysqlserverteam.com/mysql-5-7-native-systemd-support/

5.7 配置jemalloc

  • 先安裝jemalloc

  • 由於cat /usr/lib/systemd/system/mysqld.service 文件中指定了環境變量值如下:

    # Use this to switch malloc implementation
    EnvironmentFile=-/etc/sysconfig/mysql

  • 所以寫入libjemalloc.so路徑到這個文件即可:

    echo ‘LD_PRELOAD=/usr/local/lib/libjemalloc.so’ > /etc/sysconfig/mysql

  • 另一個方法是修改my.cnf,加在[mysqld_safe]節點下:

    [mysqld_safe]
    malloc-lib= /path/to/jemalloc

  • 重啓mysqld即生效。

    systemctl restart mysqld
    lsoft |grep jemalloc

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章