MongoDB 环境安装

    • OS X 32-bit
    • OS X 64-bit
    • Linux 32-bit
    • Linux 64-bit
    • Windows 32-bit
    • Windows 64-bit
    • Solaris i86pc
    • Solaris 64

    MongoDB GUI可视化工具

    Robomongo 0.9.0-RC4

    下载地址:

    百度云链接:http://pan.baidu.com/s/1c1Vj6nQ 密码:

    MongoDB 环境安装 - 图1

    安装 MongoDB Linux 社区版本

    https://docs.mongodb.com/getting-started/shell/tutorial/install-on-linux/

    MongoDB 环境安装 - 图2

    1. 使用包管理系统导入公钥:

    Ubuntu软件包管理工具(即dpkg和apt)通过要求分销商签订包GPG密钥确保方案的一致性和真实性。使用以下命令来导入MongoDB公共GPG密钥:

    2. 创建MongoDB清单文件:

    Ubuntu 12.04

    1. echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

    Ubuntu 14.04

    1. echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

    Ubuntu 16.04

    1. echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

    3. 重新加载本地包数据库

    • 使用以下命令来重新加载本地包数据库:
    1. sudo apt-get update

    执行结果部分截图:

    1. Ign http://repo.mongodb.org trusty/mongodb-org/3.2 InRelease
    2. Get:2 http://repo.mongodb.org trusty/mongodb-org/3.2 Release [3,462 B]
    3. Get:3 http://repo.mongodb.org trusty/mongodb-org/3.2/multiverse amd64 Packages [7,908 B]
    4. Get:4 http://repo.mongodb.org trusty/mongodb-org/3.2/multiverse i386 Packages [29 B]
    5. Ign http://repo.mongodb.org trusty/mongodb-org/3.2/multiverse Translation-en_US
    6. Ign http://repo.mongodb.org trusty/mongodb-org/3.2/multiverse Translation-en

    安装时可以安装MongoDB的最新稳定版本或者一个指定的MongoDB版本。

    • 安装最新的MongoDB稳定的版本,使用以下命令:
    • 指定MongoDB版本,分别指定每个组件包的包名和版本号,如下例所示,安装MongoDB的3.0.4版本:
    1. sudo apt-get install -y mongodb-org=3.0.4 mongodb-org-server=3.0.4 mongodb-org-shell=3.0.4 mongodb-org-mongos=3.0.4 mongodb-org-tools=3.0.4

    锁定MongoDB的当前安装版本,使用以下命令:

    1. echo "mongodb-org hold" | sudo dpkg --set-selections
    2. echo "mongodb-org-server hold" | sudo dpkg --set-selections
    3. echo "mongodb-org-shell hold" | sudo dpkg --set-selections
    4. echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
    5. echo "mongodb-org-tools hold" | sudo dpkg --set-selections

    The first thing is to create a systemd unit file which defines a unit in this case our MongoDB service. Systemd unit configuration files are stored in /etc/systemd/system directory and we shall create the mongodb.service file under it, use your editor of choice as follows:

    1. sudo vi /lib/systemd/system/mongod.service

    Then add the following line into that file:

    1. [Unit]
    2. Description=High-performance, schema-free document-oriented database
    3. After=network.target
    4. [Service]
    5. User=mongodb
    6. Group=mongodb
    7. ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
    8. WantedBy=multi-user.target

    说明:

    1. --quiet
    2. mongod运行在安静模式,限制输出量

    查看配置文件:

    MongoDB 环境安装 - 图3

    MongoDB实例默认:

    将其数据文件存储在/var/lib/mongodb目录;

    其日志文件在/var/log/mongodb目录,并使用当前用户运行mongod;

    如果你改变用户运行MongoDB进程,您必须修改/var/lib/mongodb/var/log/mongodb目录的访问控制权限

    1. sudo chown -R mongodb:mongodb /var/lib/mongodb/
    2. sudo chown -R mongodb:mongodb /var/log/mongodb/

    现在可以开始我们的mongod的服务,运行下面的命令:

    1. sudo systemctl start mongod

    或者

    1. sudo service mongod start
    2. python@ubuntu:~$ sudo service mongod start
    3. Warning: mongod.service changed on disk. Run 'systemctl daemon-reload' to reload units.

    要检查服务的状态,执行以下命令:

    1. sudo systemctl status mongod
    2. Warning: mongod.service changed on disk. Run 'systemctl daemon-reload' to reload units.
    3. python@ubuntu:~$ systemctl daemon-reload

    设置开机启动

    1. sudo systemctl enable mongod

    取消开机启动

    日常MongoDB管理

    启动MongoDB:

    可以使用以下命令启动mongod进程:

    sudo service mongod start

    可以通过检查日志文件/var/log/mongodb/mongod.log的内容来验证是否成功启动。

    [initandlisten] waiting for connections on port <port>

    配置在/etc/mongod.conf默认端口号 27017【考点】 Mysql呢?3306

    停止MongoDB

    在需要时,使用以下命令停止mongod进程:

    sudo service mongod stop

    重启MongoDB:

    可以通过以下命令重启mongod进程:

    sudo service mongod restart

    以通过观察输出在/var/log/mongo/mongod.log日志中的错误和重要信息信息判断进程状态。

    要使用MongoDB 运行以下命令

    mongo

    这将会连接到运行的 mongod 实例。

    MongoDB 帮助

    要获得 MongoDB客户端的命令列表,需要输入命令db.help()。这会列出命令如下列表所示:

    MongoDB 环境安装 - 图4

    MongoDB 统计信息

    要获得关于MongoDB的服务器统计,需要在MongoDB客户端键入命令db.stats()。这将显示数据库名称,收集和数据库中的文档信息。输出的命令如下所示

    1. "db" : "test" ,表示当前是针对"test"这个数据库的描述。想要查看其他数据库,可以先运行$ use datbasename
    2. "collections" : 3,表示当前数据库有多少个collections.可以通过运行show collections查看当前数据库具体有哪些collection.
    3. "objects" : 267,表示当前数据库所有collection总共有多少行数据。显示的数据是一个估计值,并不是非常精确。
    4. "avgObjSize" : 623.2322097378277,表示每行数据是大小,也是估计值,单位是bytes
    5. "dataSize" : 16640,表示当前数据库所有数据的总大小,不是指占有磁盘大小。单位是bytes
    6. "storageSize" : 110592,表示当前数据库占有磁盘大小,单位是bytes,因为mongodb有预分配空间机制,为了防止当有大量数据插入时对磁盘的压力,因此会事先多分配磁盘空间。
    7. "numExtents" : 0,没有什么真实意义
    8. "indexSize" : 53248,表示索引占有磁盘大小。单位是bytes