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

MongoDB 操作配置

作者头像
老七Linux
发布2018-05-09 17:13:42
7850
发布2018-05-09 17:13:42
举报
一、MongoDB创建集合

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

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可选)指定封顶集合允许在文件的最大数量。

查看集合:

> show tables
mycol
system.users
system.version

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

db.Account.insert({AccountID:1,UserName:"123",password:"123456"})

更新:

db.Account.update({AccountID:1},{"$set":{"Age":20}})

查看所有文档:

db.Account.find()

根据条件查询:

db.Account.find({AccountID:1})

根据条件删除:

db.Account.remove({AccountID:1})

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

db.Account.drop()

先进入对应的库:

use dbname

然后查看集合状态:

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扩展:
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一样的):
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
创建集合:
vim /data/wwwroot/www.haha.com/mongo.php

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

<?php
$m = new MongoClient(); // 连接
$db = $m->test; // 获取名称为 "test" 的数据库
$collection = $db->createCollection("runoob");
echo "集合创建成功";
?>

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

[[email protected]-01 mongo-1.6.16]# curl  localhost/mongo.php
集合创建成功

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

> 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一样的):
        • 创建集合:
        相关产品与服务
        云数据库 MongoDB
        腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档