标题:
[KB225924150078738功能解说] 报错:“无数据库连接”(启动X3 V7或更高版本时)
[打印本页]
作者:
anne.yao
时间:
前天 15:01
标题:
[KB225924150078738功能解说] 报错:“无数据库连接”(启动X3 V7或更高版本时)
* 本文由赛捷软件(上海)有限公司翻译完成,未经授权不得转载。如需转载,请先联系相应版块的版主取得授权。
报错:“无数据库连接”(启动X3 V7或更高版本时)
创建日期:2021-07-05
最后修改日期:2021-07-05
描述
查看MongoDB是否正在监听默认端口27017(或者执行X3安装的人员设置的任何端口号)的步骤:
1. 以管理员权限打开一个命令提示符
2. 输入:
md c:\DeleteMePlease
3. 然后按下
回车键
。(这个操作会在C:\驱动器的根目录下创建一个名为"DeleteMePlease"的文件夹)
4. 输入:
netstat -abont > c:\DeleteMePlease\netstat.txt
5. 然后按下
回车键
。(这会重定向
netstat
命令,将其值输出到一个文本文件中)
6. 用文本编辑器打开
netstat.txt
文件,然后使用
Ctrl + F
搜索
mongod
或
27017
。 结果应该如下图所示。 截图中显示,mongod.exe进程(Mongo后台程序)正在监听端口27017,相关信息会紧邻显示在端口号上方。 如果您在这个端口号下方看到显示了另一个进程,则意味着该进程先于MongoDB启动,并独占了端口,从而阻止了MongoDB使用同一个端口。 结果就是MongoDB服务无法启动,并且Syracuse无法访问所需数据。
o 在这种情况下,将冲突的服务设置为
延迟启动
可能有所帮助。 无论哪种情况,请联系服务的软件供应商寻求帮助。
[attach]7487[/attach]
原因
在最基本的层面上,该报错意味着Syracuse无法从MongoDB读取数据(即使这两个服务都已启动)。
可能的原因:
•
Sage Syracuse - NODEx
服务未运行。 这可能是由于
Sage Syracuse
服务本身的问题,或者更可能是由于
MongoDB
服务未能启动。 Syracuse的正常运行依赖于MongoDB。 如果MongoDB未能启动,可能是因为有其他程序正在使用相同的端口(默认端口27017),或者有其他因素(例如Windows Update或Microsoft Security Essentials)阻止了MongoDB的启动。
•
Sage Syracuse - NODEx
和
MongoDB
服务正在运行,甚至正在监听正确的端口(即分别为8124和27017),但
Syracuse
服务仍然无法从MongoDB数据库读取数据。 这些MongoDB数据是成功显示(并登录)X3登录界面和系统所必需的。
• 服务器上安装
MongoDB
的硬盘空间已耗尽。
解决方法
1. 首先,尝试停止
Syracuse
服务。
2. 如果它已经停止,请在任务管理器中确认
node.exe
是否未运行。 如果Syracuse无法停止或无法及时停止,或者如果存在
node.exe
进程,请结束所有
node.exe
实例的进程。
3. 确认MongoDB服务正在运行。 它会在任务管理器中显示为
mongod.exe
。 如有需要,请检查Windows服务。
4. 即使MongoDB服务正在运行,也请停止并再次启动MongoDB服务。
o 在Windows服务界面中,大约每5秒按一次
F5
键,以确认MongoDB服务是否确实
保持
启动状态。 之后至少等待30秒刷新屏幕,以确认服务仍然处于启动状态。
5. 如果成功,在MongoDB重新启动
之后
,启动(或重新启动)
Sage Syracuse - NODEx
服务。
o 按
F5
键确认Syracuse服务是否也
保持
启动状态。 如果它保持启动,确认您现在是否可以登录X3。
6. 如果Syracuse服务未能启动,请再次确认MongoDB服务正在运行。如果Syracuse或MongoDB日志对您的故障排除没有帮助,请联系支持人员。 这些日志通常位于Syracuse/MongoDB文件夹中。
7. 如果您现在可以登录X3,可以采取以下进一步措施来防止此问题将来再次发生:
A. 将
Agent
Sage Syracuse
服务设置为
自动(延迟启动)
(而不是"
Sage Syracuse - NODEx
"服务——因为"
Sage Syracuse - NODEx
"服务是一个手动服务,这意味着它无法自行启动,而是由
Agent
Sage Syracuse
服务实际启动的)。 通过双击
Agent Sage Syracuse
服务,打开
属性
窗口来完成此操作。
B. 确认您是否可以登录X3。
• 如果您想进行额外的故障排除,以确认服务器重启后此功能仍能正常运行:
a) 测试一下,重启托管这些服务的服务器。
b) 确认两个服务都保持启动状态。 服务器重启到Windows桌面后,这些服务可能需要一到两分钟才能启动。
c) 确认您是否可以登录X3。
注意:
如果MongoDB服务或Sage Syracuse服务在重启并设置延迟启动后仍未能保持启动,一个已知的阻止MongoDB启动的原因是Microsoft Security Essentials。 您可以为Mongo进程设置一个排除项(进入MongoDB服务的
属性
窗口以找到确切路径),或者卸载Microsoft Security Essentials并重启。
注意2:
确保您的存储设备上有足够的可用空间,至少应大于Mongo数据库的大小。
欢迎光临 赛捷软件论坛 (http://sagesoft.cn/bbs/)
Powered by Discuz! 7.2