在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 ...
随机推荐
- (转)【javascript基础】原型与原型链
原文地址:http://www.cnblogs.com/allenxing/p/3527654.html 前言 原型是什么 理解原型对象 原型对象 isPrototypeOf hasOwnProper ...
- Groovy 读取json文件,并用gson反序列化为List集合
Groovy 读取json文件,并用gson反序列化 package com.bicycle.util import bicycle_grails.StationInfo import com.goo ...
- java并发编程实战:第七章----取消与关闭
Java没有提供任何机制来安全地终止线程(虽然Thread.stop和suspend方法提供了这样的机制,但由于存在缺陷,因此应该避免使用 中断:一种协作机制,能够使一个线程终止另一个线程的当前工作 ...
- sitecore 缓存管理器
namespace XXX.Shared.Infrastructure.Caching { using System; using System.Collections.Generic; using ...
- Bootstrap模态框modal的高度和宽度设置
(1)高度 将style=“height:900px”放在<div class = "modal-dialog">或者更外层上,整个模态框的高度不会发生变化 如下图所示 ...
- 10-10Linux的文件操作函数以及所需头文件
Linux的基本文件操作函数 Linux通过相应的对文件的IO函数来实现对文件的操作,这些函数通常被称作"不带缓冲的IO",这是因为他们都是通过调用Linux的内核调用来实 ...
- 我对于C#的想法
前言 首先,感谢各位的回答,还看到了好几个大神过来回答受宠若惊,有叫我坚持的,有叫我放弃,感谢. 一开始我学的是Java,但是没有实际的工作经验,因为从工作开始到现在已经两年的时间了我用的一直都是C# ...
- sql-修改每条数据的某一个字段的值
update B set B.maildata =(select SUBSTRING(maildata,0,3) from basedata where basedata.cid = B.cid)+( ...
- Devexpress treelist 控件属性大全
属性列表 1.OptionsSelection: EnableAppearanceForcusedCell:选中的Cell的Appearance设置是否可用.默认为True: EnableAppear ...
- Neutorn LBaaS 原理
Load Balance as a Service(LBaaS)是 Neutron 提供的一项高级网络服务.LBaaS 允许租户在自己的网络中创建和管理 load balancer. load bal ...