2016-04-16 3 views
17

я, во-первых, установленные MongoDB 3.2.5 today.But, когда я запустить его и использовать MongoDB оболочку, он дал мне эти предупреждения ниже:MongoDB: Сервер имеет предупреждения запуска

C:\Windows\system32>mongo 
MongoDB shell version: 3.2.5 
connecting to: test 
Server has startup warnings: 
2016-04-16T11:06:17.943+0800 I CONTROL [initandlisten] 
2016-04-16T11:06:17.943+0800 I CONTROL [initandlisten] ** WARNING: Insecure configuration, access control is not enabled and no --bind_ip has been specified. 
2016-04-16T11:06:17.943+0800 I CONTROL [initandlisten] **   Read and write access to data and configuration is unrestricted, 
2016-04-16T11:06:17.943+0800 I CONTROL [initandlisten] **   and the server listens on all available network interfaces. 
2016-04-16T11:06:17.943+0800 I CONTROL [initandlisten] 
> 

моя ОС Microsoft Windows [версия 10.0 0,10586].

ответ

27

Вы не настроили функции безопасности в Mongodb как авторизацию и аутентификацию. Используйте это link для более подробной информации. Вы можете проигнорировать это, если вы собираетесь изучать Mongodb. Но когда продукт идет на уровень производства. вы должны относиться к ним. Вы можете включить управление доступом с помощью mongod --auth.

Например, вы можете использовать mongod --auth --port 27017 --dbpath /data/db1. После этого вы можете защитить свою базу данных с помощью имени пользователя и пароля.

Вы можете добавить пользователя в базу данных, используя следующую команду.

use admin 
db.auth("myUserAdmin", "abc123") 

После этого вы можете использовать mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin" для подключения к базе данных.

Вы можете добавить bind_ip в mongod.conf следующим образом,

`bind_ip = 127.0.0.1,192.168.161.100` 

Вы можете определить многие, если вам нужно. Этот параметр bind_ip указывает MongoDB принимать соединения, с которых локальные сетевые интерфейсы, а не «удаленный IP-адрес». И запустить mongod --config <file path to your mongod.conf> Всего вы можете запустить mongod --auth --port 27017 --dbpath /data/db1 --config <file path to your mongod.conf>

+0

да, кажется, я должен изучить его более тяжело. – MeiYL

+0

Если вы новичок в mongodb, пожалуйста, проигнорируйте предупреждение и узнайте mongodb. Они предназначены для производственного уровня. –

+0

неважно, спасибо! – MeiYL

3

Запуск mongod --auth для обеспечения контроля доступа. Подробную информацию можно найти here.

1
  • Выберите целевой БД (Exp: use admin)
  • Создать пользователя в выбранной БД

Выберите нужную БД (ехр use admin)

db.createUser(
    { 
    user: "root", 
    pwd: "root", 
    roles: [ "readWrite", "dbAdmin" ] 
    } 
) 

Эта команда создаст root пользователь с ролямиreadWrite и dbAdmin в базе данных admin. more info about roles

Теперь запустите сервер в режиме аутентификации с использованием mongod --auth

Run клиента и ввести имя пользователя и пароль для входа в систему с помощью db.auth("root","root")