---
title: OBServer 服务器重启后 observer 进程未能自动启动-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于OBServer 服务器重启后 observer 进程未能自动启动相关的常见问题和使用技巧，帮助您快速解决OBServer 服务器重启后 observer 进程未能自动启动的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# OBServer 服务器重启后 observer 进程未能自动启动

更新时间：2026-06-08 02:36

适用版本： V1.4.x、V2.1.x、V2.2.x、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.x 内容类型：Troubleshoot  

## 适用版本

OceanBase 数据库各个版本。

## 问题现象

OBServer 服务器计划外掉电重启或计划内重启后，observer 进程未能自动启动，导致 OCP 上显示 OceanBase 集群不可用。

```
[root@ob1 ~]# ps -ef | grep observer | grep -v grep
[root@ob1 ~]#    <== 结果为空！

```

## 问题原因

通过 OAT 做过装机模板化的 OBServer 服务器，都会在 `/etc/rc.local` 开机自启动脚本中自动添加下面的一行启动代码。

```
[root@ob1 ~]# cat /etc/rc.local
...
/usr/local/bin/auto_start_ob.sh >> /var/log/ob.autostart.log 2>&1 &
...

```

如果机器重启了，observer 进程会通过 `/etc/rc.local` 脚本里面的 `/usr/local/bin/auto_start_ob.sh` 自动起来，obproxy 和 ocp-agent 相关进程也应该会通过该脚本自动起来。

```
/usr/local/bin/auto_start_ob.sh >> /var/log/ob.autostart.log 2>&1 &

```

因为 OceanBase 集群对节点之间时间的同步有强依赖（集群内要求主机之间的时钟同步时延在 100ms 以内），因此，该脚本启动 observer 之前会先检查一下是否有稳定的时钟同步源。

1. 执行以下命令

   ```
   # ntpq -np

   ```

   或

   ```
   # chronyc -n sources

   ```
 2. 确认输出中是否有 `^*` 开头的记录行。

   ```
   MS Name/IP address         Stratum Poll Reach LastRx Last sample
   ===============================================================================
   ^* xxx.xxx.2.8                    2   7   377     4  +5856ns[  -14us] +/-   21ms

   ```
 3. 如果可以找到 `^*` 开头的记录行，则代表当前时钟同步服务存在稳定的时钟同步源。

如果主机上找不到运行中的 ntpd/chronyd 服务，`/var/log/ob.autostart.log` 启动日志中就会报错。

```
can't find running ntpd/chronyd service, observer will not run
sync time failed, will not start observer.

```

如果找不到稳定的 NTP 时钟同步源，`/var/log/ob.autostart.log` 启动日志中就会报错。

```
can't get steady ntp server, observer will not run
sync time failed, will not start observer.

```

如果找不到稳定的 Chrony 时钟同步源，`/var/log/ob.autostart.log` 启动日志中就会报错。

```
can't get steady chrony server, observer will not run
sync time failed, will not start observer.

```

因此，如果 OBServer 主机上的 ntpd/chronyd 服务由于某些原因（比如无法连通时钟源服务器）而无法自动同步时间，就会导致 observer 进程开机自启动失败。

## 解决方法

1. 检查并修复时钟服务同步问题，确认 ntpd/chronyd 服务可以跟时钟源正确地同步时间。
 2. 以 root 用户身份重新执行自启动脚本。

   ```
   [root@ob1 ~]# /usr/local/bin/auto_start_ob.sh >> /var/log/ob.autostart.log 2>&1 &

   ```

如果暂时未能解决时钟服务同步问题，也可以先手工拉起 observer 进程，暂时先恢复 OceanBase 数据库服务。

```
[root@ob1 ~]# su - admin
[admin@ob1 ~]$ cd ~/oceanbase ; ./bin/observer

```

上一篇

[insert ignore 线程 hang 死问题](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000008218)

下一篇

[OBServer 进程在重启后扫描 ilog 盘报错导致 fatal error 进程自动退出](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000207675) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
