`
kfyfly
  • 浏览: 54354 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mongodb的安装与使用

 
阅读更多

 1.下载安装包
    wget linux/mongodb-linux-i686-1.8.2.tgz">http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.2.tgz
    下载完成后解压缩压缩包
    tar zxf mongodb-linux-i686-1.8.2.tgz
    2. 安装准备
    将mongodb移动到/usr/local/server/mongdb文件夹
    mv mongodb-linux-i686-1.8.2 /usr/local/mongodb
    创建数据库文件夹与日志文件
    mkdir /usr/local/mongodb/data
    touch /usr/local/mongodb/logs
    3. 设置开机自启动
    将mongodb启动项目追加入rc.local保证mongodb在服务器开机时启动
    echo "/usr/local/server/mongodb/bin/mongod --dbpath=/usr/local/server/mongodb/data –logpath=/usr/local/server/mongodb/logs –logappend --auth –port=27017" 》 /etc/rc.local
    4. 启动mongodb
    cd到mongodb目录下的bin文件夹启动mongodb
    //下面这个是需要权限的登录方式, 用户连接需要用户名和密码
    /usr/local/server/mongodb/bin/mongod
    --dbpath=/usr/local/server/mongodb/data
    --logpath=/usr/local/server/mongodb/logs
    --logappend --auth --port=27017 --fork
    //这个是不需要密码的
    /usr/local/server/mongodb/bin/mongod --dbpath=/usr/local/server/mongodb/data --logpath=/usr/local/server/mongodb/logs --logappend --port=27017 --fork
    5. 参数解释: --dbpath 数据库路径(数据文件)
    --logpath 日志文件路径
    --master 指定为主机器
    --slave 指定为从机器
    --source 指定主机器的IP地址
    --pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。
    --logappend 日志文件末尾添加
    --port 启用端口号
    --fork 在后台运行
    --only 指定只复制哪一个数据库
    --slavedelay 指从复制检测的时间间隔
    --auth 是否需要验证权限登录(用户名和密码)
    -h [ --help ] show this usage information
    --version show version information
    -f [ --config ] arg configuration file specifying additional options
    --port arg specify port number
    --bind_ip arg local ip address to bind listener - all local ips
    bound by default
    -v [ --verbose ] be more verbose (include multiple times for more
    verbosity e.g. -vvvvv)
    --dbpath arg (=/data/db/) directory for datafiles 指定数据存放目录
    --quiet quieter output 静默模式
    --logpath arg file to send all output to instead of stdout 指定日志存放目录
    --logappend appnd to logpath instead of over-writing 指定日志是以追加还是以覆盖的方式写入日志文件
    --fork fork server process 以创建子进程的方式运行
    --cpu periodically show cpu and iowait utilization 周期性的显示cpu和io的使用情况
    --noauth run without security 无认证模式运行
    --auth run with security 认证模式运行
    --objcheck inspect client data for validity on receipt 检查客户端输入数据的有效性检查
    --quota enable db quota management 开始数据库配额的管理
    --quotaFiles arg number of files allower per db, requires --quota 规定每个数据库允许的文件数
    --appsrvpath arg root directory for the babble app server
    --nocursors diagnostic/debugging option 调试诊断选项
    --nohints ignore query hints 忽略查询命中率
    --nohttpinterface disable http interface 关闭http接口,默认是28017
    --noscripting disable scripting engine 关闭脚本引擎
    --noprealloc disable data file preallocation 关闭数据库文件大小预分配
    --smallfiles use a smaller default file size 使用较小的默认文件大小
    --nssize arg (=16) .ns file size (in MB) for new databases 新数据库ns文件的默认大小
    --diaglog arg 0=off 1=W 2=R 3=both 7=W+some reads 提供的方式,是只读,只写,还是读写都行,还是主要写+部分的读模式
    --sysinfo print some diagnostic system information 打印系统诊断信息
    --upgrade upgrade db if needed 如果需要就更新数据库
    --repair run repair on all dbs 修复所有的数据库
    --notablescan do not allow table scans 不运行表扫描
    --syncdelay arg (=60) seconds between disk syncs (0 for never) 系统同步刷新磁盘的时间,默认是60s
    Replication options:
    --master master mode 主复制模式
    --slave slave mode 从复制模式
    --source arg when slave: specify master as <server:port> 当为从时,指定主的地址和端口
    --only arg when slave: specify a single database to replicate 当为从时,指定需要从主复制的单一库
    --pairwith arg address of server to pair with
    --arbiter arg address of arbiter server 仲裁服务器,在主主中和pair中用到
    --autoresync automatically resync if slave data is stale 自动同步从的数据
    --oplogSize arg size limit (in MB) for op log 指定操作日志的大小
    --opIdMem arg size limit (in bytes) for in memory storage of op ids指定存储操作日志的内存大小
    Sharding options:
    --configsvr declare this is a config db of a cluster 指定shard中的配置服务器
    --shardsvr declare this is a shard db of a cluster 指定shard服务器
    6. 进入数据库的CLI管理界面
    cd到mongodb目录下的bin文件夹,执行命令。/mongo
    运行如下:
    [root@namenode mongodb]# ./bin/mongo
    MongoDB shell version: 1.8.2
    connecting to: test
    > use test;
    switched to db test
    若数据库出现如不能连上,则是一个data目录下的mongod.lock文件的问题,可以用如下的修复的命令,
    mongod --repair
    此处用mysql中的sql语句做例子,C# 驱动用的是samus,也就是上文中介绍的第一种。
    引入项目MongoDB.dll
//创建Mongo连接 var mongo = new Mongo("mongodb://localhost"); mongo.Connect(); //获取一个数据库,如果没有会自动创建一个 var db = mongo.GetDatabase("movieReviews"); //创建一个列表,并为这个列表创建文档 var movies = db.GetCollection("movies");

连接没问题之后,现在让我们用mysql 与mongodb的一些语句做下对比:

  MongoDB Mysql
查询全部 movies.find(new Document()) SELECT * FROM movies
条件查询 movies.Find(new Document { { "title", "Hello Esr" } }); SELECT * FROM movies WHERE title= 'foobar'
查询数量 movies.Find(new Document { { "title", "测试2" } }).Documents.Count(); SELECT COUNT(*) FROM movies WHERE `title` = 'foobar'
数量范围查询 1, movies.Find(new Document().Add("$where", new Code("this.num > 50")));

2, movies.Find(new Document().Add("num", new Document().Add("$gt",50)));
($gt : > ; $gte : >= ; $lt : < ; $lte : <= ; $ne : !=)

3,movies.Find("this.num > 50");

4,movies.Find(new Document().Add("$where",new Code("function(x){ return this.num > 50};")));
select * from movies where num > 50
分页查询 movies.Find(new Document()).Skip(10).Limit(20); SELECT * FROM movies limit 10,20
查询排序语句 movies.Find(new Document()).Sort(new Document() { { "num", -1 } }); SELECT * FROM movies ORDER BY num DESC
查询指定字段 movies.Find(new Document().Add("num", new Document().Add("$gt", 50)), 10, 0, new Document() { { "title", 1 } }); select title from movies where num > 50
插入语句 movies.Insert(new Document() { { "title", "测试" }, { "resuleData", DateTime.Now } }); INSERT INOT movies (`title`, `reauleDate`) values ('foobar',25)
删除语句 movies.Remove(new Document() { { "title", "Hello Esr" } }); DELETE * FROM movies
更新语句

movies.Update(new Document() { { "title", "测试2" } }
, new Document() { { "title", "测试11111" } });

UPDATE movies SET `title` = ‘测试1111’ WHERE `title` = '测试1111'
Linq查询

(from item in db.GetCollection("movies").Linq()
where ((string)item["title"]).StartsWith("Esr")
select item);

select * from movies where title like ‘%Esr’

这里只举出了几个比较典型的例子,可以这么说,只要mysql可以完成的sql语句,在mongodb里面都可以实现.

分享到:
评论

相关推荐

    windows下mongodb安装与使用整理

    ### Windows 下 MongoDB 安装与使用详解 #### 一、MongoDB 简介 MongoDB 是一种基于分布式文件存储的开源数据库系统。它属于 NoSQL 数据库的一种,使用 BSON(Binary JSON)格式来存储数据,支持动态模式,使得开发...

    windows下mongodb安装与使用图文教程(整理)

    Windows环境下MongoDB安装与使用教程详细说明: 一、MongoDB安装步骤 MongoDB是一款基于分布式文件存储的开源NoSQL数据库,适用于大规模数据存储,其在Windows系统中的安装步骤如下: 1. 访问MongoDB官方网站下载...

    Linux下MongoDB安装及使用

    Linux下MongoDB安装及使用 MongoDB是当前流行的NoSQL数据库之一,它支持多种平台,包括Linux、Windows和Mac OS X等。在Linux系统下,MongoDB的安装和使用非常简洁高效。 安装MongoDB 要安装MongoDB,首先需要下载...

    MongoDB安装和使用全过程

    MongoDB安装和使用全过程!windows平台下下载和安装Mongo数据库时总结的文档,分享给大家!

    nosql实验六- MongoDB的安装与基本操作.docx

    MongoDB 安装与基本操作 MongoDB 是一款流行的 NoSQL 数据库,广泛应用于大数据和实时 Web 应用程序。在本实验中,我们将学习如何在 Windows 和 Linux 环境下安装 MongoDB,并了解 MongoDB 的基本操作。 一、...

    MongoDB安装与设置.docx

    MongoDB 是一个流行的开源文档数据库系统,以其灵活性、高性能和...通过以上步骤,你已经在Windows上成功安装并配置了MongoDB,可以开始使用这个强大的NoSQL数据库了。记得定期更新MongoDB以获取最新的安全补丁和功能。

    MongoDB8.0.1安装包带安装教程

    MongoDB8.0.1安装包带安装教程,适用于windows系统64位。 1、双机安装 mongodb-windows-x86_64-8.0.1-signed。 2、将 mongosh-2.3.2-win32-x64 压缩包解压后,打开bin文件夹复制“mongosh.ext“和”mongoshcryptv1....

    MongoDB安装与链接

    - 安装服务:如果希望MongoDB作为后台服务运行,可以使用`--install`选项创建Windows服务,同时指定日志路径、数据库路径等参数。 4. MongoDB 的连接方法: - 启动MongoDB Shell:通过运行`mongo.exe`(指定路径...

    linux安装mongodb教程

    使用 Windows XP 的 cmd 工具,执行以下命令测试 MongoDB 是否已经成功安装: telnet 服务器 IP 27017 如果配置成功,telnet 命令将返回成功信息。 知识点 8:重启服务器 重启服务器,测试 MongoDB 是否已经自...

    MongoDB安装文档

    这里我们关注`MongoDB安装与启动.doc`,文档可能包含如下内容: 1. 使用sudo apt-get update更新软件源,然后sudo apt-get install mongodb-server安装MongoDB。 2. 配置MongoDB服务,编辑/etc/mongod.conf文件,...

    mongodb安装以及基本操作(亲测通过)

    mongod.exe --install --dbpath=d:\mongodb\data --logpath=d:\mongodb\log\log.log -auth -serviceName "serviceName" 2.卸载服务 mongod.exe --remove --serviceName "serviceName" 3.启动服务 ...

    mongoDB安装与配置主从

    MongoDB 安装与配置主从关系 MongoDB 是一个基于分布式文件存储的开源文档数据库,允许用户灵活地存储、处理和分析数据。以下是 MongoDB 安装与配置主从关系的详细步骤和相关知识点。 安装 MongoDB 在 RedHat:...

    Centos7下安装MongoDB

    2. 安装MongoDB:使用yum install mongodb-org命令安装MongoDB。 3. 创建数据目录:创建/data/mongodb/data和/data/mongodb/log目录,并修改目录权限。 4. 修改配置文件:修改mongod.conf文件,包括systemLog、...

    mongodb的安装和使用简介

    为了便于管理和使用,还可以将MongoDB作为Windows服务进行安装,这样就可以通过系统服务来控制数据库的启动和停止,大大简化了操作步骤。安装服务时,需要指定日志文件路径、数据文件路径和Windows服务名称,且运行...

    mongodb安装与配置

    1. **下载MongoDB安装文件**: 首先,你需要从MongoDB官方网站(https://www.mongodb.com/download-center/community)下载适合你系统的安装包。这里提到的是Windows 32位版本的2.6.4版,但通常推荐使用最新稳定版...

    mongoDB非关系型数据库安装以及使用指南

    MongoDB是一款流行且功能强大的非关系型数据库系统,它以其灵活的数据模型、高可用性和可扩展性而受到广泛...在学习过程中,参考“mongoDB安装及使用指南”这份资料,能帮助你更深入地理解和实践MongoDB的相关操作。

    mongodb安装资料.rar

    在本套“mongodb安装资料.rar”中,包含了从基础安装到高级部署的全面指南,特别是关于分布式数据库和Linux环境下的部署。以下是这些资料中涵盖的关键知识点: 1. **MongoDB的安装**:在Linux系统中,MongoDB的安装...

Global site tag (gtag.js) - Google Analytics