无为清净楼资源网 Design By www.qnjia.com
nosql很火,mongodb做为一款优秀的分布式文件存储的数据库,也得到了不小的关注,http://weibo.com/k/mongodb 新浪微博中每天现在约有20多条信息。
官网:http://www.mongodb.org/
下载:http://www.mongodb.org/downloads
PHP扩展:http://cn.php.net/mongo
我选择了windows的安装包,下载了Windows 32-bit的1.8.2版本,以下是安装记录:
解压到了D:\www\mongodb
cd d:\www
bin\mongod.exe --dbpath=d:/www/mongodb/data
Sat Jul 09 09:03:28 [initandlisten] db version v1.8.2, pdfile version 4.5
复制代码 代码如下:
Sat Jul 09 09:03:28 [initandlisten] git version: 433bbaa14aaba6860da15bd4de8edf6
00f56501b
Sat Jul 09 09:03:28 [initandlisten] build sys info: windows (5, 1, 2600, 2, 'Ser
vice Pack 3') BOOST_LIB_VERSION=1_35
Sat Jul 09 09:03:28 [initandlisten] waiting for connections on port 27017
Sat Jul 09 09:03:28 [websvr] web admin interface listening on port 28017
这样mongodb就在运行了,但DOS操作还不能关闭,一关闭就停了。因此需要将其设为系统服务:
D:\www\mongodb>bin\mongod.exe --dbpath=d:/www/mongodb/data --logpath=d:/www/mongodb/mongodb.log --install
复制代码 代码如下:
all output going to: d:/www/mongodb/mongodb.log
Creating service MongoDB.
Service creation successful.
Service can be started from the command line via 'net start "MongoDB"'.
这样就可以在系统服务(services.msc)里就多了个MongoDB的服务,可以设置成 自动 来让windows每次启动时自动启动Mongo DB。
下面看其自带的客户端,仍然在其bin目录下,文件名为mongo.exe
bin\mongo.exe
复制代码 代码如下:
MongoDB shell version: 1.8.2
connecting to: test
在http://cn.php.net/mongo下载mongodb的php扩展,PHP 5.2 VC6 Thread-Safe Mongo extension。
5.2版只有5.2.13的mongodb.dll。本地php重装了5.2.13,可以用了。
主要代码:
复制代码 代码如下:
$m = new Mongo(); // 默认连接本机的27017端口
$mdb = $m -> hx; // 选择hx数据库,如果以前没有,则会自动创建,也可以用$m->selectDB("hx");
$collection = $mdb->hx_site; //选择hx里面的hx_site集合,相当于取hx库里的hx_site表,也可以使用$mdb->selectCollection("hx_site");
[html]
批量插入:
[code]
for($i=53;$i<84;$i++){
$start = $i * 10000;
$end = ($i+1) * 10000;
$sql = "SELECT * FROM hx_site WHERE id > $start AND id <= $end";
$tmp = $db->query($sql);
$arrs = array();
while ($arr = $db->fetch_array($tmp)) {
$arrs[] = $arr;
}
$collection->batchInsert($arrs);
}
用php将本地有83.6w条数据的mysql转成mongodb,每次插入1w条,一次需要109~125ms。
复制代码 代码如下:
/*
mysql语句对应的mongodb语法: https://www.jb51.net/article/28694.htm
取pagerank=5,按id倒序,取30条
类似于 SELECT * FROM hx_site WHERE pagerank = 5 ORDER BY id DESC LIMIT 30
*/
$cursor = $collection->find(array('pagerank'=>'5'))->sort(array('id'=>-1))->limit(30);
foreach ($cursor as $obj) { //遍历所有集合中的文档
echo $obj["id"].' '.$obj["domain"] . "<br>";
}
没索引的情况下取一条记录,656ms,mysql需要0.7s,基本上没区别。
count(*)某条件,800多ms,加索引后100多ms
官网:http://www.mongodb.org/
下载:http://www.mongodb.org/downloads
PHP扩展:http://cn.php.net/mongo
我选择了windows的安装包,下载了Windows 32-bit的1.8.2版本,以下是安装记录:
解压到了D:\www\mongodb
cd d:\www
bin\mongod.exe --dbpath=d:/www/mongodb/data
Sat Jul 09 09:03:28 [initandlisten] db version v1.8.2, pdfile version 4.5
复制代码 代码如下:
Sat Jul 09 09:03:28 [initandlisten] git version: 433bbaa14aaba6860da15bd4de8edf6
00f56501b
Sat Jul 09 09:03:28 [initandlisten] build sys info: windows (5, 1, 2600, 2, 'Ser
vice Pack 3') BOOST_LIB_VERSION=1_35
Sat Jul 09 09:03:28 [initandlisten] waiting for connections on port 27017
Sat Jul 09 09:03:28 [websvr] web admin interface listening on port 28017
这样mongodb就在运行了,但DOS操作还不能关闭,一关闭就停了。因此需要将其设为系统服务:
D:\www\mongodb>bin\mongod.exe --dbpath=d:/www/mongodb/data --logpath=d:/www/mongodb/mongodb.log --install
复制代码 代码如下:
all output going to: d:/www/mongodb/mongodb.log
Creating service MongoDB.
Service creation successful.
Service can be started from the command line via 'net start "MongoDB"'.
这样就可以在系统服务(services.msc)里就多了个MongoDB的服务,可以设置成 自动 来让windows每次启动时自动启动Mongo DB。
下面看其自带的客户端,仍然在其bin目录下,文件名为mongo.exe
bin\mongo.exe
复制代码 代码如下:
MongoDB shell version: 1.8.2
connecting to: test
在http://cn.php.net/mongo下载mongodb的php扩展,PHP 5.2 VC6 Thread-Safe Mongo extension。
5.2版只有5.2.13的mongodb.dll。本地php重装了5.2.13,可以用了。
主要代码:
复制代码 代码如下:
$m = new Mongo(); // 默认连接本机的27017端口
$mdb = $m -> hx; // 选择hx数据库,如果以前没有,则会自动创建,也可以用$m->selectDB("hx");
$collection = $mdb->hx_site; //选择hx里面的hx_site集合,相当于取hx库里的hx_site表,也可以使用$mdb->selectCollection("hx_site");
[html]
批量插入:
[code]
for($i=53;$i<84;$i++){
$start = $i * 10000;
$end = ($i+1) * 10000;
$sql = "SELECT * FROM hx_site WHERE id > $start AND id <= $end";
$tmp = $db->query($sql);
$arrs = array();
while ($arr = $db->fetch_array($tmp)) {
$arrs[] = $arr;
}
$collection->batchInsert($arrs);
}
用php将本地有83.6w条数据的mysql转成mongodb,每次插入1w条,一次需要109~125ms。
复制代码 代码如下:
/*
mysql语句对应的mongodb语法: https://www.jb51.net/article/28694.htm
取pagerank=5,按id倒序,取30条
类似于 SELECT * FROM hx_site WHERE pagerank = 5 ORDER BY id DESC LIMIT 30
*/
$cursor = $collection->find(array('pagerank'=>'5'))->sort(array('id'=>-1))->limit(30);
foreach ($cursor as $obj) { //遍历所有集合中的文档
echo $obj["id"].' '.$obj["domain"] . "<br>";
}
没索引的情况下取一条记录,656ms,mysql需要0.7s,基本上没区别。
count(*)某条件,800多ms,加索引后100多ms
标签:
mongodb
无为清净楼资源网 Design By www.qnjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无为清净楼资源网 Design By www.qnjia.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月16日
2024年11月16日
- 第五街的士高《印度激情版》3CD [WAV+CUE][2.4G]
- 三国志8重制版哪个武将智力高 三国志8重制版智力武将排行一览
- 三国志8重制版哪个武将好 三国志8重制版武将排行一览
- 三国志8重制版武将图像怎么保存 三国志8重制版武将图像设置方法
- 何方.1990-我不是那种人【林杰唱片】【WAV+CUE】
- 张惠妹.1999-妹力新世纪2CD【丰华】【WAV+CUE】
- 邓丽欣.2006-FANTASY【金牌大风】【WAV+CUE】
- 饭制《黑神话》蜘蛛四妹手办
- 《燕云十六声》回应跑路:年内公测版本完成95%
- 网友发现国内版《双城之战》第二季有删减:亲亲环节没了!
- 邓丽君2024-《漫步人生路》头版限量编号MQA-UHQCD[WAV+CUE]
- SergeProkofievplaysProkofiev[Dutton][FLAC+CUE]
- 永恒英文金曲精选4《TheBestOfEverlastingFavouritesVol.4》[WAV+CUE]
- 群星《国风超有戏 第9期》[320K/MP3][13.63MB]
- 群星《国风超有戏 第9期》[FLAC/分轨][72.56MB]