CentOS 7.x 安装MongoDB并实现远程访问(搭建云MongoDB服务器)

MongoDB安装教程

yum安装

更新软件源

yum update -y

安装vim

yum install vim

配置yum源

vim /etc/yum.repos.d/mongodb-org-4.2.repo
[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

安装最新稳定版的MongoDB

sudo yum install -y mongodb-org
sudo yum install -y mongodb-org-4.2.6 mongodb-org-server-4.2.6 mongodb-org-shell-4.2.6 mongodb-org-mongos-4.2.6 mongodb-org-tools-4.2.6

启动MongoDB

systemctl start mongod

查看MongoDB状态

systemctl status mongod

启动MongoDB

systemctl stop mongod

设置开机自启

systemctl enable mongod

打开MongoDB

mongo

新建用户

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

开启验证

vim /etc/mongod.conf
# security:
security:
authorization: enabled

允许远程访问

vim /etc/mongod.conf
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting

重启MongoDB

systemctl restart mongod

登陆数据库

mongo admin -u admin -p 123456789

查看防火墙状态

firewall-cmd --state

启动防火墙

systemctl start firewalld      

开机自启防火墙

systemctl enable firewalld

开启27017端口

firewall-cmd --zone=public --add-port=27017/tcp --permanent

重启防火墙

systemctl restart firewalld.service

查询27017端口是否开放

firewall-cmd --zone=public --query-port=27017/tcp

编译安装

下载MongoDB

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-6.0.7.tgz

解压

tar -zxvf mongodb-linux-x86_64-rhel70-6.0.7.tgz

将其移动到/usr/local/mongodb

mv mongodb-linux-x86_64-rhel70-6.0.7 /usr/local/mongodb

创建数据库存储文件夹、日志存储文件夹

mkdir -p /data/mongodb/data
mkdir -p /data/mongodb/log

创建配置文件文件夹

mkdir /usr/local/mongodb/etc

新建配置文件

vim /mongodb.conf

写入如下内容

#下面这两行如果你跟我的文件路径不一样记得改成自己的
dbpath=/data/mongodb/data
logpath=/data/mongodb/log/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#允许远程访问
bind_ip=0.0.0.0
#开启子进程
fork=true
#开启认证,必选先添加用户,先不开启(不用验证账号密码)
#下面这一行可以先不复制!一会创建完用户回来加上
#auth=true

先启动mongodb

./mongod --config /usr/local/mongodb/etc/mongodb.conf

mongo: error while loading shared libraries: libcrypto.so.10: cannot open shared object file: No suc

解决:查看libcrypto.so.10是否安装

rpm -qa | grep libcrypto.so
rpm -qa | grep libcrypt

安装

dnf install compat-openssl10

查看mongodb进程

ps -ef|grep mongodb

开机自启

cd /etc/systemd/system/
touch mongodb.service
chmod 755 mongodb.service

写入如下内容

[Unit]
Description=Mongodb
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --quiet --config /usr/local/mongodb/etc/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
PrivateTmp=true

[Install]
WantedBy=multi-user.target

重新加载 systemd 配置

systemctl daemon-reload

设置开机自启

systemctl enable mongodb

启动mongodb

systemctl start mongodb

添加系统路径

vim /etc/profile

添加如下内容

export PATH=$PATH:/usr/local/mongodb/bin

配置生效

echo $PATH

配置软连接

ln -s /usr/local/mongodb/bin/mongo /usr/bin/mongo

参考文献:

https://www.cnblogs.com/kimkat/p/9192785.html

https://mongodb.net.cn/manual/tutorial/install-mongodb-on-red-hat/

https://www.bilibili.com/video/BV17A41177Xa/

https://www.jianshu.com/p/237a0c5ad9fa

你可能感兴趣的:(CentOS,服务器,centos,mongodb)