1. Descripción ambiental
Componentes del entorno | Versión |
---|---|
ciento | 7.6.1810 |
MongoDB | 4.0.26 |
2. Pasos de instalación
2.1 Descargar la versión binaria de MongoDB
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.26.tgz
2.2 Descomprimir para optar
tar -zxvf mongodb-linux-x86_64-rhel70-4.0.26.tgz -C /opt
2.3 Cambiar el nombre de una carpeta
mv mongodb-linux-x86_64-rhel70-4.0.26/ mongodb4.0.26/
2.4 Añadir a variables de entorno
UN). vim /etc/perfil
86 export MONGO_HOME=/opt/mongodb4.0.26
87 export PATH=$PATH:$MONGO_HOME/bin
B). fuente /etc/perfil
2.5 Crear el directorio de datos de tiempo de ejecución
A) Crear el directorio "datos+registro"
mkdir -p /data/mongodb40/{
log,data}
B) Crear un directorio de archivos de configuración
mkdir -p /opt/mongodb4.0.26/config
### C). 创建配置文件
```bash
cd /opt/mongodb4.0.26/config/
vim mongo11111.conf
2.6 Iniciar MongoDB
/opt/mongodb4.0.26/bin/mongod -f /opt/mongodb4.0.26/config/mongo11111.conf
2.7 Probar si el inicio es exitoso
rizo http://localhost:11111
2.8 Agregar inicio automático de arranque
echo “/opt/mongodb4.0.26/bin/mongod -f /opt/mongodb4.0.26/config/mongo11111.conf” >> /etc/rc.local
3. Administrar usuarios
3.1 Iniciar sesión en MongoDB por primera vez
mongo --puerto 11111
3.2 Crear usuario administrador (raíz)
# 切换到admin库
use admin
# 创建管理员用户,设置其账户为(root/123456)
db.createUser({
user: "root", pwd: "123456", roles: [{
role: "root", db: "admin"}] })
# 验证是否成功(返回1,即为成功)
db.auth("root", "123456")
3.3 Iniciar sesión con usuario administrador
mongo --puerto 11111 -uroot -p123456
MongoDB shell version v4.0.26
connecting to: mongodb://127.0.0.1:11111/?gssapiServiceName=mongodb
Implicit session: session {
"id" : UUID("965b8e97-7d57-4beb-9b61-4f53a57d169e") }
MongoDB server version: 4.0.26
Server has startup warnings:
2022-04-19T22:34:01.665+0800 I STORAGE [initandlisten]
2022-04-19T22:34:01.665+0800 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2022-04-19T22:34:01.665+0800 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten]
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten]
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten]
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2022-04-19T22:34:02.212+0800 I CONTROL [initandlisten]
---
Enable MongoDB's free cloud-based monitoring service, which will then receive and display
metrics about your deployment (disk utilization, CPU, operation statistics, etc).
The monitoring data will be available on a MongoDB website with a unique URL accessible to you
and anyone you share the URL with. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.
To enable free monitoring, run the following command: db.enableFreeMonitoring()
To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---
>
3.4 Crear "Base de datos + Usuario"
1) Usa la base de datos (créala si no tienes una)
usa testDB
2) Cree un usuario de administración de base de datos y autorícelo.
Nota: En qué biblioteca se realiza esta operación, indica a qué biblioteca pertenece el usuario, al iniciar sesión se requiere autenticación en la biblioteca
# 创建用户(需要在切换的testDB上做认证)
db.createUser( {
user: "testUser", pwd: "123456", roles: [{
role: "dbOwner", db: "testDB"}]} )
Inicio de sesión de prueba:
mongo --host 127.0.0.1 --port 11111 -u testUser -p 123456 --authenticationDatabase testDB
- Cree un usuario normal para la base de datos y configure la autorización
use testDB
db.createUser( {
user: "commonUser", pwd: "123456", roles: [{
role: "readWrite", db: "testDB"}]} )
Cuarto, comandos básicos de MongoDB
4.1 Base de datos integrada
Hay algunas bases de datos integradas en MongoDB, y el nombre de la base de datos recién creada no puede tener el mismo nombre que estas bases de datos.
Componentes del entorno | Versión |
---|---|
administración | Pertenece a la base de datos de privilegios, si agrega un usuario a esta base de datos, el usuario heredará todos los privilegios de la base de datos |
configuración | Información de clase de configuración |
local | Los datos en la base de datos no se replicarán |
prueba | Base de datos predeterminada, utilizada para realizar algunos trabajos de prueba |
4.2 Comandos comunes
- iniciar sesión en mongo
# 用户名/密码/认证服务器
mongo --host 127.0.0.1 --port 11111 -u testUser -p 123456 --authenticationDatabase testDB
- cambiar o usar una base de datos
# 如无则创建
use dbName
- Ver la versión de la base de datos
db.version()
- Ver el nombre de la base de datos actual
db.getName()
- Ver la dirección de la base de datos actual
db.getMongo()
- Ver el estado actual de la base de datos
db.stats()
{
"db" : "testDB",
"collections" : 0,
"views" : 0,
"objects" : 0,
"avgObjSize" : 0,
"dataSize" : 0,
"storageSize" : 0,
"numExtents" : 0,
"indexes" : 0,
"indexSize" : 0,
"fileSize" : 0,
"fsUsedSize" : 0,
"fsTotalSize" : 0,
"ok" : 1
}