zoukankan      html  css  js  c++  java
  • MongoDB 安装及使用

    一.MongoDB 服务端安装,命令行语句

    1.去官网下载最新mongodb安装包,解压--剪贴移动--重命名
    cd /tmp
    curl -O http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.4.tgz
    tar zxf mongodb-linux-x86_64-2.6.4.tgz
    mv mongodb-linux-x86_64-2.6.4 /usr/local/mongoDB

    2.安装--建立数据文件夹---日志文件和文件夹
    cd /usr/local/mongoDB

    mkdir data

    mkdir logs

    cd logs
    touch db.log

    cd ../bin

    ./mongod --dbpath=/usr/local/mongoDB/data --logpath=/usr/local/mongoDB/logs/db.log --fork


    3.编辑配置文件,加入开机启动
    vim /etc/rc.local

    /usr/local/mongoDB/bin/mongod --dbpath=/usr/local/mongoDB/data --logpath=/usr/local/mongoDB/logs/db.log --fork

    4.打开mongodb 终端
    /usr/local/mongoDB/bin/mongo

    查看数据库 show dbs

    选择或创建数据库 use test

    新建一个user表 db.user

    插入数据 db.user.save({"a":1,"b":2});

    查找所用数据 db.user.find();

    查看表 show tables | show collections

    删除数据库 db.dropDatabase();(*先进入数据库,要有分号‘;’)

    删除表 db.cccc.drop(); (同上!)


    二.MongoDB PHP 扩展安装

    1.选择适当版本的mongoDB --http://pecl.php.net/package/mongo

    cd /tmp
    curl -O http://pecl.php.net/get/mongo-1.4.1.tgz
    tar zxf mongo-1.4.1.tgz
    cd mongo-1.4.1/

    2.编译 --需要知道phpize 和php-config 路劲
    whereis phpize
    whereis php-config

    /usr/bin/phpize

    ls

    ./configure --with-php-config=/usr/bin/php-config

    make && make install

    cd /usr/lib64/php/modules

    ls

    vim /etc/php.ini

    extension = mongo.so

    重启httpd

    三.PHP 操作 MongoDB

    $conn=new Mongo();//最简单的连接
    $db = $conn->test;//选择或者创建test数据库
    $collection = $db->user;//选择表

    //新增
    //$obj = array( "title" => "java".rand(1,1111), "author" => "Bill Watterson","age"=>mt_rand(1,100));
    //$collection->insert($obj);
    //echo $obj['_id'].'<br>';

    //删除集合
    //$collection->remove();

    //修改
    //$where = array('author'=>'Bill Watterson');
    //$newdata = array('$set' =>array('title'=>'ngix1111'));
    //$upsert = array('upsert'=>false); //不存在修改的数据时,默认false是否插入这条数据
    //$multi = array('multiple'=>true); //是否修改所有匹配的记录,默认false只修改一条
    //$collection->update($where,$newdata,$multi);

    //查询
    //$collection->count();//总数

    //注:$gt为大于、$gte为大于等于、$lt为小于、$lte为小于等于、$ne为不等于、$exists不存在
    //$where = array('age'=>array('$gt'=>10,'$lte'=>40));
    //echo $collection->count($where);

    $query = array('age'=>array('$gt'=>60)); //查询条件
    $fields = array('_id'=>false,'author'=>false);//显示字段
    //$cursor = $collection->find();//获得所有记录
    $cursor = $collection->find($query,$fields);

    //排序
    //$cursor->sort(array('age'=>-1));//(-1倒序,1正序)
    //只显示部分记录
    //$cursor->limit(4);//只显示100行

    //foreach遍历
    foreach ($cursor as $key=>$value) {
    echo "<pre>";
    print_r($value);
    echo "</pre>";
    }

    //while遍历
    /*
    while($cursor->hasNext()){
    $r = $cursor->getNext();
    echo "<pre>";
    print_r($r);
    echo "</pre>";
    }
    */

    //$array= iterator_to_array($cursor);//数组键名是$id
    $conn->close();

  • 相关阅读:
    Python标准库--abc模块
    Python标准库--argparse模块
    爬虫基础
    jQuery基础
    前端基础之javascript
    web前端之HTML
    MySQL常用语句
    多线程和多进程
    socket网络编程
    异常处理
  • 原文地址:https://www.cnblogs.com/bgcolor/p/3955151.html
Copyright © 2011-2022 走看看