搭建-centos7-mongodb
1.安装jdk8的环境,centos7中的yum自带了jdk8环境,故:
yum -y install java
当然,也可以卸载掉自带的openjdk:yum -y remove java-*
2.查看jdk的版本:
java -version
3.查看当前jdk的安装路径:
which java
4.下载官方MongoDB安装包:
官方地址: https://www.mongodb.com/try/download/enterprise
cd /opt
wget https://downloads.mongodb.com/linux/mongodb-linux-x86_64-enterprise-rhel70-4.2.8.tgz
5.解压安装包:
tar -zxvf mongodb-linux-x86_64-enterprise-rhel70-4.2.8.tgz
6.重命名为mongodb:
mv mongodb-linux-x86_64-enterprise-rhel70-4.2.8 mongodb
7.配置conf与目录:
1.进入mongodb目录:
cd /mongodb
2.创建db目录和日志文件:
mkdir -p ./data/db
mkdir -p ./logs
touch ./logs/mongodb.log
3.创建mongodb.conf文件
vi mongodb.conf
写入内容:
port=27017
#db目录
dbpath=/opt/mongodb/data/db/
#日志目录
logpath=/opt/mongodb/logs/mongodb.log
#后台
fork=true
#日志输出
logappend=true
#允许远程IP连接
bind_ip=0.0.0.0
8.启动测试
./bin/mongod --config mongodb.conf
报错:./bin/mongod: error while loading shared libraries: libnetsnmpmibs.so.31: cannot open shared object file: No such file or directory
原因:未装net-snmp
执行命令:
yum -y install net-snmp
再次执行命令:./bin/mongod --config mongodb.conf
连接:./bin/mongo
再次之上,可以编写一些列的sql,进行测试,这里不再多操作。
9.配置MongoDB服务,并且开机自动启动:
创建mongodb.service文件:
vi /lib/systemd/system/mongodb.service
写入内容:
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/opt/mongodb/bin/mongod --config /opt/mongodb/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/opt/mongodb/bin/mongod --shutdown --config /opt/mongodb/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
添加执行权限:
chmod +x /lib/systemd/system/mongodb.service
启动服务:
systemctl start mongodb.service
命令执行之后会报错,原因是不是从/usr/lib/systemd/system/路径下创建的mongodb.service服务文件,而是从/lib/systemd/system/目录下创建的,执行如下命令可以解决:
systemctl enable mongodb.service
systemctl daemon-reload
vi /usr/lib/systemd/system/mongodb.service
10.mongodb默认是没有设置用户名和密码的,需要我们自己设置:
连接到mongodb的命令环境:
./bin/mongo
然后:
use admin
db.createUser(
{
user: “admin”,
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: “userAdminAnyDatabase”, db: “admin” }, “readWriteAnyDatabase” ]
}
)
接着会自动提示输入密码:123456
11.最后推荐一款mongodb的可视化工具:
https://robomongo.org/