Вход Регистрация
ruen

Сделать перенос данных из одной базы в другую

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

make-data-transfer-databases

Очевидно, что две разные системы имеют разные базы данных (БД) – может различаться их тип, структура таблиц и так далее (обычно используются базы данных с поддержкой SQL). Как в таком случае извлечь данные и перенести в другую базу данных с сохранением всей информации? Без помощи специалиста здесь сложно обойтись, коротко рассмотрим, что ему будет необходимо сделать.

Прежде всего необходимо получить доступ к старой базе данных и получить представление о ее структуре. После составления схемы старой БД, нужно проанализировать схему новой БД – куду будет выполняться импорт данных. Наконец, останется использовать удобный язык программирования (PHP, C++ и т.д.) и написать код для извлечения данных из одной базы в другую. Когда код будет готов, необходимо внимательно протестировать его и можно приступать к запуску процесса переноса данных между базами.

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

Так как названия столбцов скорее всего различаются между базами, потребуется из вышеупомянутого анализа составить в коде массив для трансформации данных. А именно, такой массив будет указывать соответствие названия старого столбца и название столбца в новой БД. Данные останутся те же, поменяются только названия столбцов.

Когда массив с данными из старой БД и массив для трансформации готов - при помощи цикла делается обход массива и выполняется вставка данных из этого массива в столбцы в новой базе данных в согласии с соответствиями столбцов этих двух БД.

Нужно принять во внимание тот факт, что объем данных может оказаться значительным и поэтому потребуется много времени на работу кода. Поэтому важно перед запуском правильно настроить сервер для экспорта и импорта данных между базами данных:

  • убрать ограничения на время работы скрипта;
  • выделить достаточно оперативной памяти;
  • использовать мощный процессор и т.д.

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

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

Комментарии (0)
Для комментирования войдите или зарегистрируйтесь.

Последние статьи

Популярные разделы

Eqsash (Инструменты)

Приложение для Android - VK LAST USER ID, отучитель от зависимости и т.д.:
Доступно в Google Play

Amessage (Общение)

Вход в веб-версию
Приложение для Android:
Доступно в Google Play

Поделиться

Подписаться

YouTube

Книги

IT-заметки - Простым языком о самом нужном (HTML, CSS, JavaScript, PHP, базы данных, Drupal, Битрикс, SEO, домены, безопасность и другое), PDF, 500 стр.