首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ubuntu Upstart -在MySQL启动前运行脚本

Ubuntu Upstart -在MySQL启动前运行脚本
EN

Stack Overflow用户
提问于 2012-07-12 00:06:10
回答 1查看 2.1K关注 0票数 1

在Ubuntu服务器上启动mysql之前,我需要运行另一个脚本来设置一些东西。mysql由Upstart系统启动。我从来没有听说过Upstart,但我现在已经阅读了文档,我认为有一些选择可以实现这一点,但我希望有更有经验的Upstart用户来确认我的结论。

在下面的四个选项中,我倾向于最后一个,因为它不涉及更改mysql.conf作业。

代码语言:javascript
运行
复制
mysql.conf:
pre-start script
    mkdir -p /mnt/mysql
    [ -L /var/lib/mysql ] || ln -s /mnt/mysql /var/lib/mysql
    /usr/bin/mysql_install_db --user=mysql
chown mysql:mysql /var/lib/mysql/mysql/.
chown mysql:mysql /var/lib/mysql/mysql/*
end script

mysql.conf
pre-start exec /var/myscriptfile (where myscriptfile contains mkdir -p /mnt/mysql etc)

mysql.conf
start on started mysql-primer
(where mysql-primer is an Upstart job that does mkdir etc)

mything.conf
start on starting mysql
task
script
    mkdir -p /mnt/mysql
    [ -L /var/lib/mysql ] || ln -s /mnt/mysql /var/lib/mysql
    /usr/bin/mysql_install_db --user=mysql
chown mysql:mysql /var/lib/mysql/mysql/.
chown mysql:mysql /var/lib/mysql/mysql/*
end script

谢谢,保罗

EN

回答 1

Stack Overflow用户

发布于 2012-09-08 02:49:58

你的最后一个想法完全正确:

mything.conf:

代码语言:javascript
运行
复制
start on starting mysql
task
script
    mkdir -p /mnt/mysql
    [ -L /var/lib/mysql ] || ln -s /mnt/mysql /var/lib/mysql
    /usr/bin/mysql_install_db --user=mysql
    chown mysql:mysql /var/lib/mysql/mysql/.
    chown mysql:mysql /var/lib/mysql/mysql/*
end script

starting事件阻止在其上启动的任何任务,直到所述任务完成。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11436790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档