前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >MongoDB 操作配置

MongoDB 操作配置

作者头像
老七Linux
发布2018-05-09 17:13:42
发布2018-05-09 17:13:42
81100
代码可运行
举报
运行总次数:0
代码可运行
一、MongoDB创建集合

创建一个集合语法:db.createCollection(name,options)

代码语言:javascript
代码运行次数:0
复制
db.createCollection("mycol", { capped : true, size : 6142800, max : 10000 } )  
{ "ok" : 1 }
  • name就是集合的名字,options可选,用来配置集合的参数。
  • capped true/false可选)如果为true,则启用封顶集合。封顶集合是固定大小的集合,当它达到其最大大小,会自动覆盖最早的条目。如果指定true,则也需要指定尺寸参数。
  • autoindexID true/false可选)如果为true,自动创建索引_id字段的默认值是false。
  • size可选)指定最大大小字节封顶集合。如果封顶如果是 true,那么你还需要指定这个字段。单位B
  • max可选)指定封顶集合允许在文件的最大数量。

查看集合:

代码语言:javascript
代码运行次数:0
复制
> show tables
mycol
system.users
system.version

如果集合不存在,直接插入数据,则mongodb会自动创建集合

代码语言:javascript
代码运行次数:0
复制
db.Account.insert({AccountID:1,UserName:"123",password:"123456"})

更新:

代码语言:javascript
代码运行次数:0
复制
db.Account.update({AccountID:1},{"$set":{"Age":20}})

查看所有文档:

代码语言:javascript
代码运行次数:0
复制
db.Account.find()

根据条件查询:

代码语言:javascript
代码运行次数:0
复制
db.Account.find({AccountID:1})

根据条件删除:

代码语言:javascript
代码运行次数:0
复制
db.Account.remove({AccountID:1})

删除所有文档,即删除集合:

代码语言:javascript
代码运行次数:0
复制
db.Account.drop()

先进入对应的库:

代码语言:javascript
代码运行次数:0
复制
use dbname

然后查看集合状态:

代码语言:javascript
代码运行次数:0
复制
db.printCollectionStats()
二、PHP连接MongoDB-mongodb.so

在官方的站点我们看到截止到目前仍然有两个扩展一个是:mongodb.so 和mongo.so,两者有什么区别呢?

官方解释:

The mongo extension available from PECL is an older, legacy driver for PHP 5.x. The mongo extension is no longer maintained and new projects are advised to use the mongodb extension and PHP library. A community-developed Mongo PHP Adapter project implements the legacy mongo extension’s API using the new mongodb extension and PHP library, which may be useful for those wishing to migrate existing applications.

意思是:当前mongo扩展比较老了,针对的是5.X的版本。以后就不再使用,逐渐被接替的是mongodb.so

安装mongodb扩展:
代码语言:javascript
代码运行次数:0
复制
cd /usr/local/src/

wget https://pecl.php.net/get/mongodb-1.3.0.tgz 

tar zxvf mongodb-1.3.0.tgz

cd mongodb-1.3.0

/usr/local/php-fpm/bin/phpize

./configure --with-php-config=/usr/local/php-fpm/bin/php-config

make && make install

echo $?

vi /usr/local/php-fpm/etc/php.ini 
//增加 extension = mongodb.so

/usr/local/php-fpm/bin/php -m
安装mongo扩展(和 mongodb一样的):
代码语言:javascript
代码运行次数:0
复制
cd /usr/local/src/

wget https://pecl.php.net/get/mongo-1.6.16.tgz 

tar zxvf mongo-1.6.16.tgz

cd mongo-1.6.16

/usr/local/php-fpm/bin/phpize

./configure --with-php-config=/usr/local/php-fpm/bin/php-config

make && make install

vi /usr/local/php-fpm/etc/php.ini 
//增加 extension = mongo.so

/usr/local/php-fpm/bin/php -m
创建集合:
代码语言:javascript
代码运行次数:0
复制
vim /data/wwwroot/www.haha.com/mongo.php

创建集合的代码片段如下:

代码语言:javascript
代码运行次数:0
复制
<?php
$m = new MongoClient(); // 连接
$db = $m->test; // 获取名称为 "test" 的数据库
$collection = $db->createCollection("runoob");
echo "集合创建成功";
?>

执行以上程序,输出结果如下:

代码语言:javascript
代码运行次数:0
复制
[[email protected]-01 mongo-1.6.16]# curl  localhost/mongo.php
集合创建成功

然后我们需要登录到mongodb去查看是否已经正常创建了集合!

代码语言:javascript
代码运行次数:0
复制
> use test
switched to db test
> show tables
runoob

已经正常创建了!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016/10/18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、MongoDB创建集合
  • 二、PHP连接MongoDB-mongodb.so
    • 安装mongodb扩展:
    • 安装mongo扩展(和 mongodb一样的):
    • 创建集合:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档