Синхронизация структуры в phpMyAdmin

{title}

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

Подготовка к синхронизации


внимание

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

  • Выбор сервера и базы данных
  • сравнение
  • Полная или выборочная синхронизация
Эти процессы могут быть остановлены в любое время, чтобы мы не влияли на целевую базу данных, если обнаружим какие-либо несоответствия в данный момент. Мы начнем с копирования любой базы данных в новую, которую мы должны создать, чтобы сделать пример более простым, первая будет называться исходной базой, а вторая - базой назначения; в целевой базе после того, как данные и структуры исходной базы данных будут скопированы, мы выберем таблицу и удалим поле, а также изменим тип данных другого поля, дополнительно удалим запись из некоторой другой таблицы.
С этими операциями, которые мы будем выполнять, мы будем знать, что у нас есть несоответствие между ними, которое будет служить руководством при синхронизации.

Процесс синхронизации


Нашим первым шагом будет выбор двух баз, которые мы должны синхронизировать, для этого перейдем в меню «Синхронизировать» в представлении сервера, помните, что это единственное место, где мы можем получить это меню.
Мы увидим что-то похожее на это:

{title}


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

{title}


Как только мы выберем наши базы, мы нажмем на кнопку Go, после чего начнется начальное сравнение, если все идет хорошо и у нас нет ошибок, мы должны увидеть экран, на котором сравнение показывается так:

{title}


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

{title}


И внизу действия, которые мы можем предпринять:

{title}


Если мы выберем Синхронизировать базы данных, мы скопируем структуру и данные из исходной базы данных в целевую базу данных. Теперь, если нам нужно узнать больше о том, через что мы можем пройти и что нам не следует выбирать, для этого мы нажмем на красный значок и увидим несоответствия структуры, мы увидим нечто очень похожее на это:

{title}


Затем мы нажимаем на зеленый значок данных и видим сравнение следующим образом:

$config[ads_text5] not found

{title}


Как мы видим, показано, что некоторые строки должны быть обновлены и добавлена ​​новая запись, это связано с тем, что изначально мы удаляем строку из таблицы в целевой базе и изменяем тип данных одного из ее столбцов. Пока мы ничего не затронули, поэтому изменения вступают в силу, и мы нажимаем « Применить выбранные изменения», и, наконец, наши изменения будут выполнены.

{title}


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

$config[ads_text5] not found

  • 0