MongoDB数据库操作和程序基础文档

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: 转自:http://blog.csdn.net/xto/archive/2010/03/22/5403855.aspx数据库常用操作命令 Bin\mongod run 启动数据库服务端。 bin\mongod.exe --dbpath d:\data\mongo 启动数据库服务端并且将数据库目录设定在该地址下。
转自:
http://blog.csdn.net/xto/archive/2010/03/22/5403855.aspx


数据库常用操作命令

Bin\mongod run 启动数据库服务端。

bin\mongod.exe --dbpath d:\data\mongo 启动数据库服务端并且将数据库目录设定在该地址下。

run 直接启动。例:./mongod run
--dbpath
指定特定存储目录启动,若目录不存在则创建。例:
./mongod --dbpath /var/data/mongo
--port
指定端口启动。例:./mongod --port 12345

bin\mongon.exe 启动数据库客户端用命令行操作。

停止MONGO服务:
方法1:服务端停止,可使用Ctrl+C
方法2:在客户端停止,可先连接客户端

 ./mongo
 
并使用命令
 db.shutdownerver()
 
然后退出客户端
 exit

 

启动bin\mongodump.exe可以自动备份数据

bin/mongorestore.exe恢复一个mongodump备份数据

bin/mongoexport 导出一个数据表数据为(json,csv)格式

bin/mongoimportjson json格式的数据导入数据表表

bin/mongofiles  gridfs文件操作

注意事项

关闭web服务器操作系统之前必须先备份mongodb,然后关闭mongodb服务,在关闭或者重新启动操作系统。

根据网上资料有人曾说直接关闭操作系统会导致mongodb缓存数据没有被写入硬盘。

要经常性的观察mongodb数据总存储的大小,避免数据过大造成写入困难导致的数据丢失情况。

.Net开发帮助说明

开发类库

MongoDB.Driver0.8.1

该版本仍然处于dbug状态,但好在代码比较简单,因此希望在此基础上构建适合自身操作的驱动层。

数据库连接

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

mg.Disconnect();//关闭连接

新增数据

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document doc = new Document();//声明数据类型

doc["name"] = "xto";//赋值

doc["login"] = "test";//赋值

col.Insert(doc);//插入数据

mg.Disconnect();//关闭连接

 

修改数据

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document query=new Document();//声明查询条件对象

query.Add("id",1);//查询条件对象赋值

Document newdata = new Document();//声明修改对象

newdata.Add("name","222");//修改对象赋值

col.UpdateAll(newdata,query,true);//更新数据

mg.Disconnect();//关闭连接

简单查询

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document query=new Document();//声明查询条件对象

query.Add("id",1);//查询条件对象赋值

ICursor cur = col.FindAll();//查询指针

foreach (Document docx in cur.Documents)

{

Response.Write(docx["id"]+"</br>");

}

mg.Disconnect();//关闭连接

分页查询

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document query = new Document();//声明查询条件对象

Document where = new Document();//声明逻辑条件对象

where.Add("$gt",1);//逻辑条件对象赋值;含义:>1

query.Add("id",where);

ICursor cur = col.Find(query).Skip(10).Limit(100);//从第10条记录开始查询每页显示100条

foreach (Document docx in cur.Documents)

{

Response.Write(docx["id"]+"</br>");

}

mg.Disconnect();//关闭连接

 

复杂查询

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document query = new Document();//声明查询条件对象

Document where = new Document();//声明逻辑条件对象

where.Add("$gt",1);//逻辑条件对象赋值;含义:>1

query.Add("id",where);

ICursor cur = col.Find(query);

foreach (Document docx in cur.Documents)

{

Response.Write(docx["id"]+"</br>");

}

mg.Disconnect();//关闭连接

 

索引创建

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document index = new Document();//创建索引对象

index["id"] = 1;//索引对象赋值

col.MetaData.CreateIndex(index,true);//创建索引

mg.Disconnect();//关闭连接

删除数据

Mongo mg = new Mongo(localhost,27087);//声明数据库操作类

 

 

bool result=mg.Connect();//打开连接

Database db = mg.getDB("db");//打开db数据库

IMongoCollection col=db.GetCollection("table");//打开db数据库中的table表

Document query = new Document();//创建删除条件对象

query.Add("id", 1);//条件对象赋值

col.Delete(query,true);//删除满足查询条件的记录

mg.Disconnect();//关闭连接

 
目录
相关文章
|
2月前
|
NoSQL MongoDB 数据库
数据库数据恢复—MongoDB数据库数据恢复案例
MongoDB数据库数据恢复环境: 一台操作系统为Windows Server的虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 工作人员在MongoDB服务仍然开启的情况下将MongoDB数据库文件拷贝到其他分区,数据复制完成后将MongoDB数据库原先所在的分区进行了格式化操作。 结果发现拷贝过去的数据无法使用。管理员又将数据拷贝回原始分区,MongoDB服务仍然无法使用,报错“Windows无法启动MongoDB服务(位于 本地计算机 上)错误1067:进程意外终止。”
|
2月前
|
缓存 NoSQL Linux
在CentOS 7系统中彻底移除MongoDB数据库的步骤
以上步骤完成后,MongoDB应该会从您的CentOS 7系统中被彻底移除。在执行上述操作前,请确保已经备份好所有重要数据以防丢失。这些步骤操作需要一些基本的Linux系统管理知识,若您对某一步骤不是非常清楚,请先进行必要的学习或咨询专业人士。在执行系统级操作时,推荐在实施前创建系统快照或备份,以便在出现问题时能够恢复到原先的状态。
257 79
|
2月前
|
存储 NoSQL MongoDB
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
149 8
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
|
6月前
|
NoSQL MongoDB 微服务
微服务——MongoDB常用命令——文档的分页查询
本文介绍了文档分页查询的相关内容,包括统计查询、分页列表查询和排序查询。统计查询使用 `count()` 方法获取记录总数或按条件统计;分页查询通过 `limit()` 和 `skip()` 方法实现,控制返回和跳过的数据量;排序查询利用 `sort()` 方法,按指定字段升序(1)或降序(-1)排列。同时提示,`skip()`、`limit()` 和 `sort()` 的执行顺序与编写顺序无关,优先级为 `sort()` &gt; `skip()` &gt; `limit()`。
245 1
|
6月前
|
JSON NoSQL MongoDB
微服务——MongoDB常用命令——文档基本CRUD
本文介绍了MongoDB中文档的基本操作,包括插入、查询、更新和删除。单个文档插入使用`insert()`或`save()`方法,批量插入用`insertMany()`。查询所有文档用`find()`,条件查询可在`find()`中添加参数,投影查询控制返回字段。更新文档通过`update()`实现,支持覆盖修改、局部修改(使用`$set`)和批量修改。列值增长可用`$inc`实现。删除文档用`remove()`,需谨慎操作以免误删数据。此外,文档键值对有序,区分大小写,不能有重复键。
128 1
|
1月前
|
运维 NoSQL 容灾
告别运维噩梦:手把手教你将自建 MongoDB 平滑迁移至云数据库
程序员为何逃离自建MongoDB?扩容困难、运维复杂、高可用性差成痛点。阿里云MongoDB提供分钟级扩容、自动诊断与高可用保障,助力企业高效运维、降本增效,实现数据库“无感运维”。
|
3月前
|
存储 数据库连接 数据库
告别数据库瓶颈!用这个技巧让你的程序跑得飞快!
本文介绍了数据库连接池的概念及其在性能优化中的重要性,通过两个示例展示了如何管理 SQLite 数据库连接。首先,手动实现了一个基于 `sqlite3` 和 `queue.Queue` 的简单连接池,涵盖初始化、获取与释放连接的核心流程。接着,使用功能更强大的 `SQLAlchemy` 库创建连接池,简化了连接管理并支持更多高级特性。对比两种方式后发现,自定义连接池适合学习和小型应用,而 `SQLAlchemy` 更适用于复杂场景。合理使用连接池可显著提升高并发环境下的数据库操作效率。
75 1
|
5月前
|
Java 数据库
jsp CRM客户管理系统(含数据库脚本以及文档)
jsp CRM客户管理系统(含数据库脚本以及文档)
118 10
|
5月前
|
NoSQL MongoDB 数据库
数据库数据恢复——MongoDB数据库服务无法启动的数据恢复案例
MongoDB数据库数据恢复环境: 一台Windows Server操作系统虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 管理员在未关闭MongoDB服务的情况下拷贝数据库文件。将MongoDB数据库文件拷贝到其他分区后,对MongoDB数据库所在原分区进行了格式化操作。格式化完成后将数据库文件拷回原分区,并重新启动MongoDB服务。发现服务无法启动并报错。
|
6月前
|
存储 NoSQL MongoDB
微服务——MongoDB常用命令1——数据库操作
本节介绍了 MongoDB 中数据库的选择、创建与删除操作。使用 `use 数据库名称` 可选择或创建数据库,若数据库不存在则自动创建。通过 `show dbs` 或 `show databases` 查看所有可访问的数据库,用 `db` 命令查看当前数据库。注意,集合仅在插入数据后才会真正创建。数据库命名需遵循 UTF-8 格式,避免特殊字符,长度不超过 64 字节,且部分名称如 `admin`、`local` 和 `config` 为系统保留。删除数据库可通过 `db.dropDatabase()` 实现,主要用于移除已持久化的数据库。
413 0

热门文章

最新文章

推荐镜像

更多