YashanDB 开机自启

时间:2024-12-02 19:03:17

背景

在YashanDB数据库环境中设置开机自启,通常指的是配置数据库实例在操作系统启动时自动运行。对于备用数据库(Standby Database),即数据保护模式中的灾备节点,也需要配置成在系统重启后自动启动,以保证数据的高可用性和灾难恢复能力。

YashanDB配置开机自启

以下是在Linux系统上设置YashanDB数据库实例开机自启的一般步骤:

进入数据库之前的安装目录,启动守护进程:

cd /home/yashan/install
./bin/yasboot monit start --cluster yashandb

守护进程用于持续监控YashanDB的各进程状态,并在进程异常时将其重新拉起,查看数据库各进程监控状态:

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进程均被监控,数据库进程成功被守护。

操作系统层面开始配置开机自启(使用root用户或者具有sudo权限的用户):

方法一: sudo vim /etc/rc.local,rc.local添加一下记录

su yashan -c '/home/yashan1/yashandb/22.2.12.100/bin/monit/monit -c /home/yashan1/yashandb/22.2.12.100/bin/monit/monitrc'

保存后退出,即完成注册开启自启动操作。

注意还需执行以下操作:

sudo chmod +x /etc/rc.d/rc.local

方法二:

1.创建服务文件: 在/etc/systemd/system/目录下创建一个以.service为扩展名的服务文件,比如myservice.service

sudo nano /etc/systemd/system/myservice.service

2.编辑服务文件: 使用文本编辑器打开服务文件,并添加必要的配置信息。以下是一个简单的例子:

[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
  • Description: 服务的描述。
  • After: 指定服务应该在哪个目标(这里是network.target)之后启动。
  • 确保替换上述示例中的占位符(/path/to/your/yasstart.sh)为您实际的可执行文件路径,yasstart.sh内容如下:
su yashan -c '/home/yashan1/yashandb/22.2.12.100/bin/monit/monit -c /home/yashan1/yashandb/22.2.12.100/bin/monit/monitrc'

注意yasstart.sh还需要可执行权限:

sudo chmod +x /path/to/your/yasstart.sh

3.重新加载Systemd: 在保存并关闭服务文件后,重新加载Systemd配置。

sudo systemctl daemon-reload

4.启用并启动服务: 启用服务,以便它在系统启动时自动启动,并手动启动服务。

sudo systemctl enable myservice
sudo systemctl start myservice

5.检查服务状态: 可以使用以下命令检查服务的状态。

sudo systemctl status myservice

这样,Systemd服务就配置为在系统启动时自动启动了。如果有其他特殊需求,您可能需要调整服务文件中的其他配置选项。

重启系统并验证

重启系统后,使用ps -ef|grep yas命令检查YashanDB相关进程是否已经自动启动。通过图形化界面工具或者服务器后端通过yasql验证数据库是否能被正常访问和使用。

总结

  • 服务脚本:确保YashanDB服务启动脚本已经正确安装。
  • 系统工具:使用操作系统的服务管理工具(如rc.localsystemctl)来设置YashanDB服务开机自启。
  • 验证:在设置开机自启后,重启系统并验证YashanDB服务是否如预期般自动启动。

请注意,具体的命令和步骤可能会因YashanDB的版本和操作系统的不同而有所差异。建议参考具体的YashanDB官方文档和操作系统文档以获取最准确的信息。