Прямая миграция данных из Tokumx 2.0 на сервер Percona для MongoDB 3.0 с нулевым или минимальным временем простоя (PSMDB)

database live data-migration percona tokumx

75 просмотра

1 ответ

16 Репутация автора

Миграция динамических данных из Tokumx 2.0 в PSMDB (Percona Server For MongoDB 3.0)

=======

Я делаю живую миграцию данных из Tokumx 2,0 replicaset кластера на сервер Percona для MongoDB 3.0 с помощью следующего Руководства указана ниже ссылка: Посетите https://github.com/dbpercona/tokumx2_to_psmdb3_migration/blob/master/ZeroDowntimeMigration.md#catchup

Этот документ описывает, как выполнить миграцию с исходного сервера TokuMX 2.x на целевой сервер Percona для MongoDB 3.x (PSMDB) с нулевым или минимальным временем простоя. Процесс миграции требует следующих этапов:

Моментальный снимок - резервная копия источника времени в момент времени - преобразование резервной копии источника в BSON Restore - загрузка BSON в целевой Catchup - воспроизведение журнала операций из источника в целевой коммутатор - перенастройка прикладного уровня для использования целевой

Во время фазы захвата команда для синхронизации оплогов. ./bin/toku2mongo - от localhost: 27017 --gtid 4:35 --host mongoprodcluster1a: 37017 2> & 1 | tee ./toku2mongo.out &

Выдает ошибку:

подключен к: mongoprodcluster1a: 37017 Сб 16 июля 11: 57: 31.655 [toku2mongo] ОШИБКА: ошибка при воспроизведении команды op {op: "c", ns: "case. $ cmd", o: {beginLoad: 1, ns: "case ", indexes: {}, параметры: {}}}: {ok: 0.0, errmsg:" нет такой команды: beginLoad ", код: 59, плохой cmd: {beginLoad: 1, ns:" case ", индексы: { }, options: {}}} Сб 16 июля 11: 57: 31.655 [toku2mongo] Выход при обработке GTID 4:35 Сб 16 июля 11: 57: 31.655 [toku2mongo] Используйте --gtid = 4: 35 для возобновления. Сб 16 июля 11: 57: 31.655 [toku2mongo] Сохраненный GTID в файл /mnt/tokumx-bkup/toku2mongo-2.0.2-el6-x86_64/ toku2mongo_saved_timestamp . Сб 16 июля 11: 57: 31.655 [toku2mongo] Я буду автоматически использовать это значение в следующий раз, если вы запустите из этого каталога и не передадите --gtid.

Любая помощь приветствуется. Спасибо

Автор: gahmed Источник Размещён: 18.07.2016 07:52

Ответы (1)


0 плюса

1595 Репутация автора

Это связано с выполнением пользовательской команды на стороне TokuMX 2.x, которая не поддерживается в Percona Server для MongoDB (3.x). Команда выполняется вашим приложением на этапе захвата. Это вызывает ошибку, которую вы видите.

Команда, выполняемая в приложении, является db.runCommand({ 'beginLoad' : [ 'coll1' , ... ] })командой, описанной здесь.

Перед началом процесса миграции. Важно убедиться, что приложение не реализует никаких пользовательских функций TokuMX 2.x, которые не поддерживаются Percona Server для MongoDB (3.x). Это включает в себя команды транзакции, а также команды массовой загрузки.

Лучший способ убедиться в этом - провести полную проверку функциональности приложений с помощью Percona Server для MongoDB в черновой среде перед началом процесса миграции.

Автор: David H. Bennett Размещён: 19.07.2016 12:14
Вопросы из категории :
32x32