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 相关文章推荐
在ASP.NET中使用JavaScript脚本的方法
Nov 12 Javascript
jQuery使用CSS()方法给指定元素同时设置多个样式
Mar 26 Javascript
js实现时间显示几天前、几小时前或者几分钟前的方法集锦
May 29 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
Aug 04 Javascript
Knockoutjs 学习系列(一)ko初体验
Jun 07 Javascript
基于jQuery实现Accordion手风琴自定义插件
Oct 13 Javascript
基于Bootstrap的Java开发问题汇总(Spring MVC)
Jan 15 Javascript
面试常见的js算法题
Mar 23 Javascript
js实现移动端轮播图效果
Dec 09 Javascript
bootstrap confirmation按钮提示组件使用详解
Aug 22 Javascript
JS实现非首屏图片延迟加载的示例
Jan 06 Javascript
JavaScript工具库MyTools详解
Jan 01 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
长波有什么东西
2021/03/01 无线电
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
php中session退出登陆问题
2014/02/27 PHP
wordpress安装过程中遇到中文乱码的处理方法
2015/04/21 PHP
分享8个Laravel模型时间戳使用技巧小结
2020/02/12 PHP
JavaScript聚焦于第一个字段的代码
2010/10/15 Javascript
jQuery UI Autocomplete 1.8.16 中文输入修正代码
2012/04/16 Javascript
细说javascript函数从函数的构成开始
2013/08/29 Javascript
登陆成功后自动计算秒数执行跳转
2014/01/23 Javascript
iframe调用父页面函数示例详解
2014/07/17 Javascript
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
JQuery中解决重复动画的方法
2016/10/17 Javascript
vue实现表格增删改查效果的实例代码
2017/07/18 Javascript
vue中Npm run build 根据环境传递参数方法来打包不同域名
2018/03/29 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
node.js处理前端提交的GET请求
2019/08/30 Javascript
python网络编程示例(客户端与服务端)
2014/04/24 Python
python使用urllib2提交http post请求的方法
2015/05/26 Python
python正则表达式re之compile函数解析
2017/10/25 Python
python使用thrift教程的方法示例
2019/03/21 Python
在python中实现同行输入/接收多个数据的示例
2019/07/20 Python
JupyterNotebook 输出窗口的显示效果调整方法
2020/04/13 Python
HTML5未来发展趋势
2016/02/01 HTML / CSS
HTML5中的网络存储实现方式
2020/04/28 HTML / CSS
来自全球大都市的高级街头服饰:Pegador
2018/01/03 全球购物
房屋委托书范本
2014/04/04 职场文书
大学新学期计划书
2014/04/28 职场文书
最新优秀教师个人先进事迹材料
2014/05/06 职场文书
119消防日活动总结
2014/08/29 职场文书
六五普法宣传标语
2014/10/06 职场文书
辞职信怎么写
2015/02/27 职场文书
教师节简报
2015/07/20 职场文书
Python 解决空列表.append() 输出为None的问题
2021/05/23 Python
关于python中模块和重载的问题
2021/11/02 Python
避坑之 JavaScript 中的toFixed()和正则表达式
2022/04/19 Javascript