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


Posted in Javascript onNovember 11, 2012

在博主的威逼之下特为大家进行一下小分享,特此申明博主人品非常淳朴只是威逼,绝对没有利诱。
由于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;查看命令提示

php对mongodb的扩展(初识如故)
三、接下来,就是跟所有数据库一样的操作要加一个用户的防问权限
但是些时创建的用户没有查看集合的权限,怎么办呢!其实也好办,我已经替大家头疼过了,所以能够坚持用心看到这里的同学不会再头疼了。
在刚才进入的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”

php对mongodb的扩展(初识如故)
进入之后可以看到

php对mongodb的扩展(初识如故)
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

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

Javascript 相关文章推荐
JavaScript省市联动实现代码
Feb 15 Javascript
jQuery的文档处理程序详解
May 10 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
Oct 17 Javascript
JS获取鼠标坐标并且根据鼠标位置不同弹出不同内容
Jun 12 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
Jun 13 Javascript
JS实现按钮颜色切换效果
Sep 05 Javascript
webpack配置之后端渲染详解
Oct 26 Javascript
解决vue+webpack打包路径的问题
Mar 06 Javascript
Vuejs监听vuex中值的变化的方法示例
Dec 02 Javascript
ES6知识点整理之Proxy的应用实例详解
Apr 16 Javascript
vue+element模态框中新增模态框和删除功能
Jun 11 Javascript
react组件基本用法示例小结
Apr 27 Javascript
JavaScript判断DOM何时加载完毕的技巧
Nov 11 #Javascript
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
Nov 11 #Javascript
jQuery语法总结和注意事项小结
Nov 11 #Javascript
javascript继承之为什么要继承
Nov 10 #Javascript
jquery表单验证使用插件formValidator
Nov 10 #Javascript
js 判断checkbox是否选中的操作方法
Nov 09 #Javascript
JS的replace方法详细介绍
Nov 09 #Javascript
You might like
基于HTTP长连接的"服务器推"技术的php 简易聊天室
2009/10/31 PHP
php编程实现获取excel文档内容的代码实例
2011/06/28 PHP
php旋转图片90度的方法
2013/11/07 PHP
php实现图片上传并进行替换操作
2016/03/15 PHP
PHP 多进程与信号中断实现多任务常驻内存管理实例方法
2019/10/04 PHP
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
2013/01/24 Javascript
jquery获取特定name所有选中的checkbox,支持IE9标准模式
2013/03/18 Javascript
js左侧三级菜单导航实例代码
2013/09/13 Javascript
可以用鼠标拖动的DIV实现思路及代码
2013/10/21 Javascript
IE浏览器中图片onload事件无效的解决方法
2014/04/29 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
2016/02/14 Javascript
JavaScript你不知道的一些数组方法
2017/08/18 Javascript
AngularJS 中ui-view传参的实例详解
2017/08/25 Javascript
js获取文件里面的所有文件名(实例)
2017/10/17 Javascript
基于vue.js无缝滚动效果
2018/01/25 Javascript
详解vue-cli3多环境打包配置
2019/03/28 Javascript
基于javascript实现碰撞检测
2020/03/12 Javascript
js+css实现全屏侧边栏
2020/06/16 Javascript
node.js爬虫框架node-crawler初体验
2020/10/29 Javascript
python使用urllib模块和pyquery实现阿里巴巴排名查询
2014/01/16 Python
Win7上搭建Cocos2d-x 3.1.1开发环境
2014/07/03 Python
Python使用函数默认值实现函数静态变量的方法
2014/08/18 Python
python 上下文管理器使用方法小结
2017/10/10 Python
浅谈DataFrame和SparkSql取值误区
2018/06/09 Python
python实现汽车管理系统
2018/11/30 Python
pycharm 更改创建文件默认路径的操作
2020/02/15 Python
Python实现爬取网页中动态加载的数据
2020/08/17 Python
一套C#面试题
2013/10/09 面试题
感恩寄语大全
2014/04/11 职场文书
法院四风对照检查材料思想汇报
2014/10/06 职场文书
预备党员群众路线思想汇报2014
2014/10/25 职场文书
护士长2014年终工作总结
2014/11/11 职场文书
MySQL创建索引需要了解的
2021/04/08 MySQL
MongoDB使用profile分析慢查询的步骤
2021/04/30 MongoDB
redis不能访问本机真实ip地址的解决方案
2021/07/07 Redis
GoFrame框架数据校验之校验结果Error接口对象
2022/06/21 Golang