在MVC程序中使用MongoDB数据库
.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服务端
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数据库的更多相关文章
- [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的连接恢复和命令拦截
这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第四篇:MVC程序中实体框架的连接恢复和 ...
- 用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署
用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署 这是微软官方SignalR 2.0教程Getting Started with En ...
- MVC程序中实体框架的连接恢复和命令拦截
MVC程序中实体框架的连接恢复和命令拦截 这是微软官方SignalR 2.0教程Getting Started with Entity Framework 6 Code First using MVC ...
- 在java中使用MongoDB数据库
Java 安装 要想在 Java 程序中使用 MongoDB,需要先确定是否安装了 MongoDB JDBC 驱动,并且要在机器上安装了 Java.查看 Java 教程来确保在机器上安装好 Java. ...
- Spring MVC程序中得到静态资源文件css,js,图片文件的路径问题总结
上一篇 | 下一篇 Spring MVC程序中得到静态资源文件css,js,图片 文件的路径 问题总结 作者:轻舞肥羊 日期:2012-11-26 http://www.blogjava.net/fi ...
- Java嵌入式数据库H2学习总结(二)——在Web应用程序中使用H2数据库
一.搭建测试环境和项目 1.1.搭建JavaWeb测试项目 创建一个[H2DBTest]JavaWeb项目,找到H2数据库的jar文件,如下图所示: H2数据库就一个jar文件,这个Jar文件里面包含 ...
- 在 Android 应用程序中使用 SQLite 数据库以及怎么用
part one : android SQLite 简单介绍 SQLite 介绍 SQLite 一个非常流行的嵌入式数据库.它支持 SQL 语言,而且仅仅利用非常少的内存就有非常好的性能.此外它还是开 ...
- python程序中使用MySQL数据库
目录 python程序中使用MySQL数据库 1 pymysql连接数据库 2 sql 注入 3 增删改查操作 4 pymysql使用总结 python程序中使用MySQL数据库 1.python中使 ...
- 在Asp.net Razor Pages/MVC程序中集成Blazor
今天试了一下在Asp.net core Razor Pages/MVC程序中集成Blazor(Server-side),还是可以完美整合的,这里以Razor Pages为例(.net core 3.1 ...
随机推荐
- 【转】Defunct进程 僵尸进程
在测试基于 DirectFB+Gstreamer 的视频联播系统的一个 Demo 的时候,其中大量使用 system 调用的语句,例如在 menu 代码中的 system("./play&q ...
- python的return
关于python的return用法,在stackoverflow里的问题: Python — return, return None, and no return at all Consider th ...
- Asp.NetCore MVC Web 应用
Asp.NetCore MVC 与 普通的MVC 基本一致, 只是代码结构稍有改动 一.创建项目 1. 2. 3. 项目结构 二. 构建数据模型 1. Startup类中配置EF Core MySql ...
- mysql server 自动断开的问题
今天发现mysql的一个问题,当跑update语句的时候,mysql 服务会自动断掉,无论用 phpmyadmin, navicat , mysql workbench 甚至用 mysql命令行效果一 ...
- ASP.NET MVC验证DateTime的问题
今天碰到一个Bug,在IE8中,日期验证失效,输入正确的日期格式也会验证失败,提示:xxx必须是日期格式(the field xxx must be a date) 最终找到问题所在:jquery.v ...
- [Erlang28]使用匿名函数灵活组合不同的case
cowboy_http.erl里面的date1/2 启示: 以前一般写case里都是这样子: date1(Date) -> case month1(Date) of {error,badarg} ...
- 网络正常只有自己访问网站异常一度让你怀疑,是不是被黑了!域名解析异常是如何发生的,如何解决处理及C#编程实现一键修改Hosts文件
首先大家要知道在浏览器上浏览虚拟主机,必须使用Hosts文件或域名系统(DNS)实现主机名到IP地址的解析.在局域网中用Hosts文件或DNS都可以,在Internet上只能用DNS了. 1.当用户输 ...
- 【Unity】Domina-Game总结与反思
[Unity]Domina-Game总结与反思 2018/6/15 我总算是把物理课作业--Domina-Game给赶完了,这也算是我用Unity做的第一个游戏吧(不得不说我的脚本写的超烂的)...纪 ...
- django系列7.2--django中的cookie和session基本操作,浏览器登陆验证的不同实现
django中的cookie和session(02)–操作 一.Django中的cookie操作 ctrl + shift + del 是谷歌浏览器中清除页面缓存和cookie的快捷键 1.设置coo ...
- 一次mysql主从同步问题及解决过程
Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE MicrosoftInternetExplorer4 由于经常被抓取文章内容,在此附上博 ...