欢迎来到之路教程(on itroad-com)
方法 2 - 通过文件添加多个变量
此方法允许通过一个简单的文件将多个环境变量添加到服务中。
[Service] LimitNOFILE=max_open_files PIDFile=/path/to/pid/file Nice=nice_level LimitCore=core_file_limit EnvironmentFile=-/etc/sysconf/mysqld
EnvironmentFile 值开头的 '' 字符是让 systemd 在文件不存在时忽略错误。
环境文件将简单地包含名称=值格式的不同变量列表。
例如:
LD_PRELOAD=/path/to/malloc/library TZ=time_zone_setting AUTHENTICATION_PAM_LOG=1
环境文件可以是任何,由服务中的 EnvironmentFile 属性定义,但是,它可能特定于 Linux 的版本和发行版。
一些旧版本希望它在 /etc/sysconf(对于基于 Redhat 的发行版)与 /etc/default(对于基于 Debian 的发行版)中。
这是 Oracle MySQL 软件包当前使用的方法。
方法 1 - 使用“systemd 编辑”
这是创建和/或者编辑包含环境变量的覆盖文件的首选方法。
创建/编辑覆盖文件的命令是:
# systemctl edit mysqld
这将创建一个目录(如果不存在)并创建一个包含变量的 override.conf 文件。
例如
[Service] Environment="TZ=time_zone_setting" Environment="AUTHENTICATION_PAM_LOG=1" Environment="LD_PRELOAD=/path/to/malloc/library"
覆盖文件和目录通常是:/etc/systemd/system/mysqld.service.d/override.conf
方法 3——直接添加环境变量
这只是在 mysql 服务文件的 [Service] are 中添加 name=value 设置。
[Service] LimitNOFILE=max_open_files PIDFile=/path/to/pid/file Nice=nice_level LimitCore=core_file_limit Environment="LD_PRELOAD=/path/to/malloc/library"
这里的“Environment”关键字用于标识指定的环境变量。
在上面的设置中,环境变量被定义为对 MySQL 服务器使用不同的 malloc 库。
问题:如何设置环境变量以用于 MySQL 服务器的 systemd 服务?
有许多不同的方法可用于为 systemd 服务设置环境变量。
使用的方法可能因 Linux 发行版和发行版的版本而异。
MySQL 手册指出服务设置简单地完成为(仅示例):
[Service] LimitNOFILE=max_open_files PIDFile=/path/to/pid/file Nice=nice_level LimitCore=core_file_limit
日期:2020-09-17 00:13:52 来源:oir作者:oir