php对mongodb的扩展(初识如故)

在博主的威逼之下特为大家进行一下小分享,特此申明博主人品非常淳朴只是威逼,绝对没有利诱。
由于mongodb的相关中文资料较少,之后若有机会继续为大家分享。希望这点小分享能给大家带来收获,言归正传请往下看。

为什么说“初识如故”呢,因为mongodb的数据存储格式是一种由于MongoDB的文档结构为BJSON格式(BJSON全称:BinaryJSON),而BJSON格式本身就支持保存二进制格式的数据,因此可以把文件的二进制格式的数据直接保存到MongoDB的文档结构中。

MongoDB是由(database)、集合(collection)、文档对象(document)三个层次组成。
和关系型数据库的对应关系:

关系型数据库 MongoDB数据库

Database database
table collection

Row document
在MongoDB中可以建立索引,collection中有一个默认的隐藏字段_id,该字段。

安装使用

windows下安装mongodb和简单使用mongodb命令
一、下载,解压文件
到官方下载合适的版本 http://www.mongodb.org/downloads
例如:http://fastdl.mongodb.org/win32/mongodb-win32-i386-2.2.1.zip
解压后放到对应的盘符下面,例如:D:\mongodb
二、安装
1.把bin目录加入到环境变量中 D:\mongodb\bin
2.在D:\mongodb下创建data文件夹放数据用,还要在data文件下创建一个db文件夹,没有db文件夹mongodb不能正常启动
3.简单启动mongodb方法:
进入到bin目录下


代码如下:

C:\Documents and Settings\me>D:
D:\>cd mongodb/bin
D:\mongodb\bin>mongod –dbpath D:/mongodb/data
D:\mongodb\bin>mongod –dbpath D:/mongodb/data

显示如下内容:
Sun Jan 16 14:56:03 MongoDB starting : pid=860 port=27017 dbpath=D:/mongodb/d
ata 32-bit

** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data

** see http://blog.mongodb.org/post/137788967/32-bit-limitations

Sun Jan 16 14:56:03 db version v2.2.1, pdfile version 4.5
Sun Jan 16 14:56:03 git version: 0eb017e9b2828155a67c5612183337b89e12e291
Sun Jan 16 14:56:03 sys info: windows (5, 1, 2600, 2, ‘Service Pack 3′) BOOST_LI
B_VERSION=1_35
Sun Jan 16 14:56:03 [initandlisten] waiting for connections on port 27017
Sun Jan 16 14:56:03 [websvr] web admin interface listening on port 28017

注:必须先建立data文件夹和到bin目录下执行。mongoDB 服务端的默认连接端口是 27017

2.添加到注册表作为Windows服务启动,和mysql一样启动Windows时会自动启动服务,到bin目录下执行


代码如下:

D:\mongodb\bin>mongod --logpath D:\mongodb\log\log1.log --logappend
--dbpath D:\mongodb\data --directoryperdb --serviceName mongodb –install

完成后输出下面内容(360等杀毒软件会阻止,需要允许通过)
all output going to: D:\mongodb\logs\log1.log
Creating service mongodb
Service creation successful.
Service can be started from the command line via ‘net start “mongodb″‘.

D:\mongodb\bin>

其中:log\log1.log日志是以追加的方式输出的,–serviceName mongodb是服务名称
启动MongoDB:net start mongodb
停止MongoDB:net stop mongodb
注:添加到注册表后重启电脑在服务项里面可以看到已经启动,但服务仍然没有启动,重启服务发现给360安全卫士阻止了需要再次确定才能启动。

3.mongodb的简单使用命令,到bin命令下执行mongo.exe进入管理界面,默认是进入到test帐号。


代码如下:

D:\mongodb\bin>mongo.exe
MongoDB shell version: 2.2.1
connecting to: test
> show dbs;
admin
local

> help;查看命令提示


三、接下来,就是跟所有数据库一样的操作要加一个用户的防问权限
但是些时创建的用户没有查看集合的权限,怎么办呢!其实也好办,我已经替大家头疼过了,所以能够坚持用心看到这里的同学不会再头疼了。
在刚才进入的mongo.exe管理界面执行以下命令


代码如下:

>use admin
>db.auth("sa","sa")
>use web
>show collections

这回就畅通无阻了吧。

四、MongoDB创建数据库完全可以使用use 如下: use web; 这样就创建了一个数据库
切换到web数据库,如果不存在则在插入数据后会自动创建一个,在data目录下可以看到新增了一个web的文件夹


代码如下:

> use web;

switched to db web
> db.my.save({a:10});向collection my 中保存一条信息,如果不存在collection会自动创建一个
> db.my.find();检索所有记录
{ “_id” : ObjectId(“4d32c9204e6100000000691e”), “a” : 10 }
> show collections;
my
system.indexes
>exit;退出

Mongodb的安装及用户权限设置已到此结束。
下面介绍几种图形话管理工具
1.使用图形话管理工具“MongoVUE 0.9.7.2”


进入之后可以看到


2.一种比较推荐的管理软件是“rockmongo”
需要php运行环境的支持,本人更喜欢它,因为php程序员有着现成的环境不用白不用,呵呵。
(1).下载一个rockmongo,解压后放在web目录下 下载地址:http://rockmongo.com/downloads
如果你没有php的运行环境的话,但又想使用rockmongo的话,可以在下载地址中集成包下载。
(2).下载一个php对mongodb的支持 php_mongo.dll 下载地址:https://github.com/mongodb/mongo-php-driver/downloads
(3).在php.ini中加入这行代码 extension=php_mongo.dll 然后重启apache,查看php_info


表示已经安装成功
(4).在浏览器中输入 rockmongo 的地址,出现登录框,登录就可以了。默认的用户是:admin 密码:admin
还有很多种其他工具,大家可以慢慢探索。

(0)

相关推荐

  • php7安装mongoDB扩展的方法分析

    本文讲述了php7安装mongoDB扩展的方法.分享给大家供大家参考,具体如下: 这里我们使用pecl命令来安装 首先来到php7的安装目录 $ /usr/local/php7/bin/pecl install mongodb 回车,执行成功后,会输出以下结果: -- Build process completed successfully Installing '/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/mongo

  • centos yum 安装 mongodb 以及php扩展

    一,安装mongodb,php扩展 [root@localhost ~]# yum install php-pecl-mongo mongodb mongodb-devel mongodb-server php扩展,mongodb服务端,mongodb客户就装好了. 二,配置/etc/mongodb.conf [root@localhost www]# cat /etc/mongodb.conf |awk '{if($0 !~ /^$/ && $0 !~ /^#/) {print $0}}

  • php对mongodb的扩展(初出茅庐)

    我们的php mongodb也能做mysql.sqlserver能做的几乎所有功能,本文将详细介绍 一.操作符 操作符相信大家肯定都知道了,就是等于.大于.小于.不等于.大于等于.小于等于,但是在mongodb里不能直接使用这些操作符.在mongodb里的操作符是这样表示的: (1) $gt > (大于) (2) $lt < (小于) (3) $gte >= (大于等于) (4) $lt <= (小于等于) (5) $ne != (不等于) (6) $in in (包含) (7)

  • php操作MongoDB基础教程(连接、新增、修改、删除、查询)

    复制代码 代码如下: //连接localhost:27017$conn = new Mongo(); //连接远程主机默认端口$conn = new Mongo('test.com'); //连接远程主机22011端口$conn = new Mongo('test.com:22011'); //MongoDB有用户名密码$conn = new Mongo("mongodb://${username}:${password}@localhost") //MongoDB有用户名密码并指定数

  • 解析PHP中常见的mongodb查询操作

    复制代码 代码如下: <?php// 欄位字串為$querys = array("name"=>"shian"); // 數值等於多少$querys = array("number"=>7); // 數值大於多少$querys = array("number"=>array('$gt' => 5)); // 數值大於等於多少$querys = array("number"=&g

  • 在php7中MongoDB实现模糊查询的方法详解

    前言 在实际开发中, 有不少的场景需要使用到模糊查询, MongoDB shell 模糊查询很简单: db.collection.find({'_id': /^5101/}) 上面这句就是查询_id以'5101'开始的内容. 在老的MogoDB中模糊查询挺简单的,这里简单记录下模糊查询的操作方式: 命令行下: db.letv_logs.find({"ctime":/uname?/i}); php操作 $query=array("name"=>new Mongo

  • PHP中MongoDB数据库的连接、添加、修改、查询、删除等操作实例

    PHP 扩展mongon.mod.dll下载http://cn.php.net/manual/en/mongo.installation.php#mongo.installation.windows 然后php.ini添加 extension=php_mongo.dll 最后phpinfo() 查找到 表标PHP已经自带了mongo功能,你就可以操作下面的代码(但是你必须有安装mongodb服务器) 一.连接数据库 使用下面的代码创建一个数据库链接 复制代码 代码如下: <?php $conne

  • PHP对MongoDB[NoSQL]数据库的操作

    一.MongoDB简介 MongoDB (名称来自"humongous") 是一个可扩展的.高性能.开源.模式自由.面向文档的数据库,集文档数据库.键值对存储和关系型数据库的优点于一身.官方站点:http://www.mongodb.org/,MongoDB特点: •面向文档存储(类JSON数据模式简单而强大)•动态查询•全索引支持,扩展到内部对象和内嵌数组•查询记录分析•快速,就地更新•高效存储二进制大对象 (比如照片和视频)•复制和故障切换支持•Auto-Sharding自动分片支

  • PHP7之Mongodb API使用详解

    编译安装PHP7 编译安装PHP7 Mongdb扩展 #先安装一个依赖库yum -y install openldap-develwget https://pecl.php.net/get/mongodb-1.1.1.tgz /home/server/php7/bin/phpize   #根据自己编译的PHP环境而定./configure --with-php-config=/home/server/php7/bin/php-config make && make install#如果成功

  • Thinkphp使用mongodb数据库实现多条件查询方法

    有个项目用了mongodb数据库,查询条件有and也有or,按Thinkphp官方手册,使用复合查询(_complex),getLastSql输出查询语句,发现查询条件是空的.用字符串模式查询(_string),请求字符串查询(_query)无法满足需求.估计用mongodb的用户不多,thinkphp官方对这方面支持也不够.打开thinkphp的mongodb驱动,Thinkphp/Extend/Driver/Db/DbMongo.class.php,找到protected function

  • centos7 + php7 lamp全套最新版本配置及mongodb和redis教程详解

    所有软件的版本一直会升级,注意自己当时的版本是不是已经更新了. 首先装centos7 如果你忘了设置swap分区,下面的文章可以教你怎么补一个上去: http://www.jb51.net/os/201409/338170.html 装好centos7后默认是不能上网的 cd /etc/sysconfig/network-scripts/ 找到形如ifcfg-enp0s3的文件,修改onboot=yes 然后 service network restart 安装apache2 (centos里叫

随机推荐