MongoDB安装与添加开机自启动

一、先查看自己的系统是什么,再看是什么版本

[root@Centos ~]# lsb_release -a
bash: lsb_release: command not found

查看lsb_release属于哪个软件包

yum provides */lsb_release

有显示 redhat-lsb-core-4.1-27.el7.centos.1.x86_64

[root@Centos ~]# yum -y install redhat-lsb-core-4.1-27.el7.centos.1.x86_64

安装并测试

[root@Centos ~]# lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID:    CentOS
Description:    CentOS Linux release 7.4.1708 (Core) 
Release:    7.4.1708
Codename:    Core

二、官网下载对应版本的文件

$ cd /usr/local
本地传上来或者wget
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

$ tar zxvf mongodb-linux-x86_64-4.0.0.tgz
$ mv mongodb-linux-x86_64-4.0.0 /usr/local/mongodb

配置环境变量
$ vim /etc/profile

在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下内容:
#Set Mongodb
export PATH=/usr/local/mongodb/bin:$PATH


保存后通过下面的命令使环境变量生效:
$ cd ~
$ source /etc/profile

创建数据库目录

$ cd /usr/local/mongodb
$ touch mongodb.conf
$ mkdir db
$ mkdir log
$ cd log
$ touch mongodb.log

修改mongodb配置文件。
vim /usr/local/mongodb/mongodb.conf

添加以下内容
port=27017 #端口
dbpath= /usr/local/mongodb/db #数据库存文件存放目录
logpath= /usr/local/mongodb/log/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
#noauth=true #不启用验证
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0  #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
auth = true


设置文件夹权限
$ cd /usr/local/mongodb
$ chmod 777 db
$ chmod 777 log

启动mongodb
$ cd ~
$ mongod --config /usr/local/mongodb/mongodb.conf
或者
$ cd /usr/local/mongodb/bin
$ ./mongod -f /usr/local/mongodb/mongodb.conf




查看端口 netstat  -ntulp | grep 27017

进入mongo

$ mongo

关闭数据库

$ ps aux |grep mongodb
$ sudo kill 5314

 创建用户赋予角色,创建库,库如果没出来那么就在库钟加入数据即可

其中auth,在赋予完角色后再恢复至true,重启即可

查看数据库
>show dbs

创建库test
>use test

创建库后,但show dbs不显示,是因为没数据,插入一条数据即可
>db.test.insert({"name":"test"})

创建用户并授予角色
>use admin
>db.createUser( {user: "test01",pwd: "123456",roles: [ { role: "dbAdmin", db: "test" } ]})

验证是否创建成功
> db.auth("test01","123456")

 

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

具体角色:

Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限。

三、设置开机自动启动

1、sh脚本

$ cd ~
$ mkdir shell
$ cd shell
$ vim mongod_start.sh
$ vim mongodb.log

新增mongod_start.sh,可以测试脚本./mongod_start.sh

#!/bin/bash
# pkill -9 mongod;
/usr/local/mongodb/bin/mongod --shutdown --dbpath /usr/local/mongodb/db/;
nohup /usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/db --logpath=/usr/local/mongodb/log/mongodb.log > /root/shell/mongod.log 2>&1 &

设置权限777

$ chmod 777 mongod_start.sh

2、脚本无误后可添加脚本到开机自启动

$ vim /etc/rc.d/rc.local
文件后面追加
/root/shell/mongod_start.sh

chmod +x /etc/rc.d/rc.local

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在开机时自动启动MongoDB,你可以按照以下步骤进行设置: 1. 打开终端或命令提示符窗口。 2. 进入MongoDB安装目录。在终端中使用以下命令进入默认安装目录(根据你的安装路径可能会有所不同): ``` cd /usr/local/mongodb/ ``` 3. 创建一个名为`mongod.conf`的配置文件。你可以使用任何文本编辑器打开此文件,例如: ``` vi mongod.conf ``` 4. 在`mongod.conf`文件中添加以下内容: ``` systemLog: destination: file path: /var/log/mongodb/mongod.log logAppend: true storage: dbPath: /var/lib/mongodb journal: enabled: true processManagement: fork: true pidFilePath: /var/run/mongodb/mongod.pid net: bindIp: 127.0.0.1 ``` 5. 保存并关闭`mongod.conf`文件。 6. 创建MongoDB的日志文件和PID文件的存储目录。在终端中使用以下命令创建所需的目录: ``` sudo mkdir -p /var/log/mongodb/ sudo mkdir -p /var/run/mongodb/ ``` 7. 授权MongoDB的数据和日志目录给MongoDB用户。在终端中使用以下命令: ``` sudo chown -R mongodb:mongodb /var/log/mongodb/ sudo chown -R mongodb:mongodb /var/lib/mongodb/ sudo chown -R mongodb:mongodb /var/run/mongodb/ ``` 8. 编辑`/etc/rc.local`文件以在启动时自动启动MongoDB。在终端中使用以下命令打开此文件: ``` sudo vi /etc/rc.local ``` 9. 在`/etc/rc.local`文件的末尾添加以下内容: ``` /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongod.conf ``` 10. 保存并关闭`/etc/rc.local`文件。 现在,当你的系统开机时,MongoDB将自动启动。你可以通过检查日志文件`/var/log/mongodb/mongod.log`来验证它是否成功启动。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值