1. MongoDB简介
MongoDB是一种NoSQL的分布式文档数据库,它可以提供灵活的数据存储机制,支持面向文档的存储,而非面向关系的存储。在MongoDB中,数据以JSON格式存储,可以一次性存储复杂的层次结构数据。
MongoDB的特点:
文档存储方式
动态查询
支持完整的索引
可扩展性高
2. 下载MongoDB
在安装MongoDB之前,我们需要下载MongoDB并安装到我们的机器上。MongoDB提供了Windows、Linux和MacOS平台的压缩包和安装程序。
2.1 Windows平台
在Windows平台上下载MongoDB,可以先访问MongoDB官网(www.mongodb.com) ,然后点击菜单栏中的“Download”选项,选择Windows平台下载符合自己系统要求的版本。
下载完成后,解压缩到想要安装的位置,并将安装目录添加到系统的环境变量中,以便在命令行中可以直接使用mongod和mongo命令。
2.2 Linux平台
在Linux平台上下载MongoDB,可以先访问MongoDB官网(www.mongodb.com),点击菜单栏中的“Download”选项,选择Linux平台下载符合自己系统要求的版本。
可以使用以下命令进行下载和安装
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.2.9.tgz
tar -zxvf mongodb-linux-x86_64-amazon-3.2.9.tgz
sudo mv mongodb-linux-x86_64-amazon-3.2.9 /usr/local/
然后将MongoDB的bin目录添加到系统的环境变量中,这样我们就可以在系统的任何位置使用mongod和mongo命令。
3. 安装MongoDB
在这里,我们将介绍如何在Windows和Linux平台上安装MongoDB。
3.1 Windows平台
在Windows平台上安装MongoDB,可以按照以下步骤进行:
在MongoDB安装目录下创建一个文件夹,用于存放数据,比如d:/data/mongodb/。
打开命令提示符,切换到MongoDB的bin目录,并执行以下命令启动mongod服务。
mongod --dbpath=d:/data/mongodb/
此时MongoDB服务已经启动。为了验证MongoDB是否正常运行,可以打开另外一个命令提示符窗口,切换到MongoDB的bin目录,并执行以下命令。
mongo
如出现以下输出,则说明MongoDB已经正常启动。
MongoDB shell version v4.4.3
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceNam ...
3.2 Linux平台
在Linux平台上安装MongoDB,可以按照以下步骤进行:
使用文本编辑器打开/etc/yum.repos.d/mongodb-org-4.4.repo文件,将以下内容复制到该文件中。
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
使用以下命令安装MongoDB的4.4版本。
sudo yum install -y mongodb-org
执行以下命令启动MongoDB服务。
sudo systemctl start mongod.service
此时MongoDB服务已经启动。为了验证MongoDB是否正常运行,可以执行以下命令。
mongo
如出现以下输出,则说明MongoDB已经正常启动。
MongoDB shell version v4.4.3
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceNam ...
4. 配置PHP扩展
为了能够使用PHP操作MongoDB数据库,需要安装MongoDB的PHP扩展。以下步骤介绍如何在PHP 5和PHP 7上安装MongoDB扩展。
4.1 PHP 5
在PHP 5下安装MongoDB扩展,可以按照以下步骤进行:
下载MongoDB的PHP扩展。
https://pecl.php.net/package/mongodb
解压缩下载的扩展包,然后打开命令提示符,切换到扩展包的目录。
cd mongodb-1.*/
执行以下命令编译扩展。
phpize
./configure
make
make install
使用文本编辑器打开php.ini文件,并加入以下内容。
extension=mongodb.so
重启Apache或PHP-FPM服务器。
4.2 PHP 7
在PHP 7下安装MongoDB扩展,可以按照以下步骤进行:
使用以下命令安装MongoDB扩展。
sudo apt-get install php-mongodb
重启Apache或PHP-FPM服务器。
5. 使用PHP操作MongoDB
使用PHP操作MongoDB,需要使用MongoDB的PHP库。以下是一个使用PHP连接MongoDB,并查询数据的例子。
首先创建一个连接到MongoDB的对象。
$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
创建一个查询的条件。
$filter = ['field1' => 'value1', 'field2' => 'value2'];
以下是一些查询条件操作符及其描述
操作符 | 描述 |
---|---|
$eq | 等于 |
$gt | 大于 |
$gte | 大于等于 |
$in | 在给定一组值内 |
$lt | 小于 |
$lte | 小于等于 |
$ne | 不等于 |
$nin | 不在给定一组值内 |
指定查询的数据表和条件。
$query = new MongoDB\Driver\Query($filter);
$result = $manager->executeQuery('database.collection', $query);
遍历查询结果,输出查询数据。
foreach ($result as $document) {
echo json_encode($document) . "\n";
}
6. 结论
本文给出了MongoDB的介绍、下载、安装和配置PHP扩展的详细步骤,并提供了使用PHP操作MongoDB的示例程序。MongoDB提供了灵活的数据存储机制,支持面向文档的存储,可以用来存储复杂的层次结构数据。PHP的MongoDB扩展可以让我们方便地在PHP代码中操作MongoDB数据库。