Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

por que o mysqld está localizado em 4 lugares no sistema linux?


Segue as seguintes explicações
  • /usr/libexec/mysqld :O executável binário real
  • /etc/rc.d/init.d/mysqld :O arquivo de inicialização do serviço (arquivo de texto)
  • /var/run/mysqld :pasta de arquivo PID/run (mysqld grava um arquivo de execução nesta pasta)
  • /var/lock/subsys/mysqld :não tenho certeza

Se você executar which mysqld você deveria ver o primeiro

Você nunca executa isso diretamente

Quando você executa service mysqld start , ele chama /etc/rc.d/init.d/mysqld para iniciar um programa chamado mysqld_safe (Execute which mysqld_safe ). mysqld_safe e mysqld trabalhem juntos para serem o daemon do servidor.

Por sua vez, mysqld_safe iniciará o mysqld e, em seguida, verificará se há um código de saída. Você pode executar less /etc/rc.d/init.d/mysqld e veja isso. Se o mysqld não terminou devido ao desligamento do sistema ou a um service mysql stop normal , mysqld_safe tentará reiniciar mysqld .