签到成功

知道了

CNDBA社区CNDBA社区

DM 达梦数据库 创建服务 无法创建目录"_REPLACE_SELF_DM_HOME" 错误解决方法

2020-12-01 19:23 1020 0 原创 DM 达梦
作者: Dave

在升级DM 8.1.1.19升级到8.1.1.48 的操作中,创建的服务无法正常启动。 但手工执行dmserver 命令是可以启动达梦实例。 https://www.cndba.cn/dave/article/4313

https://www.cndba.cn/dave/article/4313

服务创建的说明参考我之前的博客:

达梦数据库 DM8 中 注册服务 说明
https://www.cndba.cn/dave/article/3753

https://www.cndba.cn/dave/article/4313

这里记录错误信息:https://www.cndba.cn/dave/article/4313

[root@www.cndba.cn root]# ./dm_service_installer.sh -t dmserver -p dave -dm_ini /dm/dmdbms/data/cndba/dm.ini
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServicedave.service to /usr/lib/systemd/system/DmServicedave.service.
创建服务(DmServicedave)完成
[root@www.cndba.cn root]# systemctl start DmServicedave.service
Job for DmServicedave.service failed because the control process exited with error code. See "systemctl status DmServicedave.service" and "journalctl -xe" for details.
[root@www.cndba.cn root]# systemctl status DmServicedave.service
● DmServicedave.service - Dameng Database Service(DmServicedave).
   Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since 二 2020-12-01 16:49:36 CST; 11s ago
  Process: 62920 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=1/FAILURE)

12月 01 16:49:36 study systemd[1]: Starting Dameng Database Service(DmServicedave)....
12月 01 16:49:36 study DmServicedave[62920]: mkdir: 无法创建目录"_REPLACE_SELF_DM_HOME": 权限不够
12月 01 16:49:36 study DmServicedave[62920]: chown: 无法访问"_REPLACE_SELF_DM_HOME/log": 没有那个文件或目录
12月 01 16:49:36 study DmServicedave[62920]: mkdir: 无法创建目录"_REPLACE_SELF_DM_HOME": 权限不够
12月 01 16:49:36 study DmServicedave[62920]: chown: 无法访问"_REPLACE_SELF_DM_HOME/bin/pids": 没有那个文件或目录
12月 01 16:49:36 study DmServicedave[62920]: please change  or root to execute the service script, otherwise may be failed !
12月 01 16:49:36 study systemd[1]: DmServicedave.service: control process exited, code=exited status=1
12月 01 16:49:36 study systemd[1]: Failed to start Dameng Database Service(DmServicedave)..
12月 01 16:49:36 study systemd[1]: Unit DmServicedave.service entered failed state.
12月 01 16:49:36 study systemd[1]: DmServicedave.service failed.
[root@www.cndba.cn root]#

研究好长时间,一直在纠结这里的_REPLACE_SELF_DM_HOME目录,会在执行脚本的目录生成,尝试过手工赋权,依旧不正确。 https://www.cndba.cn/dave/article/4313

https://www.cndba.cn/dave/article/4313

我这个操作步骤是直接解压缩iso安装文件,然后将bin目录上传到服务器并修改成dmdba 用户的。 所以怀疑是这个过程导致的权限不对导致。

https://www.cndba.cn/dave/article/4313

所以重新执行静默安装,将数据库临时安装到了/tmp/dmdbms 目录下,然后重新将bin复制过去。 这样就避免修改了bin目录的权限。 https://www.cndba.cn/dave/article/4313

[dave@www.cndba.cn dm]$ ./DMInstall.bin -i
请选择安装语言(C/c:中文 E/e:英文) [C/c]:
解压安装程序......... 
……
请选择安装目录 [/home/dmdba/dmdbms]:/tmp/dmdbms
……

再次启动服务正常:https://www.cndba.cn/dave/article/4313https://www.cndba.cn/dave/article/4313

[root@www.cndba.cn root]# systemctl start DmServicedave.service
Job for DmServicedave.service failed because the control process exited with error code. See "systemctl status DmServicedave.service" and "journalctl -xe" for details.
[root@www.cndba.cn root]# systemctl status DmServicedave.service
● DmServicedave.service - Dameng Database Service(DmServicedave).
   Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since 二 2020-12-01 19:01:47 CST; 4s ago
  Process: 129728 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=1/FAILURE)

12月 01 19:01:47 study systemd[1]: Starting Dameng Database Service(DmServicedave)....
12月 01 19:01:47 study DmServicedave[129728]: please change  or root to execute the service script, otherwise may be failed !
12月 01 19:01:47 study systemd[1]: DmServicedave.service: control process exited, code=exited status=1
12月 01 19:01:47 study systemd[1]: Failed to start Dameng Database Service(DmServicedave)..
12月 01 19:01:47 study systemd[1]: Unit DmServicedave.service entered failed state.
12月 01 19:01:47 study systemd[1]: DmServicedave.service failed.
[root@www.cndba.cn root]# systemctl start DmServicedave.service
[root@www.cndba.cn root]# systemctl status DmServicedave.service
● DmServicedave.service - Dameng Database Service(DmServicedave).
   Loaded: loaded (/usr/lib/systemd/system/DmServicedave.service; enabled; vendor preset: disabled)
   Active: active (running) since 二 2020-12-01 19:09:03 CST; 5s ago
  Process: 27923 ExecStop=/dm/dmdbms/bin/DmServicedave stop (code=exited, status=0/SUCCESS)
  Process: 31658 ExecStart=/dm/dmdbms/bin/DmServicedave start (code=exited, status=0/SUCCESS)
 Main PID: 31683 (dmserver)
    Tasks: 25
   CGroup: /system.slice/DmServicedave.service
           └─31683 /dm/dmdbms/bin/dmserver /dm/dmdbms/data/cndba/dm.ini -noconsole

12月 01 19:08:48 study systemd[1]: Starting Dameng Database Service(DmServicedave)....
12月 01 19:09:03 study DmServicedave[31658]: [35B blob data]
12月 01 19:09:03 study systemd[1]: Started Dameng Database Service(DmServicedave)..
[root@www.cndba.cn root]#

所以在升级达梦数据库时,还是需要注意bin目录的权限,虽然手动启动没有影响,但对服务还是有影响的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
Dave

Dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 1902
    原创
  • 2
    翻译
  • 456
    转载
  • 131
    评论
  • 访问:3641934次
  • 积分:3137
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by ZhiXinTech · 皖ICP备19020168号·

        QQ交流群