在这里我们可以对Upstart守护程序进行垺务启动定义在这里,我们直接使用服务配置文件即可
其中respawn指令负责在崩溃后重新启动该服务,我们将在下一节中进行详细说明
安装完成后,启动mysqld服务
(请注意,在Debian与Ubuntu中的MySQL安装流程有所区別在Debian中,安装完成后MySQL会自动启动)
另外,我们使用systemctl命令来控制该服务:
在这里MySQL root密码为空大家可以根据需要创建一条新密码。其余流程部分与之前提到的Debian或Ubuntu一致
默认情况下,MySQL会在重启后自动恢复運行为了了解其实现原理,我们首先检查mysqld守护程序的具体配置执行以下命令:
服务器重新上线后,利用SSH进行接入
执行以下命令检查垺务状态:
运行以下命令禁用该服务:
这时服务并不会停止,但会被禁用从输出结果中可以看到,symlink已经被删除了:
大家也可以重复以上過程查看MySQL server是否会恢复运行。
输出结果显示symlink已经再次启用:
这意味着服务器重启后,服务将能够自动恢复
现在看看如何配置MySQL以确保崩溃后自动恢复。
在文件末尾可以看到一条重启指令:
这里Restart参數被设定为always意味着MySQL服务将在完全或不完全退出或者超时后始终自动重启。
这就是systemd中的自动重启定义方式
与Upstart中的respawn指令类似,Restart参数负责定義服务在崩溃后执行何种操作
并非所有systemd服务都在默认条件下启用自动恢复,不过大家可以在对应服务的unit文件内[Service]区段下添加额外指令以实現这一效果
为了模拟崩溃情况,我们退出编辑器并检查MySQL进程ID:
在本示例中主PID为661,大家需要将其替换为自己的实际PID:
可以看到服务能夠在崩溃后自动实现恢复。
在本教程的第一部分中我们了解了System V、Upstart与systemd服务如何在重启或崩溃后实现服务自动恢复。
我们也了解了各文件、配置参数与命令如何控制对应操作
在本部分内,我们只探讨操作方式在第二部分文章中,我们将进一步探讨更多概念与基础信息
请暂时不要删除Droplet——保持运行,因为我们还将在中继续使用
在ThinkPHP框架下,读取excel数据的方法示例:
测试时使用的html页面代码为: