cenos7安装mongodb
原创
©著作权归作者所有:来自51CTO博客作者抹香鲸之海的原创作品,请联系作者获取转载授权,否则将追究法律责任
一、安装步骤
1、下载安装
1、下载
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.9.tgz
2、解压
$ tar -zxvf mongodb-linux-x86_64-4.0.9.tgz
3、改名,放到目录:/usr/local
$ mv mongodb-linux-x86_64-4.0.9 /usr/local/mongodb
4、新建必要的文件夹(依次是:数据库 日志 配置文件)
$ cd /usr/local/mongodb
$ mkdir data log etc
5、添加系统路径
$ vim /etc/profile
export PATH=$PATH:/usr/local/mongodb/bin
6、配置生效
7、查看是否添加
或者做软链
ln -s /usr/local/mongodb/bin/mongo /usr/bin/mongo
2、配置文件
配置内容
db存放的目录
dbpath=/usr/local/mongodb/data
后台启动需要配置日志输出
logpath=/usr/local/mongodb/log/mongodb.log
端口
port=27017
#绑定ip 默认127.0.0.1只允许本地连接
bind_ip = 127.0.0.1
设置成后台启动
3、启动关闭
启动服务
mongod --config /usr/local/mongodb/etc/mongodb.conf
查看是否启动mongo
netstat -lanp | grep "27017"
关闭服务
mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
或者
二、外网访问和权限
1、添加用户
本地连接
添加用户
> use admin
switched to db admin
> db.createUser({user: "admin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});
添加超级用户
> db.createUser({user: "root",pwd: "123456",roles: [ { role: "root", db: "admin" } ]});
查看已有用户
删除单个用户
> db.system.users.remove({user:"XXXXXX"})
关闭服务
2、配置文件中添加
vim /usr/local/mongodb/etc/mongodb.conf
登录验证
外网访问
然后启动,这时需要进行验证
本地连接 - 连接时验证
$ mongo -u username -p password
远程连接 - 连接时验证
$ mongo 127.0.0.1/admin -u username -p password
远程连接 - 连接后验证
> use admin
switched to db admin
> db.auth("username", "password")
//-------------报错------------------------
MongoDB shell version v4.0.9
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
2021-08-03T17:06:48.671+0800 E QUERY [js] Error: couldn’t connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused :
connect@src/mongo/shell/mongo.js:343:13
@(connect):2:6
exception: connect failed
问题原因:
要与mongo连接,必须首先启动’mongod’服务
解决:
mongod --dbpath /usr/local/mongodb/data
db.auth(“admin”, “123456”)
三、设置开机启动
vim /etc/rc.d/init.d/mongod
内容如下, 注意使用绝对路径
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
启动关闭
更改权限
chmod +x /etc/rc.d/init.d/mongod
启动服务
关闭服务
四、其他
1、检查端口号开启情况
查看开启的端口号
查看端口使用情况
2、Python使用的连接url:
mongodb://<username>:<password>@<ip>:<port>/<database>
例如:
mongodb://root:123456@127.0.0.1:27017/test
五、报错及解决
1、mongo启动报错
mongod: 无法执行二进制文件
解决:
检查你的linux是64还是32位,版本是否对应
2、端口问题解决:
MongoDB 开放外网访问了,可是就是访问不到,要考虑平台的端口权限了,可以尝试从以下3点考虑
1、如果用了宝塔面板端口开放,也可以在服务器上开放,效果一样的
2、阿里云控制台的安全组
3、mongod端口开放