在使用disql 连接达梦数据库的时候可能会遇到如下错误:
[dmdba@mydb DAMENG]$ ./disql SYSDBA/SYSDBA
[-70028]:Create SOCKET connection failure.
disql V8
username:^C
[dmdba@mydb DAMENG]$
这里通常有如下几种原因导致。
1、DM 进程没有启动
达梦数据库可以通过dmserver 命令行直接启动,也可以注册成服务启动。
2、对于第一次使用dminit 初始化的DM实例,直接用服务启动时,也会出现该问题。
对于dminit初始化的DM实例,在第一次启动时,需要使用dmserver 命令启动。
此时如果查看DM的日志,会显示如下信息:
[dmdba@mydb DAMENG]$ tail -100 DmServicedave.log
file dm.key not found, use default license!
version info: develop
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V8 startup...
Database mode = 0, oguid = 0
License will expire on 2020-09-16
Database first startup failed, reinitialize database please!
[root@www.cndba.cn log]#
手工启动:
[dmdba@mydb DAMENG]$./dmserver '/dm8/dmdbms/data/DAMENG/dm.ini'
file dm.key not found, use default license!
version info: develop
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V8 startup...
Database mode = 0, oguid = 0
License will expire on 2020-09-16
file lsn: 0
ndct db load finished
ndct fill fast pool finished
iid page's trxid[1002]
NEXT TRX ID = 1003
pseg_collect_items, collect 0 active_trxs, 0 cmt_trxs, 0 pre_cmt_trxs, 0 active_pages, 0 cmt_pages, 0 pre_cmt_pages
pseg_process_collect_items end, 0 active trx, 0 active pages, 0 committed trx, 0 committed pages
total 0 active crash trx, pseg_crash_trx_rollback begin ...
pseg_crash_trx_rollback end
purg2_crash_cmt_trx end, total 0 page purged
set EP[0]'s pseg state to inactive
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
trx: 2004 purged 1 pages
.....
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
total 0 active crash trx, pseg_crash_trx_rollback begin ...
pseg_crash_trx_rollback end
SYSTEM IS READY.
之后就可以用服务启动了。
3、DMAP 服务异常
DMAP是达梦数据库辅助插件服务。 在DM实例运行时依赖该服务。
在创建DM实例会自动创建DMAP的服务,一般正常重启即可。
[dmdba@mydb DAMENG]$ ystemctl start DmAPService.service
但如果之前就已经异常,此时如果重启失败,可以先删除DM_HOME/bin目录下的DM_PIPE* 文件,在重启。
[dmdba@mydb ]$ pwd
/home/dmdba/dmdbms/bin
[dmdba@mydb DAMENG]$ ll DM_PIPE*
prwx------. 1 dmdba dmdba 0 Oct 29 13:52 DM_PIPE_DMAP_LSNR_RD
prwx------. 1 dmdba dmdba 0 Oct 29 13:52 DM_PIPE_DMAP_LSNR_WR
这些管道文件在重启DMAP后会自动创建。