linux 下安装mongodb

1、准备

mongodb安装包
	上传到linux服务器上并解压

centos mongodb部署集群 linux部署mongodb_centos mongodb部署集群

改个简单的一点的名字

centos mongodb部署集群 linux部署mongodb_数据库_02

2、配置环境

编辑profile文件
	vi  /etc/profile
	并在最后添加  export PATH=$PATH:/home/soft/mongodb/bin
	注:路径按照实际文件位置变动
exit

centos mongodb部署集群 linux部署mongodb_centos mongodb部署集群_03

3、创建配置文件

vi mongodb.conf
	然后添加下列配置
		port=27017	//启动的端口
		dbpath=/data/db	//数据存放位置
		logappend=true	//日志自动切割 按每天存放
		fork=true		//后台启动
		logpath=/logs/mongodb.log		//日志存放路径
		nohttpinterface=true			//关闭http接口
		bind_ip=0.0.0.0		//0.0.0.0表示可以通过远程连接该数据库,127.0.0.1表示只能当前服务器连接
		auth=true			// 权限验证  (第一次启动建议关闭,因为需要创建root账号,开启状态无法创建)
		maxConns=1000		//最大连接数

centos mongodb部署集群 linux部署mongodb_数据库_04

4、启动

./mongod -f mongodb.conf

centos mongodb部署集群 linux部署mongodb_mongodb_05

5、创建root权限账号

use admin
			db.createUser({ user: 'admin', pwd: '123456',roles: [ { role: "userAdminAnyDatabase", db: "admin" }] })
			输出成功示例:
				{
				  "_id" : "admin.admin",
				  "user" : "admin",
				  "db" : "admin",
				  "roles" : [
				    {
				      "role" : "userAdminAnyDatabase",
				      "db" : "admin"
				    }
				  ]
				}

6、创建普通数据库用户

当创建好root权限的账号后,先退出mongodb,把配置文件里面的auth改为true,重启mongodb
然后进入mongo并验证admin账号

centos mongodb部署集群 linux部署mongodb_配置文件_06

然后创建需要的数据库(test数据库)
注:mongo数据库是数据库跟着用户走,所以创建数据库需要创建新的用户
use test
db.createUser({ user: 'test', pwd: '123456',roles: [ { role: "readWrite", db: "test" }] })

centos mongodb部署集群 linux部署mongodb_centos mongodb部署集群_07

创建完成了,不过当你执行show  dbs的时候会发现没有test数据库,因为mongo数据库要先插入一条数据才会显示数据库,
所以我们根据刚才创建的用户,插入一条测试数据
db.auth('test','123456')
db.test.insert({'name':'test'})
执行完毕后再执行show dbs 就可以看到了

centos mongodb部署集群 linux部署mongodb_centos mongodb部署集群_08


centos mongodb部署集群 linux部署mongodb_数据库_09

7、测试

使用robo连接admin数据库(可以显示所有数据库)

centos mongodb部署集群 linux部署mongodb_数据库_10


连接成功!!

8、可能遇到的问题

1、 robo连接数据库时报错 :Network is unreachable
	1)、原因:服务器防火墙没有把27017端口开放导致无法连接
		解决:开放27017端口
			 或关闭防火墙:
			   systemctl stop firewalld.service && systemctl disable firewalld.service
	2)、原因:配置文件里bind_ip 为127.0.0.1
		解决:修改配置文件并重启数据库