最近两天在做php和mongodb连接的时候,遇到了困难,一直没有连接成功。想向大家请教一下,是不是我有什么地方没有注意到。
目前可以排除的问题有。
1 mongodb已经启动并可以对数据通过mongo的命令来插入和删除。
2 apache和php环境已经搭建好。编写简单的php网页,可以通过其他主机访问的到。
3 php-mongo driver 已经安装正常,通过查询phpinfo,可以看到有mongodb support。
4php连接mongodb的代码是通过php网站和一些博客上找到的,也应该不会出问题。
其他的地方我实在考虑不到,谁对这方面很有经验。所以想请教一下,可能是哪些地方出了问题。
目前可以排除的问题有。
1 mongodb已经启动并可以对数据通过mongo的命令来插入和删除。
2 apache和php环境已经搭建好。编写简单的php网页,可以通过其他主机访问的到。
3 php-mongo driver 已经安装正常,通过查询phpinfo,可以看到有mongodb support。
4php连接mongodb的代码是通过php网站和一些博客上找到的,也应该不会出问题。
其他的地方我实在考虑不到,谁对这方面很有经验。所以想请教一下,可能是哪些地方出了问题。
2. 用户名称和密码
3. 展示你代码,我根据PHP手册上写列子来做一直用得很顺
$m = new MongoClient();// select a database
$db = $m->mydb;// select a collection (analogous to a relational database's table)
$collection = $db->things;// add a record
$document = array( "title" => "Calvin and Hobbes", "author" => "Bill Watterson" );
$collection->insert($document);// add another record, with a different "shape"
$document = array( "title" => "XKCD", "online" => true );
$collection->insert($document);// find everything in the collection
$cursor = $collection->find();// iterate through the results
foreach ($cursor as $document) {
echo $document["title"] . "\n";
}?>这是我在php网站上拷贝下来,稍微修改了的代码。
端口号用的是默认的27017.
用命令查看sudo lsof -iTCP -sTCP:LISTEN | grep mongo
mongod 2936 root 9u IPv4 22719 0t0 TCP *:27017 (LISTEN)
mongod 2936 root 10u IPv4 22720 0t0 TCP *:28017 (LISTEN)
Version 1.4.0dev
SSL Support enabledDirective Local Value Master Value
mongo.allow_empty_keys 0 0
mongo.chunk_size 262144 262144
mongo.cmd $ $
mongo.default_host localhost localhost
mongo.default_port 27017 27017
mongo.is_master_interval 15 15
mongo.long_as_object 0 0
mongo.native_long 0 0
mongo.ping_interval 5 5这是在phpinfo中查到的。
admin