Миграция данных из MongoDB в DDS

Здесь описывается, как экспортировать и импортировать данные из файлов JSON в DDS с помощью инструмента mongoimport на ECS или устройства, у которого есть доступ в DDS.

Перед началом работы

Экспорт данных

  1. Авторизуйтесь в ВМ ECS или другом устройстве с доступом к DDS.

  2. Откройте инструмент mongoexport для отправки данных из исходной БД в файл json.

  3. Введите команду для переноса данных:

    Примечание

    При подключении с помощью SSL-сертификата в команду добавляется --ssl --sslAllowInvalidCertificates. При обычном подключении эта часть команды удаляется.

    ./mongoexport --host <DB_ADDRESS> --port <DB_PORT> --ssl --sslAllowInvalidCertificates --type json --authenticationDatabase <AUTH_DB> -u <DB_USER> --db <DB_NAME> --collection <DB_COLLECTION> --out <DB_PATH>
    

    где:

    • DB_ADDRESS — адрес, расположение базы данных.

    • DB_PORT — порт БД.

    • AUTH_DB — название учетной записи пользователя. По умолчанию значение «admin».

    • DB_USER — имя пользователя БД. По умолчанию rwuser.

    • DB_NAME — название БД, из которой будут экспортированы данные.

    • DB_COLLECTION — каталог БД.

    • DB_PATH — расположение файла json.

    Введите пароль после появления сообщения «Enter password:».

    Пример команды, где будет сгенерирован файл json

    ./mongoexport --host 192.168.1.21 --port 8635 --ssl --sslAllowInvalidCertificates --type json --authenticationDatabase admin -u rwuser --db test02 --collection Test --out /tmp/mongodb/export/exportfile.json
    
  4. Проверьте результат. Если отображается информация, подобная приведенной ниже, данные успешно экспортированы.

    exported x records
    

    x — количество экспортированных записей данных.

  5. Архивируйте файл json.

    gzip exportfile.json
    

Сжатие файла помогает сократить время, необходимое для передачи данных. В сжатом виде файл будет выглядеть — exportfile.json.gz.

Импорт данных

  1. Авторизуйтесь в ВМ ECS или другом устройстве с доступом к DDS.

  2. Загрузите данные для импорта в ECS или на устройство, которое может получить доступ к DDS.

  3. Выберите способ загрузки в зависимости от используемой операционной системы:

    Введите команду:

     scp <IDENTITY_FILE> <REMOTE_USER>@<REMOTE_ADDRESS>:<REMOTE_DIR>
    
    .. include:: ../_warehouse/root-sertificate-params.rsti
    
    Пример команды:
    
    .. code-block::
    
       scp /tmp/downloads/export/exportfile.json.gz rwuser@37.18.110.18: /tmp/mongodb/export/exportfile.json.gz
    
  4. Разархивируйте файл:

    gzip -d exportfile.json.gz
    
  5. Импортируйте файл JSON в базу данных DDS.

    Примечание

    При подключении с помощью SSL-сертификата в команду добавляется --ssl --sslAllowInvalidCertificates. При обычном подключении эта часть команды удаляется.

    ./mongoimport --host <DB_ADDRESS> --port <DB_PORT> --ssl --sslAllowInvalidCertificates --type json --authenticationDatabase <AUTH_DB> -u <DB_USER> --db <DB_NAME> --collection <DB_COLLECTION> --file <DB_PATH>
    

    Укажите параметры:

    • DB_ADDRESS — адрес, расположение базы данных.

    • DB_PORT — порт БД.

    • AUTH_DB — название учетной записи пользователя. По умолчанию значение «admin».

    • DB_USER — имя пользователя БД. По умолчанию — rwuser.

    • DB_NAME — название БД, из которой будут экспортированы данные.

    • DB_COLLECTION — каталог БД.

    • DB_PATH — расположение файла json.

    Введите пароль после появления сообщения «Enter password:».

    Пример команды, где будет сгенерирован файл json

    ./mongoimport --host 192.168.1.21 --port 8635 --ssl --sslAllowInvalidCertificates --type json --authenticationDatabase admin -u rwuser --db test02 --collection Test --file /tmp/mongodb/export/exportfile.json
    
  6. Проверьте результат. Если отображается информация, подобная приведенной ниже, данные успешно импортированы.

    exported x records
    

    x — количество импортированных записей данных.

Запустили Evolution free tier
для Dev & Test
Получить