gpt4 book ai didi

mysql - 当 mysqld_safe 完成启动时发出信号

转载 作者:行者123 更新时间:2023-11-29 13:36:04 26 4
gpt4 key购买 nike

在我的部署脚本中,我在运行 mysqld_safe 后运行一个脚本来设置数据库。但是当数据库安装运行时,还没有 mysql 进程运行。如何确保仅在 mysql 进程运行后才运行数据库设置脚本?

这是脚本:

mysqld_safe >/tmp/spot.mysql.out 2>/tmp/spot.mysql.err &
mysql -u root < setup.sql

最佳答案

有办法。如果您的系统上有 pidof(使用 which pidof 检查),则 you could use :

mysqld_safe >/tmp/spot.mysql.out 2>/tmp/spot.mysql.err &
while ! pidof mysql > /dev/null
do
sleep 5
done
mysql -u root < setup.sql

我不知道你需要mysqld_safe运行多长时间,但是,按照你启动它的方式,它可能会由于SIGHUP而终止,当你外壳退出。为了避免这种情况,make it ignore SIGHUP :

nohup mysqld_safe >/tmp/spot.mysql.out 2>/tmp/spot.mysql.err &
while ! pidof mysql > /dev/null
do
sleep 5
done
mysql -u root < setup.sql

关于mysql - 当 mysqld_safe 完成启动时发出信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18733297/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com