官方网址 http://www.mongodb.org
1、下载mongodb-win32-i386-latest.zip 解压
mongodb 3.1.5 需要 win7 下 下载安装内存补丁
https://support.microsoft.com/zh-cn/hotfix/kbhotfix?kbnum=2731284&kbln=zh-cn
2、解压到i:\mongodb 目录下 目录结构如下
i:\mongodb\bin
i:\mongodb\data 此目录如果不存在就建立
3、命令控制台
mongod.exe --version 查看服务程序的版本号
临时启动mongod 服务器。窗口不能关闭。
I:\mongodb\bin>mongod --storageEngine=mmapv1 --dbpath i:\mongodb\data --journal --logpath i:\mongodb\log\log.txt
4、安装服务器
mongodb\bin>mongod
--install
--serviceName mongodb
--logpath i:\mongodb\log\log.txt
--logappend
--dbpath i:\mongodb\data
–directoryperdb
安装mongodb服务进程
mongod.exe --install --serviceName mongodb --storageEngine=mmapv1 --logpath f:\mongodb\log\log.txt --logappend --dbpath f:\mongodb\data -directoryperdb --journal
mongod.exe --remove --storageEngine=mmapv1 --serviceName mongodb --logpath i:\mongodb\log\log.txt --logappend --dbpath i:\mongodb\data -directoryperdb --journal
mysqld mongod 主进程
mysql mongo 客户端
安装服务
mongod --install --serviceName mongodb --storageEngine=mmapv1 --dbpath f:\mongodb\data --journal --logpath f:\mongodb\log\log.txt
mongod --install --serviceName mongodb --storageEngine=mmapv1 --dbpath f:\mongodb\data --directoryperdb --journal --logpath f:\mongodb\log\log.txt --logappend
mongod --remove --serviceName mongodb --storageEngine=mmapv1 --dbpath i:\mongodb\data --directoryperdb --journal --logpath i:\mongodb\log\log.txt --logappend
停止 net stop mongodb
卸载服务 mongod --remove --serviceName mongodb
启动 net start mongodb
卸载服务
mongod --remove --serviceName mongodb --storageEngine=mmapv1 --dbpath i:\mongodb\data --journal --logpath i:\mongodb\log\log.txt
登录mongo数据库服务器
i:\mongodb\bin>mongo 回车
>db.version();
>cls 清屏命令
建立数据库
use 数据库;
db.集合名.save({sanem:'李四',sage:18,saddress:"郑州"});
db.集合名.find(); select * from 表名;
show dbs; 查看所有的数据库
show tables;两者是相等的
show collections;
db.stu.save({name:"李四",age:22,address:"郑州市"});
db.stu.save({name:"赵六",age:22,address:"郑州市"});
db.stu.save({name:"张三",age:22,address:"郑州市"});
db.stu.save({name:"张三丰",age:22,address:"郑州市"});
db.stu.save({name:"李勇",age:22,address:"郑州市"});
mongod --dbpath i:\mongodb\data --journal --logpath i:\mongodb\log\log.txt
mongod.exe --storageEngine defaults --dbpath i:\mongodb\data --journal --logpath i:\mongodb\log\log.txt
mongod.exe --storageEngine wiredTiger --dbpath i:\mongodb\data --journal --logpath i:\mongodb\log\log.txt
mongod --storageEngine wiredTiger --dbpath i:/mongodb/data
Hotfix KB2731284 or later update is not installed, will zero-out data files
db.student.find(); 查看student表里面的数据
查看表/集合的状态
查看库的状态
查询总记录数
查看帮助
删除数据库的信息及表格
主键冲突,save,直接覆盖,insert 主键冲突不可以插入
> db.user.remove({}); 清除user集合中的所有文档
> db.user.remove({_id:5});
> db.user.remove({account:'rrrt'});
db.user.remove({ "_id" : ObjectId("558e42ca6c8b9206ccef1a7d")}); 删除系统自创的id数据
数据的查询
db.user.find(); 相当于 select * from user;
db.user.find({条件区域},{要显示的属性字段});
db.user.find({条件区域},{account:1,_id:false}); 查询的结果只显示id和账号;
1true,0false;
db.user.find({_id:($gt:3)});
$lte 小于等于
$lt 小于
$gt 大于
$gte 大于等于
> db.user.find({_id:{$gt:1}});
查询a开头的账号
> db.user.find({account:/^a.*$/});
相当于
select * from user where account like 'a%';
> db.user.find({account:/a/});查找包含a的
select * from user where account like '%a%';
双条件查询
> db.user.find({_id:5,account:'aa'});
相当于
select * from user where _id=4 and account='aa';
db.user.save({account:'c3',age:20});
db.user.save({account:'a2',age:18});
db.user.save({account:'a1',age:18});
查询账号等于a1,或者年龄大于等于18的
db.user.find({$or:[{account:'a1'},{age:{$gte:18}}]});
删除年龄大于等于25岁的
> db.user.remove({age:{$gte:25}});
显示3条记录
> db.user.find().limit(3);
> db.user.find().limit(2).skip(2);一页2两条,显示第二页
数据的修改
,第一组条件,第二组改什么
> db.user.update({account:'a1'},{$set:{account:'myroot'}});
> db.user.update({_id:5},{$set:{account:'www',password:'111'}});
默认情况下只修改一条记录
> db.user.update({account:'a1'},{$set:{account:'abc'}});
multi:true 修改多个文档结果
> db.user.update({account:'a1'},{$set:{account:'abc'}},{multi:true});
年龄全部修改为88
> db.user.update({},{$set:{age:88},{multi:true}});
每个人的成绩加一
> db.user.update({},{$inc:{age:1}},{multi:true});
统计账号名称中,含有b字母的文档总数
相当于
select count(*) from user where account like '%b%';
> db.user.find({account:/b/});
{ "_id" : ObjectId("558e49a06c8b92
> db.user.find({account:/b/}).coun
1
给所有的用户加爱好,添加一个字段,属性love
> db.user.update({},{$set:{love:['音乐','有戏']}},{multi:1});
删除其中的一列 文档的属性 $unset
> db.user.update({},{$unset:{password:1}},{multi:1});
修改数组里面的元素
添加一列$push $addToSet 都是加入
> db.user.update({_id:5},{$push:{love:'打打'}});
> db.user.update({_id:5},{$addToSet:{love:'打'}});
移除数组中最后一个元素
> db.user.update({_id:5},{$pop:{love:1}});
删除id:5 的音乐
> db.user.update({_id:5},{$pull:{love:'音乐'}});
> db.createCollection('aa');
{ "ok" : 1 }
建空表
删空表在
> db.aa.drop();
批量执行js脚本直接编写js 建库建表
var conn= new Mongo();
//建库 mydb库
var mydb=conn.getDB('mydb');
//建表hnsc_link
mydb.hnsc_link.save({title:'百度',url:'http://www.baidu.com',img:null,flg:true});
> load('d:/a.js'); //引入
true
> db;
建立空表
> db.createCollection('ccc');
{ "ok" : 1 }
删除cc表
> db.ccc.drop();
true
php配合mogodb驱动的下载
http://docs.mongodb.org
http://pecl.php.net/package/mongo
1、下载 php_mongo-1.6.9-5.6-ts-vc11-x86.zip
解压 复制php_mongo.dll 到i:/php/ext/目录下
2、打开php.ini文件添加如下
php_mongo.dll
3、修改apche/conf/httpd.conf
<Directory />
AllowOverride none
Require all granted
</Directory>
#### CGI模式 配置支持 ####
ScriptAlias /php/ "i:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"
<?php
//phpinfo();
$m = new MongoClient(); // 连接
$db = $m->mydb;
$c = $db->hnsc_link->find();
foreach($c as $doc){
echo $doc['title'];
}
php -m说缺少的dll文件,是因为php.ini里面的文件开的太多,没用的一定要去掉,提示的错误为日志错误
pdo 连接 mongodb
<?php
$m = new MongoClient();
$db = $m->abc;
$coll = $db->user;
$c = $coll->find([]);
foreach ($c as $doc){
echo $doc['account'].'<br>';
}