zoukankan      html  css  js  c++  java
  • MongoDB相关资料收集


    MongoDB 入门教程
    http://www.runoob.com/mongodb/mongodb-tutorial.html

    .net 驱动程序下载:
    http://mongodb.github.io/mongo-csharp-driver/

    https://www.nuget.org/packages/MongoDB.Driver/2.2.3

    MongoVUE无法看到collection明细记录的解决方法

    MongoDB 3.2之后默认启动的是wiredTiger 引擎这个引擎和原来的引擎访问方式不一样。你用命令mongod  --storageEngine mmapv1 --dbpath 数据目录 这样启动的是原来的数据引擎在用MongoVE连接就可以了
    

     详见:http://my.oschina.net/chiyong/blog/599326?fromerr=I2dldtre

     ps,wiredTiger为新版存储引擎,性能比mmapv1 要好,启用压缩后,占用的存储空间按比mmapv1小。详见:http://my.oschina.net/chiyong/blog/599326?fromerr=I2dldtre

    其他更好的方法,用Robomongo替换MongoVE,可以支持两种存储引擎。

    setup.bat

    cd C:Program FilesMongoDBServer3.2in
    mongod.exe --storageEngine mmapv1 --logpath "C:	empmongodblogmongodb.log" --logappend --dbpath "C:	empmongodbdata" --port 6111 --serviceName "MongoDB" --serviceDisplayName "MongoDB Server" --install
    
    net start MongoDB
    
    pause
    

    remove.bat

    cd C:Program FilesMongoDBServer3.2in
    mongod.exe --storageEngine mmapv1 --logpath "C:	empmongodblogmongodb.log" --logappend --dbpath "C:	empmongodbdata" --port 6111 --serviceName "MongoDB" --serviceDisplayName "MongoDB Server" --install
    
    net start MongoDB
    
    pause

    MongoDB安全相关,服务启动加参数 --auth,设置用户名密码,见官方文档:https://docs.mongodb.com/manual/reference/method/db.createUser/

    > db.createUser({user:"wilson",pwd:"123456",roles:[]})
    Successfully added user: { "user" : "wilson", "roles" : [ ] }
    >

     加了验证后的访问url为:

    "mongodb://user1:123@192.168.160.132/dbdemo1/?socketTimeout=1s";
    db.createUser( { user: "admin",
                     pwd: "admin123", 
                     roles: [ { role: "readWrite", db: "gps_current_ps" },
                              { role: "readWrite", db: "ob_active_ps" },
                                { role: "readWrite", db: "StudentDB" }
                              ]} )
    
    
    db.auth( {
       user: "admin",
       pwd: "admin123", 
    } )                          

    使用MongoDB.Driver.GridFS进行文件读写操作

    using System.IO;
    using System.Linq;
    using System.Text;
    using MongoDB.Driver;
    using MongoDB.Driver.GridFS;
    static void Main(string[] args)
            {
                string mongoUrl = "mongodb://192.168.0.226:6111/?socketTimeout=1s";
     MongoServerSettings setting = MongoServerSettings.FromUrl(MongoUrl.Create(mongoUrl));
    
                MongoServer server = new MongoServer(setting);
    
                MongoGridFSSettings settting2 = new MongoGridFSSettings();
    
                MongoGridFS fs = new MongoGridFS(server, "StudentDB", settting2);
    
                MongoGridFSFileInfo fi = fs.Upload("c:\test.doc", "中文测试.doc");
    
                byte[] buffer = new byte[1024];
                using (MongoGridFSStream readStream = fs.OpenRead("中文测试.doc"))
                {
                    FileStream writeStream = new FileStream("c:\20160601.doc", FileMode.OpenOrCreate);
                    int length = readStream.Read(buffer,0,buffer.Length);
                    while(length>0)
                    {
                        writeStream.Write(buffer, 0, length);
                        length = readStream.Read(buffer,0,buffer.Length);
                    }
                }
    db.getCollection('fs.files').find({})
    
    db.getCollection('fs.chunks').find({})

    写入成功后,文件保存在files及chunks两个集合

    db.createUser( { user: "psuser",
                     pwd: "tydbadmin", 
                     roles: [ { role: "readWrite", db: "gps_current_ps" },
                              { role: "readWrite", db: "ob_active_ps" },
                                { role: "readWrite", db: "StudentDB" },
                                { role: "dbAdmin", db: "gps_current_ps" },
                                { role: "dbAdmin", db: "ob_active_ps" },
                                { role: "dbAdmin", db: "StudentDB" },
                              ]} )
    
    
    db.auth( {
       user: "psuser",
       pwd: "tydbadmin", 
    } )   
    
    
    
    db.auth( {
       user: "admin",
       pwd: "admin123", 
    } )   
    
    
    db.collection.createIndex( {ObjID:1, Date: 1 } )
    db.collection.createIndex( {Date: 1 } )
    
    db.collection.createIndex( { orderDate: 1 } )
  • 相关阅读:
    Linux内存地址映射
    江湖行
    数组/指针/const/字符串常量的使用传值问题
    TI davinci DM6467通过串口0将UBL和u-boot写入NAND flash
    CCS5配置使用GenCodecPkg生成CODEC SERVER
    typedef用法和与define的区别
    VS2008项目移植到Linux
    bootargs中ip段各项解释
    Davinci-DM6467板子-外围器件的I2C地址的疑惑解答
    MFC中界面自适应
  • 原文地址:https://www.cnblogs.com/weiweictgu/p/5514593.html
Copyright © 2011-2022 走看看