【问题分类】 YashanDB 开机自启
【关键字】 开机自启,依赖包
【问题描述】 数据库所在服务器重启后只拉起 monit、yasom、yasom 进程,缺少 yasdb 进程:
【问题原因分析】 数据库安装的时候未启动守护进程
【解决 / 规避方法】
进入数据库之前的安装目录,启动守护进程:
Shell
cd /home/yashan/install
./bin/yasboot monit start --cluster yashandb
复制代码
守护进程用于持续监控 YashanDB 的各进程状态,并在进程异常时将其重新拉起,查看数据库各进程监控状态:
Shell
cd /home/yashan/install
./bin/yasboot monit summary -c yashandb
--------------------------------------------------------------------------------
HostID: host0001, ManageIP: 172.22.92.233
--------------------------------------------------------------------------------
Monit 5.28.0 uptime: 6m
Service Name Status Type
demo3 OK System
yasom OK Process
yashandb-db-1-1 OK Process
yasagent OK Process
复制代码
如上可知数据库,os yasom yasagent yasdb 进程均被监控,数据库进程成功被守护。
操作系统层面开始配置开机自启:
方法一: sudo vim /etc/rc.local,rc.local 添加一下记录
TOML
su yashan -c '/home/yashan1/yashandb/22.2.12.100/bin/monit/monit -c /home/yashan1/yashandb/22.2.12.100/bin/monit/monitrc'
复制代码
保存后退出,即完成注册开启自启动操作。
注意还需执行以下操作:
Bash
sudo chmod +x /etc/rc.d/rc.local
复制代码
方法二 :
● 创建服务文件:在/etc/systemd/system/目录下创建一个以.service 为扩展名的服务文件,比如 myservice.service。
Shell
sudo nano /etc/systemd/system/myservice.service
复制代码
● 编辑服务文件:使用文本编辑器打开服务文件,并添加必要的配置信息。以下是一个简单的例子:
TOML
[Unit]Description=My Custom Service
After=network.target
[Service]Type=simple
ExecStart=sh /path/to/your/yasstart.sh
Restart=on-failure
[Install]WantedBy=default.target
复制代码
● 重新加载 Systemd:在保存并关闭服务文件后,重新加载 Systemd 配置。
Shell
sudo systemctl daemon-reload
复制代码
● 启用并启动服务:启用服务,以便它在系统启动时自动启动,并手动启动服务。
systemctl enable myservicesudo systemctl start myservice
复制代码
● 检查服务状态:可以使用以下命令检查服务的状态。
Shell
sudo systemctl status myservice
复制代码
这样,您的 Systemd 服务就配置为在系统启动时自动启动了。如果有其他特殊需求,您可能需要调整服务文件中的其他配置选项。
【影响范围】 22.2/23.2
【修复版本】 -
评论