mongodb 的从 0 到 1 的安装过程,从安装到启动的基本用法
- 安装
- 配置
- 启动
- 登录
- 初始化用户
- 备份&还原
安装
建议从 官网 下载,根据环境选择合适的包,一般选择 tgz,解压后会在 bin 目录下看到各命令。移动到合适目录(这里选择 /usr/bin
),设置权限,设置全局变量即可使用。
/bin
|
├-- install_compass
├-- mongo
├-- mongod
├-- mongos
...
设置环境变量
// /etc/profile 增加下面配置
export MONGODB_HOME=/usr/bin/mongodb
export PATH=$MONGODB_HOME/bin:$PATH
配置
默认安装后的配置目录一般在 /etc/mongod.conf
,具体配置如下:
// 端口
port=27017
// 数据存储目录
dbpath= /data/mongodb/db
// 日志存储目录
logpath= /data/mongodb/log/mongodb.log
// 日志追加方式
logappend=true
// 是否 fork 模式
fork=true
maxConns=100
journal=true
storageEngine=wiredTiger
bind_ip= 0.0.0.0
// 是否开启认证
auth= true
启动
启动直接执行安装目录 bin 下的 mongod 命令即可,一些以服务方式安装的可以直接通过 service 方式启动。
- 命令方式启动
/usr/bin/mongod -f /etc/mongod.conf
- 服务方式启动
servie mongod start
service mongod stop
登录
刚装好的服务还需要登录以初始用户或登录做别的
// 无密码登录,需要 auth 设为 false
mongo
// 指定登录数据库和密码(rms 为数据库名称)
mongo -u rms -p password
初始化用户
为了安全数据库都需要设置密码登录,这就需要登录给每个数据库设置用户和密码。
// 1.设置无密码登录(需要设置 config 中 auth=false)
mongo
// 2.切换到对应数据库
use ms
// 3.管理员角色
db.createUser( { user: "root", pwd: "2Et54E8m", roles: [ { role: "dbOwner", db: "ms" } ] } )
// 4.用户角色
db.createUser( { user: "rms", pwd: "I574Jcl6", roles: [ { role: "readWrite", db: "ms" } ] } )
备份
mongodump 用来备份数据库,生成 .bson 文件
// 一个例子
/usr/bin/mongodump -u rms -p *** -d ms -o /usr/mongod_data_bak/ms_xxx --excludeCollection "system.users"
更多参数可以通过 mongodump --help
查看,这里列出一部分常用参数
Usage:
mongodump <options>
-h, 主机地址
--port, 端口号
-u, 用户名
-p, 密码
-d, 指定的数据库
-c, 指定的表
-o, 备份输出的目录
--excludeCollection, 排除的表
--authenticationMechanism=<mechanism>, 授权认证算法
例如在 mongodb@4.0
后连接都需要添加认证算法 'authMechanism' => 'SCRAM-SHA-1'
还原
mongorestore 从 .bson 文件恢复数据,
// 一个例子
/usr/bin/mongorestore -u rms -p *** -d ms /usr/mongod_data_bak/ms_xxx
更多参数可以通过 mongodump --help
查看,这里列出一部分常用参数
Usage:
mongorestore <options> <directory or file to restore>
-h, 主机地址
--port, 端口号
-u, 用户名
-p, 密码
-d, 指定的数据库名称
--drop, 先删除当前数据在恢复,相当于替换
<path>, 备份的目录,需要在参数最后