Linux下MongoDB数据库的安装和CRUD操作

  • 原创
  • |
  • 浏览:474
  • |
  • 更新:

本文是Linux系统下mongodb安装入门及CRUD操作教程,大神略过。

mongodb是高性能的nosql服务器,由C++开发,以键/值方式存储,非常适合大数据实时储存的使用场景。本篇以我工作中用到的业务场景,即车载设备GPS上报地理数据,二十万设备每5秒上报一次GPS到服务器为例,演示一下mongodb的安装入门以及配合PHP对mongodb数据库增删改查的操作.

Linux下MongoDB数据库的安装和CRUD操作
Linux下MongoDB数据库的安装和CRUD操作

工具/原料

  • linux系统服务器
  • mongodb数据库
  • PHP语言

MongoDB的安装

  1. 1

    查看系统发行版本,linux命令:

    #cat /proc/version 

    Linux version 2.6.32-573.el6.x86_64 (mockbuild@c6b9.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) ) #1 SMP Thu Jul 23 15:44:03 UTC 2015

    看到我们是centos版本, 而centos是基于redhat版的,所以我们看列表中有centos版就下载centos版本,没有就下载redhat版本

    如果没有redhat版本就下载linux版本。

    Linux下MongoDB数据库的安装和CRUD操作
  2. 2

    百度mongodb找到mongodb官网mongodb点com,找到首页右上角,download进入下载页面

    1、选择linux系统,

    2、选择合适的发行版本, 如何选择见步骤一

    3、选择二进制包, All Version Binaries 

    Linux下MongoDB数据库的安装和CRUD操作
  3. 3

    进入linux-Mongodb二进制包下载列表,选择最新的版本,我们是正式使用,就不选debug版本,右键复制链接地址。

    Linux下MongoDB数据库的安装和CRUD操作
  4. 4

    进入我们要安装mongodb的服务器,进入/usr/local/src 目录,一般惯例安装源码包都放这里呢,下载压缩文件。

    #wget  你刚才复制的下载地址

    Linux下MongoDB数据库的安装和CRUD操作
  5. 4
    相关内容未经授权抓取自百度经验
  6. 5

    1、等待文件下载好,因为文件名有点乱,重命名下文件

    mv  刚下载的文件    mongodb.taz

    2、解压缩文件

    tar -zxvf mongodb.taz

    3、进入解压好的文件夹

    cd mongodb

    4、新建data,log数据库,新建mongodb.log日志文件

    Linux下MongoDB数据库的安装和CRUD操作
  7. 6

    安装好一切,进入到/usr/local/src/mongodb

    开始启动mongodb服务

    #./bin/mongod -port 10001 --dbpath data/ --logpath log/mongodb.log --fork

    mongodb默认端口27017,这里指定端口10001,

    --fork  指定后台运行

    如下图,启动成功。

    [root@localhost mongodb]# cd /usr/local/src/mongodb

    [root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath data/ --logpath log/mongodb.log --fork

    about to fork child process, waiting until server is ready for connections.

    forked process: 29039

    child process started successfully, parent exiting

    Linux下MongoDB数据库的安装和CRUD操作
  8. 7

    连接刚才安装的mongodb服务器,

    命令  mongo ip:端口号

    #./bin/mongo 127.0.0.1:10001

    如下图,

    查看数据库列表

    show dbs

     查看当前数据库

    db

    选择test数据库

    use  test 

    查看当前数据库所有的集合

    show collections 

    查看5条collectionName集合的记录

    db.collectionName.find().limit(5);

    Linux下MongoDB数据库的安装和CRUD操作
  9. 8

    刚才查询数据太多,使用pretty()命令格式化数据,看数据更人性化

    >db.startup_log.find().limit(1).pretty()

    Linux下MongoDB数据库的安装和CRUD操作
    END

MongoDB的CRUD操作

  1. 1

    除了用shell操作mongodb,在实际开发过程中,以PHP来操作Mongodb为例,短短几行代码实现了连接,插入,查询操作

    Linux下MongoDB数据库的安装和CRUD操作
  2. 2

    这里用没有采用复杂的mongodb类库,直接用原生写法创建连接实例,更多的用法如下

    //连接远程主机10001端口

    $this->_mongo = new MongoClient('mongodb://10.25.209.90:10001');

    //MongoDB有用户名密码并指定数据库POI

    $conn = new Mongo("mongodb://${username}:${password}@localhost/POI");

    //选择库$db = $this->_mongo->POI;//选择POICols

    return $db->POICols;

    //新增

    $user = array('name' => 'caleng', 'email' => 'admin#admin.com');

    $collection->insert($user);

    //修改

    $newdata = array('$set' => array("email" => "test@test.com"));

    $collection->update(array("name" => "caleng"), $newdata);

    //删除

    $collection->remove(array('name'=>'caleng'), array("justOne" => true));

    //查找

    $cursor = $collection->find();

    var_dump($cursor);

    //查找一条

    $user = $collection->findOne(array('name' => 'caleng'), array('email'));

    var_dump($user);

    //关闭数据库

    $con->close();

  3. 3

    注意在实际使用过程中,记得优化一下插入的数据,尽量用短符号,减少数据冗余,节省磁盘空间;这给出格式化函数示例。

    Linux下MongoDB数据库的安装和CRUD操作
    END
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。
展开阅读全部