Establecer el nombre de usuario y la contraseña de la base de datos MongoDB
/etc/xxx.conf
Edite el archivo de configuración mongodb para habilitar la autenticación de usuario
vim /etc/mongodb.conf
# IP
bind_ip = 0.0.0.0
# 端口
port = 27017
Modifique la siguiente configuración de seguridad
# Turn on/off security. Off is currently the default
#noauth = true
#auth = true
Quitar los #auth=true
comentarios antes#
auth = true
Reiniciar mongodb
servicio
service mongodb restart
mongo
Conéctese al servidor usando un shell
# 连接服务器
mongo
# 连接到 admin 数据库
use admin
# 创建管理员账号,用户名和密码可以任意,角色为 `root`
db.createUser({user:'root',pwd:'123456',roles:['root']})
# 登录
db.auth('root','123456')
Después de iniciar sesión en la base de datos de administración
user admin
db.auth('root','hello')
show collections
> system.users
> system.version
# 显示用户信息
db.system.users.find().pretty()
Diseñar nombre de usuario y contraseña para una base de datos específica
# 创建数据库
use hr
# 创建用户
db.createUser({
user:'hr_user',
pwd:'123',
roles:[{db:'hr',role:'dbOwner'}]
})
# 显示用户
show users
Conectarse a la base de datos
mongo 127.0.0.1:27017/demo -u demo -p
# 获得 mongo shell 更多信息
mongo --help
Modelado de datos
文档
Incrustado en子文档
- Entre documentos
引用
($lookup
similar a las conexiones de tabla en una base de datos relacional)
MongoDB un documento no puede exceder los 16M (un documento no debe estar anidado demasiado grande)
MongoDB GridFS (Sistema de archivos de cuadrícula)
Utilizado para almacenar archivos grandes (más de 16M), el archivo (predeterminado) se cortará en un almacenamiento de bloque de 255k, se almacenará en dos conjuntos, uno almacena la metainformación del archivo, el otro almacena los datos del archivo
# 往数据库 myfile 中上传(put)文件
mongofiles -d myfile put 文件路径
# 显示数据库 myfile 中的文件
mongofiles -d myfile list
Los archivos se almacenan en dos colecciones.
- Información de metadatos del archivo fs.files (nombre de archivo, tamaño, tamaño de bloque, fecha, _id)
- El contenido del archivo fs.chunks (files_id, contenido, formato)
mongofiles
Subir a la base de datos remota
mongofiles -h ip -d db_name -u user -p password put file_path
mongofiles -h ip -d db_name -u user -p password list
mongofiles
Las herramientas son herramientas de desarrollo de línea de comando