首先,尝试在终端中启动mongodb
错误通常都是默认的数据库目录不存在,输出信息中有一行:
[initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/db not found., terminating
这个目录通常是启动mongod时指定一个存在的目录,例如:
mongod --dbpath [自己指定的目录路径]
好,现在在终端启动mongodb没问题了。
但在unity的ETModel.ServerCommandLineEditor窗口还是无法启动数据库
Win32Exception: ApplicationName='mongod', CommandLine='--dbpath=db', CurrentDirectory='../Database/bin/', Native error= Cannot find the specified file
执行的代码是ServerCommandLineEditor.cs中的:
if (GUILayout.Button("启动数据库"))
{
ProcessHelper.Run("mongod", @"--dbpath=db", "../Database/bin/");
}
- 可能 .bash_profile 文件有mongod的路径,但通过代码运行是会忽略这个文件的内容的。你需要指定monggod的路径
- 这里用了参数“–dbpath=db”,看看这个db路径是否存在
- 这里指定了工作目录“…/Database/bin/”,这个工作目录是不存在的,指定工作目录为…/Bin/