Mysql
 sql >> Database >  >> RDS >> Mysql

perché mysqld si trova in 4 posti nel sistema Linux?

Ecco le seguenti spiegazioni

  • /usr/libexec/mysqld :L'eseguibile binario effettivo
  • /etc/rc.d/init.d/mysqld :il file di avvio del servizio (file di testo)
  • /var/run/mysqld :cartella PID/run file (mysqld scrive un file run in questa cartella)
  • /var/lock/subsys/mysqld :non sono sicuro

Se esegui which mysqld dovresti vedere il primo

Non lo esegui mai direttamente

Quando esegui service mysqld start , chiama /etc/rc.d/init.d/mysqld per avviare un programma chiamato mysqld_safe (Esegui which mysqld_safe ). mysqld_safe e mysqld collaborano per diventare il demone del server.

A sua volta, mysqld_safe avvierà mysqld e quindi verifica la presenza di un codice di uscita. Puoi eseguire less /etc/rc.d/init.d/mysqld e guarda questo. Se mysqld non è terminato a causa dell'arresto del sistema o di un normale service mysql stop , mysqld_safe tenterà di riavviare mysqld .