在Mac OS X上使用XAMPP和PHP 5.3 ext安装Mongo DB

4

你好,我认为我刚刚在本地的xampp机器上安装了MongoDB

我按照网上的教程进行操作,看起来一切都完成了:

  1. 将预编译的mongo.so移动到XAMPP/xampfiles/lib/php/php5.3/extensions/no-debug-non-zts-20090626/

  2. 将以下代码添加到php.ini中:

    extension = mongo.so

  3. 重新启动Apache

  4. 连接到localhost并在phpinfo()中可以看到mongo扩展

  5. 访问http://localhost:27017以查看mongo界面,但无法连接(Firefox返回错误)

然后我下载了MongoHub客户端用于创建/管理mongo数据库,但它显示套接字错误,并且似乎没有与MongoDB的连接

我认为我也安装了mongoDB本身

  1. 我创建了一个目录:XAMPP/xampfiles/var/mongodb
  2. 我在var/mongodb下解压缩了tar MongoDB包文件,现在我有var/mongodb/bin
  3. var/mongodb中启动了此命令:

./bin/mongod

它返回了:

Sun Sep 11 22:40:32 [initandlisten] MongoDB starting : pid=946 port=27017 dbpath=/data/db/ 64-bit 
Sun Sep 11 22:40:32 [initandlisten] db version v1.8.3, pdfile version 4.5
Sun Sep 11 22:40:32 [initandlisten] git version: c206d77e94bc3b65c76681df5a6b605f68a2de05
Sun Sep 11 22:40:32 [initandlisten] build sys info: Darwin erh2.10gen.cc 9.6.0 Darwin Kernel Version 9.6.0: Mon Nov 24 17:37:00 PST 2008; root:xnu-1228.9.59~1/RELEASE_I386 i386 BOOST_LIB_VERSION=1_40
Sun Sep 11 22:40:32 [initandlisten] exception in initAndListen std::exception: dbpath (/data/db/) does not exist, terminating
Sun Sep 11 22:40:32 dbexit: 
Sun Sep 11 22:40:32 [initandlisten] shutdown: going to close listening sockets...
Sun Sep 11 22:40:32 [initandlisten] shutdown: going to flush diaglog...
Sun Sep 11 22:40:32 [initandlisten] shutdown: going to close sockets...
Sun Sep 11 22:40:32 [initandlisten] shutdown: waiting for fs preallocator...
Sun Sep 11 22:40:32 [initandlisten] shutdown: closing all files...
Sun Sep 11 22:40:32 closeAllFiles() finished
Sun Sep 11 22:40:32 dbexit: really exiting now

启动./bin/mongo也会返回:

MongoDB shell version: 1.8.3
connecting to: test
Sun Sep 11 22:41:11 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:79
exception: connect failed

1
太好了,你安装了Mongo PHP扩展和GUI客户端。你是否安装了MongoDB本身?-http://www.mongodb.org/downloads - salathe
抱歉,我不认为我能回答这个问题。也许稍后我会回复您。 - itsme
事实是我找不到一个好的教程来安装MongoDB包到XAMPP目录中(如果可能的话):P,你知道怎么做吗? - itsme
1
周日 9 月 11 日 22:40:32 [initandlisten] initAndListen 中的异常 std::exception:dbpath (/data/db/) 不存在,终止。 周日 9 月 11 日 22:40:32 dbexit:这应该告诉您问题所在。您需要阅读命令输出,而不仅仅是盲目运行它们。 - JohnD
1个回答

2

您需要使用以下命令启动Mongo:

mongod --dbpath=data

--dbpath=data参数是指定数据库存储路径的地方,其中data是路径,可以是类似于/var/lib/mongodb/data或/data/mongodb这样的路径。

在运行该命令之后,您可以前往http://localhost:27017查看MongoDB监视器。

祝好运!


谢谢,现在它正在运行...但是如果我访问localhost:27017,它会说:您正在尝试访问MongoDB的本机驱动程序端口。要进行http诊断访问,请将端口号加1000。 - itsme
所以我在终端上读到,我可以访问本地主机的监视器:localhost:28017,然后它就出现了 :) - itsme
你连接的端口不对,使用以下命令启动mongodb:mongod --rest --dbpath=data,然后在28017端口进行连接。 - Michel Pereira

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接