1.创建mongodb3.4的yum源文件
在yum源文件目录中创建mongodb-org-3.4.repo
[root@localhost ~]# vim /etc/yum.repos.d/mongodb-org-3.4.repo
写入仓库文件
[mongodb-org-3.4]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
2.验证yum源文件是否有效
查看mongodb所需安装文件
[root@localhost ~]# sudo yum search mongodb-orgLoaded plugins: fastestmirror, langpacksmongodb-org-3.4 | 2.5 kB 00:00:00 Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: mirror01.idc.hinet.net * extras: mirrors.nju.edu.cn * updates: mirrors.cqu.edu.cn==================================================== N/S matched: mongodb-org =====================================================mongodb-org.x86_64 : MongoDB open source document-oriented database system (metapackage)mongodb-org-mongos.x86_64 : MongoDB sharded cluster query routermongodb-org-server.x86_64 : MongoDB database servermongodb-org-shell.x86_64 : MongoDB shell clientmongodb-org-tools.x86_64 : MongoDB tools Name and summary matches only, use "search all" for everything.
3.安装mongodb所需包
MongoDB提供的官方安装文件包含以下软件包:
Package Name | Description |
---|---|
mongodb-org | 下面四个组件包的Metapackage |
mongodb-org-server | 包含mongod守护程序和关联的配置和init脚本 |
mongodb-org-mongos | 包含mongos守护进程 |
mongodb-org-shell | 包含mongo shell |
mongodb-org-tools | 包含以下MongoDB工具:mongoimport bsondump,mongodump,mongoexport,mongofiles,mongooplog,mongoperf,mongorestore,mongostat和mongotop |
需要注意的是,mongodb-org-server包提供了一个使用/etc/mongod.conf配置文件启动mongod的初始化脚本。
4.执行yum安装
直接使用快速安装
[root@localhost ~]# sudo yum install -y mongodb-orgLoaded plugins: fastestmirror, langpacksLoading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: mirror01.idc.hinet.net * extras: mirrors.nju.edu.cn * updates: mirrors.cqu.edu.cnResolving Dependencies--> Running transaction check---> Package mongodb-org.x86_64 0:3.4.9-1.el7 will be installed--> Processing Dependency: mongodb-org-tools = 3.4.9 for package: mongodb-org-3.4.9-1.el7.x86_64--> Processing Dependency: mongodb-org-shell = 3.4.9 for package: mongodb-org-3.4.9-1.el7.x86_64--> Processing Dependency: mongodb-org-server = 3.4.9 for package: mongodb-org-3.4.9-1.el7.x86_64--> Processing Dependency: mongodb-org-mongos = 3.4.9 for package: mongodb-org-3.4.9-1.el7.x86_64--> Running transaction check---> Package mongodb-org-mongos.x86_64 0:3.4.9-1.el7 will be installed---> Package mongodb-org-server.x86_64 0:3.4.9-1.el7 will be installed---> Package mongodb-org-shell.x86_64 0:3.4.9-1.el7 will be installed---> Package mongodb-org-tools.x86_64 0:3.4.9-1.el7 will be installed--> Finished Dependency ResolutionDependencies Resolved=================================================================================================================================== Package Arch Version Repository Size===================================================================================================================================Installing: mongodb-org x86_64 3.4.9-1.el7 mongodb-org-3.4 5.8 kInstalling for dependencies: mongodb-org-mongos x86_64 3.4.9-1.el7 mongodb-org-3.4 12 M mongodb-org-server x86_64 3.4.9-1.el7 mongodb-org-3.4 20 M mongodb-org-shell x86_64 3.4.9-1.el7 mongodb-org-3.4 11 M mongodb-org-tools x86_64 3.4.9-1.el7 mongodb-org-3.4 49 MTransaction Summary===================================================================================================================================Install 1 Package (+4 Dependent packages)Total download size: 91 MInstalled size: 258 MDownloading packages:(1/5): mongodb-org-3.4.9-1.el7.x86_64.rpm | 5.8 kB 00:00:01 (2/5): mongodb-org-server-3.4.9-1.el7.x86_64.rpm | 20 MB 00:04:28 (3/5): mongodb-org-tools-3.4.9-1.el7.x86_64.rpm | 49 MB 00:07:07 (4/5): mongodb-org-shell-3.4.9-1.el7.x86_64.rpm | 11 MB 00:00:30 (5/5): mongodb-org-mongos-3.4.9-1.el7.x86_64.rpm | 12 MB 00:00:36 -----------------------------------------------------------------------------------------------------------------------------------Total 75 kB/s | 91 MB 00:20:40 Running transaction checkRunning transaction testTransaction test succeededRunning transaction Installing : mongodb-org-mongos-3.4.9-1.el7.x86_64 1/5 Installing : mongodb-org-tools-3.4.9-1.el7.x86_64 2/5 Installing : mongodb-org-shell-3.4.9-1.el7.x86_64 3/5 Installing : mongodb-org-server-3.4.9-1.el7.x86_64 4/5 Created symlink from /etc/systemd/system/multi-user.target.wants/mongod.service to /usr/lib/systemd/system/mongod.service. Installing : mongodb-org-3.4.9-1.el7.x86_64 5/5 Verifying : mongodb-org-server-3.4.9-1.el7.x86_64 1/5 Verifying : mongodb-org-3.4.9-1.el7.x86_64 2/5 Verifying : mongodb-org-shell-3.4.9-1.el7.x86_64 3/5 Verifying : mongodb-org-tools-3.4.9-1.el7.x86_64 4/5 Verifying : mongodb-org-mongos-3.4.9-1.el7.x86_64 5/5 Installed: mongodb-org.x86_64 0:3.4.9-1.el7 Dependency Installed: mongodb-org-mongos.x86_64 0:3.4.9-1.el7 mongodb-org-server.x86_64 0:3.4.9-1.el7 mongodb-org-shell.x86_64 0:3.4.9-1.el7 mongodb-org-tools.x86_64 0:3.4.9-1.el7 Complete!
5.启动mongodb服务
[root@localhost ~]# sudo service mongod startRedirecting to /bin/systemctl start mongod.servic
6.将mongodb设为开机自启动
[root@localhost ~]# systemctl enable mongod.service
7.连接本地mongodb数据库
[root@localhost ~]# mongoMongoDB shell version v3.4.9connecting to: mongodb://127.0.0.1:27017MongoDB server version: 3.4.9Server has startup warnings: 2017-09-18T17:07:22.336+0800 I STORAGE [initandlisten] 2017-09-18T17:07:22.336+0800 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine2017-09-18T17:07:22.337+0800 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] 2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] 2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] 2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] 2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'2017-09-18T17:07:22.827+0800 I CONTROL [initandlisten] > dbtest
7.mongodb一些重要的默认设置
- 配置文件路径 /etc/mongod.conf
默认端口和ip port: 27017 bindIp: 127.0.0.1
- 数据库日志路径
/var/log/mongodb/mongod.log
- 数据文件路径
/var/lib/mongo
8.mongodb配置用户授权登录
首先,我们得创建用户,同样我们先使用mongo命令进入脚本,并一次执行以下命令用以创建用户:
> mongo> use admin> db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
然后,我们在修改下配置文件,先在mongo脚本里输入exit退出mongo。之后再输入以下命令修改配置文件:
vim /etc/mongod.conf
修改图中红色框的内容,注释bindIp
,解开security
的注释,并在下方添加authorization: enabled
即可。 之后再重启mongodb,重启的命令之前已经说过了,centos7之前与之后有些差别。 然后再试下mongo命令。我们发现show dbs命令报错了,这是因为我们开启了认证,但是我们并没有登录。我们可以用以下命令来添加授权:
> use admin> db.auth("root","123456")
这样我们就可以继续访问mongodb了。 或者我们可以用我们的用户名密码登录:
mongo 127.0.0.1:27017/admin -u root -p
本文部分内容还来自 ,感谢Chain大神的慷慨分享。