牛骨文教育服务平台(让学习变的简单)
博文笔记

c#操作MongoDB验证 全解析 增 -删改查有空自己玩,

创建时间:2018-03-05 投稿人: 浏览次数:249
mongodb下载地址:http://dl.mongodb.org/dl/win32/x86_641.7mongo之前C#可用驱动下载地址:https://github.com/mongodb/mongo-csharp-driver/downloads1.7mongo之前与之后C#可用驱动:使用vs2012以上版本的Nuget获取官方原版MongoDB.Driver(官方git库下载程序集也会缺少程序集,大可一试)

安装没有坑。。。随便操作>>>>

看本文之前应当对Mongodb有一丢丢了解 (mongo是什么,干什么,怎么干,应该有个自己的想法)


启动MongoDB: mongod --bind_ip 192.168.0.19 --logpath "D:MongoPathlogmongodb.log" --logappend --dbpath "D:MongoPath" --auth --port 27017 --serviceName "MongoDBService" --serviceDisplayName "MongoDB" --install    可以不绑定IP 把bind_ip给删掉    未创建用户之前去掉--auth

    若不想安装服务只是启动的话可以把 --serviceName "MongoDBService" --serviceDisplayName "MongoDB" --install这一截删掉


重点注意:创建用户时需注意admin库中先创建“test1”,密码“test1” role:dbAdminAnyDatabase 的用户, 自定义db中要创建readWrite与上句同名用户,才能非本地局域网内验证通过,目前测试是这个结果 当然 名称可以随意 不过必须同名才能在非localhost的机器上访问数据库 否则就是单机mongo了(本文仅代表个人测试观点)
启动 :net start MongoDBService 或者 sc start MongoDBService删除服务:sc delete MongoDBService

创建用户命令

use admin

db.createUser({user:"test1",pwd:"test1",roles:[{role:"dbAdminAnyDatabase",db:"mt001"}]})

use newdb

db.createUser({user:"test1",pwd:"test1",roles:[{role:"readWrite",db:"mt001"}]})

本机登录 就添加环境变量 或者进入mongo安装路径cmd里输入mongo 就登录默认账户了,详细命令附在下边吧

mongo客户端远程登录 使用命令mongo 192.168.0.19:27017/mt001 -u test1 -p test1

若是程序调用就用链接字符串 mongodb://test1:test1@192.168.0.19:27017

常用的几个命令

show dbsdbuse testshow collectionshelpdb.help()db.dropUser("cjl")db.user.help();db.user.drop();db.user.find();



远程调用测试C#代码

Console.WriteLine("用户名:密码@IP");
            MongoUrl url = new MongoUrl("mongodb://" + Console.ReadLine() + ":27017/");
            MongoClient client = new MongoClient(url);
            Console.WriteLine("数据库名:");
            IMongoDatabase db = client.GetDatabase(Console.ReadLine());
            Console.WriteLine("表名:");
            var tab = db.GetCollection<BsonDocument>(Console.ReadLine());
            while (true)
            {

                BsonDocument row = new BsonDocument();
                row.Add("_id", Guid.NewGuid() + "");
                Console.WriteLine("输入插入的值测试");
                row.Add("name", Console.ReadLine());
                tab.InsertOne(row);
                Console.WriteLine("成功!");
            }

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。