[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
三、安装MongoDB以及相关工具
sudo yum install -y mongodb-org
四、启动/停止MongoDB
启动MongoDB
sudo service mongod start
停止MongoDB
五、更改配置文件
更改第28行 port 2701为你需要更改的端口(这是MongoDB默认的监听端口)
更改第29行 bindIp: 127.0.0.1为0.0.0.0(MongoDB默认只能本地访问)PS:个人建议此处添加你需要连接MongoDB服务器的IP地址、而不是改成0.0.0.0。这样做会更安全
按照配置文件 /etc/mongod.conf启动MongoDB
mongod --config /etc/mongod.conf
启动成功,这样外网就可以访问MongoDB,由于mongoDb默认是不需要账号密码访问的,从安全的角度考虑,我们应该给MongoDB加上密码
六、添加账号密码
打开MongoDB的客户端,代码中的IP和端口是默认的,你可以改为你们自己刚才设置的
use admin
db.createUser({user: "admin",pwd: "admin",roles: [ { role: "readWriteAnyDatabase", db: "admin" } ]})
role的权限可参考,上面例子中采用的是权限是 readWriteAnyDatabase
All build-in Roles
Database User Roles: read|readWrite
数据库用户角色:读|读写
Database Admion Roles: dbAdmin|dbOwner|userAdmin
数据库管理角色:数据库管理员|数据库所有者|用户管理
Cluster Admin Roles: clusterAdmin|clusterManager|clusterMonitor|hostManager
集群管理角色:
Backup and Restoration Roles: backup|restore
All-Database Roles: readAnyDatabase|readWriteAnyDatabase|userAdminAnyDatabase|dbAdminAnyDatabase
所有数据库角色:读所有数据库|读写所有数据库|所有数据库的用户管理员|所有数据库的管理员
Superuser Roles: root
退出客户端
结束MongoDB进程
找到进程,然后kill掉进程
带认证模式开启Mongod
mongod --auth --config /etc/mongod.conf
加入开机自启动
echo "mongod --auth --config /etc/mongod.conf" >> /etc/rc.local
七、带账号密码链接MongoDB
mongo 127.0.0.1:27017
use admin
db.auth("账号","密码")
好了,现在我们可以带通过账号密码的方式链接MongoDb了
通过python的链接方式为
# -*- coding:utf-8 -*-
from pymongo import MongoClient
conn = MongoClient('mongodb://账号:密码@ip:端口/admin')
db = conn.mydb #链接mydb数据库,没有则创建
my_set = db.test_set #打开test_set集合,没有则创建
my_set.insert({"name":"zhangsan","age":18}) #写入这行文档
https://docs.mongodb.com/master/tutorial/install-mongodb-on-red-hat/
http://cuiqingcai.com/4020.html
Javascript Error 对象 和 错误处理
ChatGPT 生成 SD 和 Midjourney 的提示词(prompt)的简单方法
ChatGPT 基本使用方法
如何将 node 项目打包成一个独立的 .js 文件?
《代码整洁之道:程序员的职业素养》摘抄
近期评论