1

我有一个基于 debian 的私有服务器,我想知道,在服务器启动时向数据库插入一行的最佳方法是什么。我试图在我的基于 PHP 的监控站点的通知中显示它。

我目前正在考虑一个简单的脚本(尚未决定语言),在启动时只运行一次,然后终止。有没有更好的解决方案?

编辑:我使用 init.d 文件夹中的脚本在不同的运行级别上运行。目前,我唯一开始工作的是插入一行关于服务器启动的 bash 脚本。这是在 rcS.d/ 下。

问题是,例如,当我在运行级别为 0 或 6 时使用相同的方法运行脚本时,该脚本永远不会运行。我认为这可能是一个优先问题。看下图(优先级与apache等的kill优先级相同...)。脚本是按字母顺序运行的,还是我可以以某种方式将所有优先级提高一个?

优先级与 apache 等的 kill 优先级相同...

4

1 回答 1

0

MySQL 有一个内置选项可以在启动时执行 SQL 文件,这听起来像你想要的: https ://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_init-file

您可以做的另一件事是定期查看服务器正常运行时间并将其与已知值进行比较,或者只是检查它最近是否重新启动。

您最近使用启动脚本的想法也有优点,问题是您需要确保它mysql 启动后运行。S01 是优先级/顺序,因此您要输入比 MySQL 更大的数字。

根据您使用的发行版,该数字可能不适用,但如果系统使用的是 upstart 或 systemd 并且它更复杂。

crontab @reboot 建议也是一个很好的建议。

于 2015-04-03T13:09:23.263 回答