鉴于有EsgynDB使用者询问到如何重启EsgynDB的问题,这里特别写一篇博客来阐述一下,供读者参考。
前提条件
1 EsgynDB是基于Hadoop架构,目前主流的Hadoop版本主要是CDH和HDP,本文我们以底层是CDH为例。
2 EsgynDB因为只能安装在Hadoop的DataNode节点或者是DataNode和NameNode的混合节点,因此EsgynDB的启动或停止只能在有DataNode的节点上执行,且必须使用trafodion用户执行。
3 如果Hadoop本身不需要重启,可以只重启数据库。
重启步骤
- 停止数据库
使用XShell或相关工具登录到任意一台数据库节点,如192.168.1.9,登录用户为trafodion。执行以下命令停止数据库(注:必须以trafodion用户执行):
//停止数据库
ckillall
或
sqstop
//检查数据库是否有残留进程
cstat
//若有残留进程则重新执行停止数据库,若无则不用执行以下步骤
ckillall
或
sqstop
以上ckillall为强制停止数据库,sqstop为非强制性停止数据库。数据库完全停止时的状态应该如下,
-
停止Hadoop
从网页登录Cloudera manager界面,地址:http://192.168.1.7:7180/cmf/home
登录用户为admin
停止Hadoop服务,如下图所示
-
启动Hadoop
待上述Hadoop完成停止后,重新启动Hadoop服务,如下图所示
-
检查HBase状态
待上述Hadoop完成启动后,回到步骤1中的登录session,使用trafodion用户检查HBase是否健康,命令如下
//检查HBase状态是否健康
hbcheck
HBase健康时的输出如下,
- 启动数据库
在上述session中使用trafodion用户启动数据库,命令如下
//启动数据库
sqstart
//检查数据库状态
sqcheck
数据库正常启动后的输出如下(Actual进程与Configured进程保持一致),