我正在使用Ubuntu13.10(俏皮蝾螈),我希望sudo apt-get install php5-mongo个就足够安装mongodb数据库驱动程序了.

但没有这样的运气.我使用的是php5 fpm,所以首先我发现我还需要做php5enmod mongo,但即使这样,我还是会得到一个错误:

include(MongoClient.php): failed to open stream: No such file or directory

相反,要安装,我必须执行以下操作(这会占用更多磁盘空间):

 sudo apt-get install php5-dev make php-pear
 sudo pecl install mongo
 sudo echo "extension=mongo.so" | tee /etc/php5/mods-available/mongo.ini

我的问题是为什么sudo apt-get install php5-mongo还不够?这是Ubuntu repo的问题吗?我如何查看ubuntu存储库,找到它使用的版本,或者为什么不包括MongoClient.php.我使用"ubuntu:saucy"docker图像作为我的基础,我认为它默认包括宇宙.

推荐答案

在Ubuntu14.04中,sudo apt-get install php5-mongo产生了一个完全工作的mongo PHP扩展.所以我猜Ubuntu 13.10中有一个打包问题导致了这个问题.

Solution:使用Ubuntu14.04LTS而不是Ubuntu13.10.

但是,如果你想使用Ubuntu13.10,不要使用php5-mongo Ubuntu软件包,而是通过pecl安装mongo扩展:

sudo apt-get install php5-dev make php-pear
sudo pecl install mongo
sudo echo "extension=mongo.so" | sudo tee /etc/php5/mods-available/mongo.ini

Mongodb相关问答推荐

MongoDB索引使用

如何使用ID数组对一个集合中的金额求和并更新另一个集合中的字段?

除非满足某个条件,否则Mongo是否按日期排序?

MongoDB Aggregate 根据时间进行多重分组

lexik_jwt_authentication下无法识别的选项api_platform

MongoDb $filter,然后获取非重复计数

node.js & express - 应用程序 struct 的全局模块和最佳实践

是否可以迭代 mongo 游标两次?

从 PHP 打印 MongoDB 日期

在mongodb中实现分页

MongoDB:单个数据库处理程序的 >5 个打开连接

无法从 javascript 打印 BSON 对象

Mongoose 是否真的验证了对象 ID 的存在?

在 mongoDB 中展平嵌套的 JSON struct

$orderby 和 Sort 之间的 MongoDB 区别

mongoose:按字母顺序排序

使用命令行从 MongoDB 数据库中的所有集合中删除所有索引

Mongodb 按字段名称查找任何值

MongoError:failed to connect to server [localhost:27017] on first connect

在mongoose中创建和查找地理位置