参考:
https://blog.csdn.net/qq_35763837/article/details/79654023
https://www.linuxidc.com/Linux/2016-07/133413.htm
1.直接下载 curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.6.2.tgz
解压安装包,修改解压后的目录名称如:
mv ./mongodb-linux-x86_64-amazon-3.6.2 /mongodb
2.创建数据存放和日志存放目录
*注 以下的xxx是省略具体解压目录,
mkdir -p xxx/data/db
mkdir xxx/logs
vim xxxx/logs/mongdb.log //日志文件
vim xxxx/mongdb.conf //新创建配置文件,关键是配置文件内容
dbpath =/home/software/mongdb/data/db #日志文件存放目录 logpath =/home/software/mongdb/logs/mongdb.log #端口 port = 27017 bind_ip_all = true #以守护线程的方式启用,即在后台运行 fork = true #日志输出方式,使用追加的方式写日志 logappend = true #PID File 的完整路径,如果没有设置,则没有PID文件 pidfilepath = /home/software/mongdb/mongo.pid #关闭http接口,默认关闭27018端口访问 #nohttpinterface = true #声明这是一个集群的分片,默认端口是27018 #shardsvr = true #设置每个数据库将被保存在一个单独的目录 #directoryperdb = true #开启认证 #auth = true #设开启简单的rest API,置后打开28017网页端口 #rest = true
3.测试启动,到解压的安装目录下启动
./bin/mongod --config /home/software/mongdb/mongo.conf
测试成功有提示(略图),失败有错误提示,查看原因修改配置文件,一般都是配置文件问题,
我遇到的问题有couldn't connect to server 127.0.0.1 shell/mongo.js:79
删除rm mongod.lock(找到locate mongod.lock),然后重启系统shutdown -r now
使用bin下的mongo 连接访问monodb.
添加mongo 软链接以便随时使用mongo命令:
ln -s /home/software/mongdb/bin/mongo /usr/bin/mongo
杀掉mongo进程,使用mongo重新启动进行测试。
4.配置服务启动
创建文件 vim /etc/rc.d/init.d/mongod,内容如下:
start() { /home/software/mongdb/bin/mongod --config /home/software/mongdb/mongdb.conf } stop() { /home/software/mongdb/bin/mongod --config /home/software/mongdb/mongdb.conf --shutdown } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1
保存完成之后,添加脚本执行权限,命令如下:chmod +x /etc/rc.d/init.d/mongod
使用命令service mongod start 启动MongoDB服务,关闭service mongod stop,重启service mongod restart。
使用lsof -i :27017,查看端口情况,或者ps -aux | grep mongo;
5.远程连接
我这里使用的win10 + 虚拟机centos7 安装搭建,我要使用客户端可视化工具连接该虚拟机上的mongo。
确保Linux本机服务启动访问没问题,可以在win系统cmd测试访问虚拟机端mongo:
1.ping 虚拟机的ip地址通否,然后使用mongo ip:port 进行访问 ( mongo 192.168.215.101:27017)
2.如果报错查看win10 cmd dos错误提示,打开虚拟机mongo/logs/mongodb.log日志文件
分析具体原因。
3.我主要使用方法是禁用Linux防火墙:
# 查看防火墙状态
service iptables status
# 永久关闭防火墙
chkconfig iptables off
事先安装yum install iptables-services
然后重启mongo服务,或者重启Linux(shutdown -h now)
基本上win10 cmd 可以访问了:
6.客户端连接需要
如果需要安全认证,需要创建账户密码:
use admin