GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo establecer variables de entorno para un servicio systemd en CentOS/RHEL 7

Pregunta :¿Cómo establecer variables de entorno para usar con un servicio systemd de MySQL Server?

Hay una serie de métodos diferentes que se pueden usar para establecer variables de entorno para un servicio systemd. El método utilizado puede variar según la distribución de Linux y la versión de la distribución. El manual de MySQL establece que la configuración del servicio se realiza simplemente como (solo ejemplo):

[Service]
LimitNOFILE=max_open_files
PIDFile=/path/to/pid/file
Nice=nice_level
LimitCore=core_file_limit

Método 1:usar 'systemd edit'

Este es el método preferido que consiste en crear y/o editar un archivo de anulación que contiene las variables de entorno. El comando para crear/editar el archivo de anulación es:

# systemctl edit mysqld

Esto creará un directorio (si no existe) y creará un override.conf archivo que contendrá las variables. por ejemplo

[Service]
Environment="TZ=time_zone_setting"
Environment="AUTHENTICATION_PAM_LOG=1"
Environment="LD_PRELOAD=/path/to/malloc/library"

El archivo y el directorio de anulación generalmente serán:/etc/systemd/system/mysqld.service.d/override.conf

Método 2:agregue múltiples variables a través de un archivo

Este método permite agregar múltiples variables de entorno al servicio a través de un archivo simple.

[Service]
LimitNOFILE=max_open_files
PIDFile=/path/to/pid/file
Nice=nice_level
LimitCore=core_file_limit
EnvironmentFile=-/etc/sysconf/mysqld

El ' El carácter al comienzo del valor de EnvironmentFile permite que systemd ignore los errores si el archivo no existe. El archivo de entorno simplemente tendrá la lista de diferentes variables en el formato nombre=valor. Por ejemplo:

LD_PRELOAD=/path/to/malloc/library
TZ=time_zone_setting
AUTHENTICATION_PAM_LOG=1

El archivo de entorno puede ser cualquiera, tal como lo define el atributo EnvironmentFile en el servicio; sin embargo, podría ser específico de la versión y distribución de Linux. Algunas versiones anteriores esperarán que esté en /etc/sysconf (para distribuciones basadas en Redhat) frente a /etc/default (para distribuciones basadas en Debian). Este es el método utilizado actualmente por los paquetes Oracle MySQL.

Método 3:agregue la variable de entorno directamente

Esto es simplemente para agregar una configuración de nombre =valor en el área [Servicio] del archivo de servicio mysql.

[Service]
LimitNOFILE=max_open_files
PIDFile=/path/to/pid/file
Nice=nice_level
LimitCore=core_file_limit
Environment="LD_PRELOAD=/path/to/malloc/library"

El 'Medioambiente La palabra clave aquí se usa para identificar qué variable de entorno se especifica. En la configuración anterior, la variable de entorno está definida para usar una biblioteca malloc diferente para el servidor MySQL.


Cent OS
  1. Cómo configurar o cambiar el nombre de host en CentOS 7 / RHEL 7

  2. Cómo reiniciar el servicio de red en CentOS 8 o RHEL 8

  3. CentOS / RHEL 7:Cómo configurar serial getty con systemd

  4. Cómo configurar la afinidad de la CPU para el proceso SYSTEMD en CentOS/RHEL 7

  5. Cómo establecer límites de recursos para un proceso con Systemd en CentOS/RHEL 7 y 8

Cómo instalar el archivo bin en RHEL 8 / CentOS 8 Linux

Cómo habilitar Kdump en RHEL 7 y CentOS 7

Cómo instalar/actualizar Systemd en RHEL/CentOS 7

Cómo configurar/cambiar el nombre de host en CentOS 8 / RHEL 8

Configure el servidor Samba en CentOS 8/RHEL 8 para compartir archivos

CentOS/RHEL 7:Cómo verificar el estado de un servicio usando systemd