.net项目中混搭数据库

安装和部署

C#中使用MongoDB

MongoDb与关系型数据库区别

开机自启动

关系型数据库和非关系型数据口可以混搭

MongoDB是一个高性能,开源,无模式的,基于分布式文件存储的文档型数据库,由C++语言编写,其名称来源取自“humongous”,是一种开源的文档数据库──NoSql数据库的一种。NoSql,全称是 Not Only Sql,指的是非关系型的数据库。

MongoDB是基于文档的数据库,持久的缓存

MongoDB中数据的基本单元称为文档(Document)。文档是MongoDB的核心概念,多个键极其关联的值有序的放置在一起便是文档。面向集合存储,集合没有行和列的限制,集合中只有一个文档,一个文档相当于一条记录,这体现了模式自由的特点。

在使用MongoDB之前 不要求您事先创建好相应的数据库,设计数据表结构

部署和安装

1 下载MongoDB安装包,安装到服务器。官方地址,按照服务器类型选择相应的版本

安装包解压后有一组exe文件

Mongod.exe 是用来连接到mongo数据库服务器的,即服务器端。

Mongo.exe 是用来启动MongoDB shell的,即客户端。

2 创建数据库和日志存放目录

MongoDB的默认数据目录 是/data/db,负责存储所有的MongoDB的数据文件。

3 启动数据库,在计算机重启后还能启动,需要设置开机自启动(后边有单独介绍)

启动MongodbDB服务端

>cd /d D:\MongoDB\bin\

>mongod --dbpath D:\MongoDB\data

浏览器查看MongoDB服务端

http://localhost:28017/

MongoDB使用mmap方式进行数据文件管理,也就是说写操作基本是在内存中进行,写操作会被每隔60秒(syncdelay设定)的flush到磁盘里。

--dbpath 是指定数据库的目录,存放MongoDB的数据库文件,用于启动mongod.exe服务

--port 指定端口 默认27017端口

打开mongodb.exe

--user databaseName 切换数据库,如果数据库不存在则创建数据库

创建collection

--db.users.insert({'name':'xumingxiang','sex':'man'})

添加数据

 

----show dbs 显示所有数据库

4 查看MongoDB进程

5 关闭MongoDB进程

pkill

killall

6 使用MongoDB的客户端查看数据

C#中使用MongoDB

驱动下载地址

编译后得到两个Dll

MongoDB.Driver.dll:顾名思义,驱动程序

MongoDB.Bson.dll:序列化、Json相关

MongoDb与关系型数据库区别

在MongoDB中,没有【表】的概念,取而代之的是【集合】,也没有【数据记录】的概念,取而代之的是【文档】, 我们可以把【文档】理解成一个【对象】

开机自启动

添加windows服务

以管理员身份运行 cmd,执行语句:

切换到目录  D:\MongoDB\bin\

执行命令 mongod.exe --directoryperdb --logpath D:\MongoDB\log\MongoDB.log --logappend --serviceName MongoDB --install

说明: --dbpath  设置数据库目录

        --directoryperdb  为每个数据库创建一个单独目录

--logpath  设置日志文件目录

--logappend  日志文件Append方式

--serviceName  服务名称

--install  安装

Mongodb的windows服务安装和卸载

不用 InstallUtil.exe,直接用mongod.exe做就可以:

安装:mongod --dbpath "D:\mongodb\db" --logpath "D:\mongodb\log.txt" --install --serviceName "MongoDB"

卸载:mongod.exe --remove --serviceName "MongoDB"


文档数据库如MongoDB的的主要目的是 提供更丰富的数据结构来抛弃Join来适应在线业务。弱化join操作。

参考

NoSql反模式

MongoDB实战开发 【零基础学习,附完整Asp.net示例】

http://www.cnblogs.com/libingql/archive/2011/06/13/2079438.html

MongoDB数据库简介及安装

在MVC程序中使用MongoDB数据库的更多相关文章

  1. [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的连接恢复和命令拦截

    这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第四篇:MVC程序中实体框架的连接恢复和 ...

  2. 用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署

    用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署 这是微软官方SignalR 2.0教程Getting Started with En ...

  3. MVC程序中实体框架的连接恢复和命令拦截

    MVC程序中实体框架的连接恢复和命令拦截 这是微软官方SignalR 2.0教程Getting Started with Entity Framework 6 Code First using MVC ...

  4. 在java中使用MongoDB数据库

    Java 安装 要想在 Java 程序中使用 MongoDB,需要先确定是否安装了 MongoDB JDBC 驱动,并且要在机器上安装了 Java.查看 Java 教程来确保在机器上安装好 Java. ...

  5. Spring MVC程序中得到静态资源文件css,js,图片文件的路径问题总结

    上一篇 | 下一篇 Spring MVC程序中得到静态资源文件css,js,图片 文件的路径 问题总结 作者:轻舞肥羊 日期:2012-11-26 http://www.blogjava.net/fi ...

  6. Java嵌入式数据库H2学习总结(二)——在Web应用程序中使用H2数据库

    一.搭建测试环境和项目 1.1.搭建JavaWeb测试项目 创建一个[H2DBTest]JavaWeb项目,找到H2数据库的jar文件,如下图所示: H2数据库就一个jar文件,这个Jar文件里面包含 ...

  7. 在 Android 应用程序中使用 SQLite 数据库以及怎么用

    part one : android SQLite 简单介绍 SQLite 介绍 SQLite 一个非常流行的嵌入式数据库.它支持 SQL 语言,而且仅仅利用非常少的内存就有非常好的性能.此外它还是开 ...

  8. python程序中使用MySQL数据库

    目录 python程序中使用MySQL数据库 1 pymysql连接数据库 2 sql 注入 3 增删改查操作 4 pymysql使用总结 python程序中使用MySQL数据库 1.python中使 ...

  9. 在Asp.net Razor Pages/MVC程序中集成Blazor

    今天试了一下在Asp.net core Razor Pages/MVC程序中集成Blazor(Server-side),还是可以完美整合的,这里以Razor Pages为例(.net core 3.1 ...

随机推荐

  1. (转)C# .net微信开发,开发认证,关注触发消息,自动应答,事件响应,自定义菜单

    原文地址:http://www.cnblogs.com/qidian10/p/3492751.html 成为开发者 string[] ArrTmp = { "token", Req ...

  2. 企业搜索引擎开发之连接器connector(二十八)

    通常一个SnapshotRepository仓库对象对应一个DocumentSnapshotRepositoryMonitor监视器对象,同时也对应一个快照存储器对象,它们的关联是通过监视器管理对象D ...

  3. 汉诺塔问题的算法分析与实现(Java)

    汉诺塔问题是源于印度一个古老传说的益智玩具.要求将圆盘从A柱移动到C柱规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘. 可以先通过3个盘子的hanoi游戏得出其算法步骤如下: if ...

  4. [编译,报错以及其他] 有关C/C++中int不能用-2147483648当最小值的问题

    这个取决于今早看耗子叔的微博: 这里说到了int的取值范围的问题,int的取值是-2147483648 ~ 2147483647,但是如果直接在编译器(VS2013)中使用-2147483648会报错 ...

  5. ------------------java collection 集合学习 ----小白学习笔记,,有错,请指出谢谢

    <!doctype html>java对象集合学习记录 figure:first-child { margin-top: -20px; } #write ol, #write ul { p ...

  6. C#泛型使用小记

    最近C#的泛型使用频次略多,特在此记下一个印象深刻的. 情景如下, 基类BaseClass 有一系列的子类 SubClass1, SubClass2, SubClass3... 且其构造函数的参数较多 ...

  7. Linux Redis 开机启动

    通过初始化脚本启动Redis 在Redis源代码目录的utils文件夹中有一个名为redis_init_script的初始化脚本文件.需要配置Redis的运行方式和持久化文件.日志文件的存储位置.步骤 ...

  8. sql server partition分区与group by 分组

    例子:在一个StudentScore表中,有序号ID,班级ClassId,学生姓名Name,性别Sex,语文成绩ChineseScore,数学成绩MathScore,平均成绩AverageScore等 ...

  9. 重新打造的我的Pugo

    Pugo博客已经搭建了好几个月了吧,给我感受到非常方便的就是,我换了好多VPS,迁移显得非常的方便,但是也有不足的地方,比如发布一篇新的博客,我每次都需要重新进入后台进行新的Post,还需要重新bui ...

  10. sharepoint 2013 升级要求

    1. 安装过程合理: A. 可以同时在管理中心.两台前端.搜索服务器上安装重新发布的SP1补丁包(所提供的链接) B. 等待所有SP1补丁包安装完成,依次在管理中心.两台前端.搜索服务器上运行配置向导 ...