MongoDB安装过程

2016-03-28

迁移mongodb 3.4->3.6

可以采用直接拷贝数据库文件的方式进行。 拷贝文件需要停止数据库服务,停止后直接拷贝数据库文件目录中的数据即可。

注意事项:

1、.lock文件不要拷贝;
2、diagnostic.data的文件夹不要拷贝,如果拷贝,在新的数据库运行时会出现错误,需要修复,时间有点长。

mongodump和mongorestore来迁移数据库

备份:

mongodump -o /mongodbbackup/20180730/ --gzip -u admin -p password

恢复:

mongorestore --dir ./20180730/ --gzip

快速安装

apt-get install mongodb

启动

mongod -f /etc/mongodb.conf --fork   //使用配置文件启动,并后台执行

连接

mongo --host xx.xx.xx.xx --port 123

test数据库添加用户

use test
db.addUser("test","test")

登录

> use admin
switched to db admin
> db.auth("root","passwd")
1
> show dbs;
admin   0.000GB
local   0.000GB

添加超级管理员

db.createUser(
  { user: "admin",
    pwd: "admin",
    roles: [ { role: "root", db: "admin" } ]
  }
)

user字段,为新用户的名字;

pwd字段,用户的密码;

roles字段,指定用户的角色,可以用一个空数组给新用户设定空角色。在roles字段,可以指定内置角色和用户定义的角色。

内建的角色:

  1. 数据库用户角色:read、readWrite;
  2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
  3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
  4. 备份恢复角色:backup、restore;
  5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
  6. 超级用户角色:root
  7. 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
  8. 内部角色:__system

角色参考:https://docs.mongodb.com/manual/reference/built-in-roles/#built-in-roles

添加DB读写用户

先建立一个DB,然后在该DB下执行shell:

db.createUser(
  { user: "spider",
    pwd: "spider",
    roles: [ { role: "readWrite", db: "spider" } ]
  }
)

windows下开启mongodb用户认证

修改配置文件:C:\Program Files\MongoDB\Server\3.4\mongod.cfg

添加:

security:
    authorization: enabled

然后重启服务

客户端管理工具:

Robomongo https://robomongo.org/

studio3t https://studio3t.com/download-now/

navicat-for-mongodb https://www.navicat.com/en/download/navicat-for-mongodb

windowns下安装

下载地址:

https://www.mongodb.org/dl/win32/

安装教程:

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/