win7下安装mongoDB数据库

第一步:到 http://www.mongodb.org/downloads 网站去下载对应系统的版本mongoDB数据库,如我下载的java

(1)建立一个D:\Program Files\mongoDB目录做为mongoDB的安装的目录,解压下载的数据库包,把整个bin文件复制到mongoDB目录下mongodb

(2)在mongoDB目录中建立子目录data,在data目录中建立子目录db,mongoDB的数据库文件默认位于data/db目录,可是它不会自动建立,应此你必须本身来。数据库

(3)接着在data目录中建立子目录log,在log目录下新建一个MongoDB.log文件,用来保存日志文件windows

(4)打开cmd命令行,定位到D:\Program Files\mongoDB\bin目录,输入命令:mongod --dbpath ../data/db启动mongoDB,注意必须指定数据库文件目录,不然会提示找不到/data/db目录。启动成功后,访问http://localhost:28017/就能够看见mongoDB的控制面板。app

(5)将mongoDB安装成windows服务工具

 使用管理员身份打开cmd,定位到D:\Program Files\mongoDB\bin目录,输入mongod --logpath "D:\Program Files\mongoDB\data\log\MongoDB.log" --logappend --dbpath "D:\Program Files\mongoDB\data\db" --directoryperdb --reinstall开发工具

执行成功后:默认的服务名为MongoDB,可使用net start MongoDB命令来启动MongoDB数据库了。要中止,使用net stop MongoDB。测试

若是你想要自定义一个服务名,能够先用mongod --logpath "D:\Program Files\mongoDB\data\log\MongoDB.log" --logappend --dbpath "D:\Program Files\mongoDB\data\db" --directoryperdb --remove 来删除服务网站

接着使用:mongod --logpath "D:\Program Files\mongoDB\data\log\MongoDB.log" --logappend --dbpath "D:\Program Files\mongoDB\data\db" --directoryperdb --serviceName mongodb --reinstall ui

从新安装,如今新的服务名为mongodb

以上是win7环境下安装mongoDB的过程

第二步:接下来,咱们能够在咱们的开发工具中,测试mongoDB的crud

新建一个java工程,导入mongo-2.2.jar包

建一个测试类

package main.mongoDB;


import com.mongodb.*;
import org.bson.types.ObjectId;


import java.net.UnknownHostException;


/**
 * mongoDB的crud
 * User: libin
 * Date: 13-1-4
 * Time: 下午5:05
 * To change this template use File | Settings | File Templates.
 */
public class MongodbTest {
    private Mongo mg = null;
    private DB db;
    private DBCollection users;


    /**
     * 初始化
     * TODO
     */
    public void init(){
        try {
            mg=new Mongo("127.0.0.1",27017);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }catch (MongoException e) {
            e.printStackTrace();
        }
        //获取temp DB 若是默认没有 会自动建立
        db=mg.getDB("temp");
        //获取users Collection 若是默认没有 会自动建立
        users=db.getCollection("users");


        System.out.println("全部数据库名:"+mg.getDatabaseNames());
        System.out.println("全部数据库名:"+mg.getDB("users"));






    }


    /**
     * 销毁
     * TODO
     */
    public void destory(){
        if(mg!=null){
            mg.close();
        }
        mg=null;
        db=null;
        users=null;
        System.gc();


    }
    /**
     * <b>function:</b> 查询全部数据
     * @author cuiran
     * @createDate 2012-12-11 09:24:11
     */
    public void queryAll(){
        print("查询users的全部数据");
        //Db游标
        DBCursor cur=users.find();
        while(cur.hasNext()){
            print(cur.next());
        }
    }


    /**
     *
     *<b>function:</b>添加数据
     * @author cuiran
     * @createDate 2012-12-11 09:25:23
     */
    public void add(){
        queryAll();


        print("count:"+users.count());
        DBObject user=new BasicDBObject();
        user.put("name", "libin");
        user.put("age", 23);


       //users.save(user);
       //print(users.save(user).getN());


        user.put("sex", "男");
        print(users.save(user).getN());




        print("count:"+users.count());
        queryAll();


    }


    /**
     * 更新数据
     */


    public void update(){
        queryAll();
        BasicDBObject old_obj = new BasicDBObject();
        old_obj.put("name", "mark");
        old_obj.put("age", 23);
        old_obj.put("sex", "女");
        users.insert(old_obj);
        //这里的new_val对象必定要是find出的而不是new的,不然多字段的状况下就会丢失其它字段信息
        DBObject new_val = users.findOne(old_obj);
        new_val.put("name", "zhoulong");
        /**这里只能修改一条知足条件的记录,并且根据API用updateMulti方法或者设置update第四个参数也无效,
         * 若是要批量跟新就要查询后,循环遍历更新了
         */
        users.update(old_obj, new_val);
        queryAll();
    }
    /**
     *
     *<b>function:</b>删除数据
     * @author cuiran
     * @createDate 2012-12-11 09:38:12
     */
    public void remove(){
        queryAll();
        print("删除id = 50e6a41f68bfaf2e2ecdf1f9:" + users.remove(new BasicDBObject("_id", new ObjectId("50e6a41f68bfaf2e2ecdf1f9"))).getN());
        queryAll();
    }


    public void print(Object o){
        System.out.println(o);
    }




    public void start(){
        init();
        //add();
        remove();
        update();
        destory();


//       queryAll();




    }


    /**
     * TODO
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        MongodbTest t=new MongodbTest();
        t.start();
    }
}

 

启动mongoDB服务的前提下,能够测试了

 

最后,在介绍一个mongoDB的图形化工具

后续有不少开发填坑的文章发布,若是对你有帮助,请支持和加关注一下

http://e22a.com/h.05ApkG?cv=AAKHZXVo&sm=339944

https://shop119727980.taobao.com/?spm=0.0.0.0 

相关文章
相关标签/搜索