MongoDB数据库安装及配置环境(windows10系统)

mongodb 下载与安装文档

MongoDB数据库安装及配置环境(windows10系统)

https://www.cnblogs.com/best/p/6212807.html

windows10系统下MongoDB的安装及环境配置:

MongoDB的安装

  下载地址: https://www.mongodb.com/download-center

  (这是windows10环境下的教程!请注意!)

  下载后,我们点击mongodb-win32-x86_64-2008plus-ssl-3.4.3-signed.msi(为2017.4.16更新的最新版本)进入安装

  

安装过程(这里不做图解): next ——> custom ——> 选择你的安装目录,新建一个目录,最好配置为 ——> 然后随着进度条,安装完成

 

MongDB的环境配置

首先,我们先在bin目录下创建一个名为"mongod.config"的文件,在里面输入:

  ##database directory

  dbpath=d:\MongoDB\data

  ##log file

  logpath=d:\MongoDB\log

然后保存该文件,请继续往下看。

一、直接将MongoDB配置为服务

(这样做的好处是:免去了每次启动需要输入数据路径,为了方便,可以将启动数据库写成window服务的方式。)

  首先,我们先在MongoDB目录中创建 log 与 data 这两个文件夹,分别用于存储日志与数据

  我们将cmd命令行以管理员方式启动并将路径配置到 MongoDB/Server/3.4/bin目录下,如图所示

  

  然后我们输入一行重要的命令: sc create mongodb binPath= "d:\MongoDB\Server\3.4\bin\mongod.exe --service --dbpath d:\MongoDB\data --logpath=d:\MongoDB\log\mongodb.log --logappend --directoryperdb"

  这行命令创建了一个服务项,我们可以通过如下方式进行查看服务:

  "win+r" 进入“运行”界面,输入“services.msc”进入"服务"——> 如图

  

  然后进入如下界面,我们可以看到在名称这里可以看到一个名为“MongoDB”的服务项,然后点击鼠标右键,“启动”该服务项。

  

  好,到这里,我们的服务算是启动成功了,另一种启动服务方式是:以管理员身份启动cmd,在cmd中输入net start MongoDB,然后出现MongoDB 服务启动成功 字样说明我们启动该服务成功!

 

二、直接启动MongoDB

  不通过创建服务的方式,我们也可以在bin目录下打开命令行输入: mongod.exe --dbpath "d://MongoDB//data" --logpath "d://MongoDB//log//mongodb.log" --logappend

  同样可以启动MongoDB 

  (解析:mongod --dbpath 命令是创建数据库文件的存放位置,启动mongodb服务时需要先确定数据库文件存放的位置,否则系统不会自动创建,启动会不成功。)

  --logpath 表示日志文件存放的路径     --logappend  表示以追加的方式写日志文件

 

 

服务启动后,我们再来说怎么配置环境变量!

  鼠标右键选择“计算机”“属性”

  

  选择“环境变量”,进入如下所示的界面

   

  选择图上标注的"Path",跳出如下图所示界面

  

  选择“新建”

  我们在新建中输入自己安装的MongoDB的bin文件夹路径然后选择“确定”即可!

  环境变量配置成功!配置好环境变量后,我们可以在cmd中输入mongo就可以启动MongoDB数据库进行操作了

  我们看下效果:

  打开cmd,输入mongo,看到如下图所示

  

 

 

MongoDB一般安装

1.首先到官网(http://www.mongodb.org/downloads )下载合适的安装包
 安装包有zip和msi格式的,这里推荐下载zip格式的,msi的其实也就是进行了下解压缩而已,而且安装时不让选择安装路径,默认安装到C:\Program Files\MongoDB 2.6 Standard 目录,根据自己的系统选择32位或64位的

我本人电脑是win8系统64位,下载64位的zip包,下载完成后解压缩到D:\MongoDB目录

创建数据库目录D:\MongoDB\data,接下来打开命令行窗口,切换到D:\MongoDB\bin 目录执行如下命令:

其中 --dbpath是指定数据库存放目录,这里要注意有两个 "-"

mongod --dbpath D:\MongoDB\data

这是命令行窗口会打印一些启动信息,最后一行显示为如下信息时表示启动成功了

2014-04-23T10:38:48.391+0800 [initandlisten] waiting for connections on port 27017

这是在浏览器输入http://localhost:27017/可以看到显示信息为

It looks like you are trying to access MongoDB over HTTP on the native driver port.
具体截图如下:

到此mongodb算是安装完了,比想象中简单了太多哈

MongoDB安装为Windows服务

将mongodb安装为windows服务非常简单只需要在上面执行的命令行后添加 --install即可

mongod --dbpath D:\MongoDB\data --install

按照正常的剧情,应该服务就安装成功了,但是很不幸,出现下面提示

--install has to be used with --logpath

按照提示,我们需要指定log目录,所以我们创建log目录D:\MongoDB\logs 然后重新执行命令

mongod --dbpath D:\MongoDB\data --logpath=D:\MongoDB\logs\mongodb.log --logappend

但是提示还是没有指定日志路径,几经折腾发现这是2.6版本的一个bug,将会在下一个版本修复,然后我们有两个选择,一个选择是使用上一个版本2.4.9,另一个选择是先用2.4.9版本安装成功服务,然后在升级到2.6(肿么升级?直接用2.6版本替换掉对应2.4.9版本的文件),那我们还有其他的选择吗,答案当然是肯定的,使用sc命令创建服务,使用net start启动服务

sc create MongoDB binPath= "D:\MongoDB\bin\mongod.exe --service --dbpath D:\MongoDB\data --logpath=D:\MongoDB\logs\mongodb.log  --logappend"
net start MongoDB

MongoDB配置文件

很遗憾,官方下载的安装包里面没有默认的配置文件,若想使用配置文件只能自己建一个了,另外个人也推荐使用配置文件来管理MongoDB的配置,使用配置文件配置数据库文件、日志文件以及其它的一些配置都一目了然

解压安装包到D:\MongoDB

建立数据库目录 D:\MongoDB\data

建立日志目录 D:\MongoDB\logs

建立配置文件目录 D:\MongoDB\etc

建立配置文件 D:\MongoDB\etc\mongodb.conf

复制代码

复制代码

dbpath=D:\MongoDB\data #数据库路径
logpath=D:\MongoDB\logs\mongodb.log #日志输出文件路径
logappend=true #错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件
journal=true #启用日志文件,默认启用
quiet=true #这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
port=27017 #端口号 默认为27017

复制代码

复制代码

这里仅指定了几个常用项,更多详细配置请参考官方文档 http://docs.mongodb.org/manual/reference/configuration-options/

注:以上目录是博主自己建立的目录,官方并没有对配置文件路径做出规范,全凭个人喜好来决定

配置文件和相关目录建好后使用如下方式启动MongoDB

  • 普通启动
    mongod --config D:\MongoDB\etc\mongodb.conf
  • 安装为Windows服务
    注:2.6版 这种方式在win7、win8 64位版无法安装成功,其他系统未测试
    mongod --config D:\MongoDB\etc\mongodb.conf --install
  • 使用SC安装为Windows服务
    sc create MongoDB binPath= "D:\MongoDB\bin\mongod.exe --service --config=D:\MongoDB\etc\mongodb.conf"

     

这里需要注意下当指定了日志文件后,无论使用配置文件指定还是在命令行指定,日志就都会输出到指定的日志文件去了,在命令行界面将看不到任何日志输出

 

附注:

  2.6版无法安装windows服务BUG链接 https://jira.mongodb.org/browse/SERVER-13515

  MongoDB官网:http://www.mongodb.org/

 

来源: http://www.cnblogs.com/lzrabbit/p/3682510.html

 

 

Linux下Mongodb安装和启动配置

1.下载安装包

wget 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

运行如下:

[[email protected] mongodb]# ./bin/mongo
MongoDB shell version: 1.8.2
connecting to: test
> use test;
switched to db test

 

若数据库出现如不能连上,则是一个data目录下的mongod.lock文件的问题,可以用如下的修复的命令,

mongod --repair