systemctl Depois não parece funcionar

0

Eu tenho um serviço personalizado que preciso iniciar depois que o mysql estiver online. Eu estou tentando usar systemd / systemctl para iniciar o serviço na inicialização. Eu configurei After=network.target mysqld.service no meu arquivo de configuração personalizado. O que parece ser o problema é systemctl acredita que o mysql terminou de iniciar e, portanto, continua a iniciar o meu serviço personalizado, mas o serviço personalizado falha ao conectar-se ao banco de dados, depois de analisar o log. Verificando os timestamps no log do mysql, mostra que meu serviço customizado está iniciando antes que o mysql esteja pronto para iniciar. Eu tenho olha em volta a documentação do systemctl e não parece haver qualquer "esperar antes de iniciar o tempo limite" ou "esperar até que um soquete está escutando as conexões". Como posso garantir que o mysql está pronto antes do início do meu serviço personalizado?

    
por Dan S 20.04.2012 / 02:03

1 resposta

0

Existe uma opção nos arquivos systemd.service, que verifica explicitamente a existência do soquete.

Na documentação do systemd, Lennart Pöttering explica detalhadamente que a maioria dos serviços não precisa do deamon real iniciado, mas apenas do soquete a ser ligado.

O Systemd pode criar esses sockets e iniciar o mysql no primeiro acesso! Esta é uma das principais razões pelas quais o systemd foi criado.

link

    
por 08.05.2012 / 11:19