[MongoDB] Установите последнюю версию MongoDB с помощью Docker

Java

1 установка

В этой статье предполагается, что вы уже установилиdockerИ можно нормально использовать, поэтому не буду объяснять как установитьdocker. использоватьdockerУстановитьMongoDBПоследняя версия выглядит следующим образом:

# 从repository查找mongo的相关镜像,结果很多,其中第一条为官方的镜像
$ docker search mongo
# 下载官方镜像的最新版本
$ docker pull mongo:latest
# 完成后,检查是否下载成功
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              7                   5e35e350aded        12 days ago         203MB
mongo               latest              965553e202a4        3 weeks ago         363MB
hello-world         latest              fce289e99eb9        10 months ago       1.84kB

С помощью всего нескольких простых команд у нас есть последний образ MongoDB, и мы можем использовать его позже.

2 Старт

После завершения загрузки образа MongoDB запуск очень прост, всего одна команда:

$ docker run -itd --name mongo -p 27017:27017 mongo --auth
305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c

(1)--nameСледующий параметр — это имя контейнера Docker;

(2)-pЗатем следует сопоставление портов, т.е.宿主端口:容器端口;

(3)--authЗапускать ли аутентификацию, если не хотите открывать, можете убрать;

После успешного запуска экземпляра MongoDB будет возвращен идентификатор контейнера, например305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c.

по командеdocker psВы можете просмотреть работающий контейнер, и после проверки он действительно работает.

Уведомление: данные по умолчанию существуют в контейнерной системе./data/dbкаталог, если вам нужно использовать собственный каталог хост-компьютера, вы можете добавить параметры в команду запуска:

-v /my/own/datadir:/data/db

3 Создание пользователей и коллекций

3.1 Вход в контейнер

После того, как контейнер запущен, следующий шаг - ввести контейнер:

# 进入容器可以用以下两种方法
# 分别是通过容器名和容器ID
$ docker exec -it mongo bash
$ docker exec -it 305ebd823667 bash

После входа в контейнер выше, он фактически входит в систему контейнера и открываетbash.

3.2 Подключение к базе данных через клиентские команды

затем черезmongoКоманда для подключения к службе базы данных MongoDB.

# 默认连接本地的27017端口的MongoDB
$ mongo
# 指定IP与端口进行连接
$ mongo 127.0.0.1:27017
# 指定用户名和密码连接到指定的MongoDB数据库
$ mongo 127.0.0.1:27017/admin -u user -p password

После успешного подключения к базе данных будет возвращена некоторая информация, например SeesionID и номер версии.

3.3 Посмотреть версию

(1) Передайте команду Linuxmongo --versionЗапросить;

(2) После подключения к базе данных перейдитеdb.version()Запрос.

root@305ebd823667:/# mongo --version
MongoDB shell version v4.2.1
git version: edf6d45851c0b9ee15548f0f847df141764a317e
OpenSSL version: OpenSSL 1.1.1  11 Sep 2018

root@305ebd823667:/# mongo
> db.version()
4.2.1

3.4 Создание пользователя управления администратором

После подключения к базе данных мы сначала создаем пользователя-администратора для управления другими пользователями:

> use admin
switched to db admin
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
Successfully added user: {
    "user" : "admin",
    "roles" : [
        {
            "role" : "userAdminAnyDatabase",
            "db" : "admin"
        }
    ]
}
> 

3.5 Создайте пользователя с правами на чтение и запись

В соответствии с потребностями бизнеса создайте разных пользователей следующим образом, чтобы создать пользователя с правами на чтение и запись:

> db.auth('admin','123456');
1
> db.createUser({ user:'user',pwd:'123456',roles:[ { role:'readWrite', db: 'testdb'}]});
Successfully added user: {
    "user" : "user",
    "roles" : [
        {
            "role" : "readWrite",
            "db" : "testdb"
        }
    ]
}
> 

3.6 Аутентификация пользователей и работа

>  db.auth('user','123456')
1
> use testdb
switched to db testdb
> 
> db.person.insert({name:'Larry',age:18})
WriteResult({ "nInserted" : 1 })
> db.person.find({})
{ "_id" : ObjectId("5ddaa14edbbac3c4f844366c"), "name" : "Larry", "age" : 18 }
> 

4 Два отличных инструмента визуализации

В ходе предыдущих операций мы установили пользователей и попытались создать базы данных и коллекции. Но работать через командную строку всегда неудобно, для работы нужна программа визуализации. Ниже приведены два отличных программного обеспечения для визуализации, чтобы показать, как подключиться. Как выполнять CRUD и другие операции не будут представлены один за другим, но он относительно удобен и прост в использовании.

4.1 Robo3T

Официальный сайт

Создайте соединение:

创建连接

Обратите внимание, что ниже приведена база данных аутентификации, а не база данных пользователя:

创建连接

Интерфейс работы:

操作界面

4.2 IDEA Mongo Plugin

официальный сайт гитхаба

Это подключаемый модуль, который поддерживает весь спектр программного обеспечения JetBrains, и, конечно же, можно установить IDEA.

Настройки соединения:

Обратите внимание на следующееUser DatabaseЭто БД под юзером.Если написано неправильно, то не подключится.

创建连接1

Обратите внимание на следующееAuth DatabaseБаза данных для аутентификации, по умолчаниюadmin.

创建连接2

Интерфейс работы:

操作界面

Суммировать

В этой статье рассказывается об установке последней версии MongoDB через Docker и демонстрируется запуск и создание пользователей и коллекций на примерах. Наконец, в ней представлены два очень удобных инструмента визуализации. Я надеюсь, что люди, которые не сталкивались с этим, смогут получить начал.

Добро пожаловать на общедоступный номерТыква медленный разговор>, буду обновлять для вас...

file

Читайте больше, делитесь больше, пишите больше, организуйте больше.