Импорт базы данных в MySQL

MySQL - импорт базы данных

Привет всем! закончились праздники, пора и поработать. Как и обещал ранее напишу статью о том, как выполнить импорт базы данных в MySQL.

Вообще стоит сказать о том, что MySQL управляется из командной строки и все ее операции могут быть выполнены с помощью введенных с клавиатуры команд, но гораздо более удобным решением для многих являются средства визуальной работы с данной СУБД.

Рассмотрим импорт базы данных в MySQL средствами «родной» для этой СУБД программы администрирования под названием Workbench. У меня установлена СУБД версии 8.0.28, а так же Workbench этой же версии, поэтому все примеры будут показаны на этих версиях. Тем не менее, ранние версии и последующие существующие версии практически ничем не отличаются от процесса импорта банных, показанного в этой статье.

Общие понятия об импорте базы данных

Начнем с того, что СУБД MySQL, а также Workbench должны быть установлены на вашем компьютере. О том как это сделать, я писал в предыдущей статье Установка MySQL Server

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

Импорт базы данных может потребоваться в разных случаях. Например, когда кто-то написал программу, где в качестве средства хранения данных выступает база данных MySQL, то при установке программы и СУБД вам потребуется выполнить импорт этой базы данных, чтобы написанная программа смогла работать с этой базой данных.

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

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

Импорт может понадобиться также для того, чтобы восстановить базу данных из резервной копии, а также при переносе базы данных из других СУБД.

Способы организации хранения резервных копий баз данных MySQL

MySQL — это СУБД с большими возможностями и по ее администрированию написано много книг, каждая из которой заслуживает уважения.

Данные книги пишут люди — специалисты, которые занимаются администрированием этой СУБД. Они обладают большими знаниями в этой области и за более подробными вопросами лучше обратиться к данным книгам, так как нет смысла их здесь переписывать. Мы же будем касаться основных вопросов работы.

У MySQL есть два способа организации хранения данных:

  • Dump Project Folder — при этом способе для каждого объекта базы данных создается отдельный скрипт. Все эти скрипты хранятся в одной папке. При восстановлении базы данных (импорте) все они должны быть выполнены;
  • Self-Contained File — при таком способе хранения все объекты базы данных хранятся записаны в одном скрипте. Причем в этом же скрипте присутствуют и сами данные, а не только описание объектов.

Как было написано выше, импорт можно выполнять разными средствами. Я буду использовать MySQL Workbench 8.0 CE. Давайте его запустим и настроим подключение к СУБД, если вы этого еще не делали.

Настройка подключения MySQL Workbench к СУБД MySQL

После запуска MySQL Workbench 8.0 CE появится окно программы

MySQL Workbench 8.0 CE
MySQL Workbench 8.0 CE

По умолчанию будет создано соединение с базой данных, которое будет названо Local instance MySQL 80. Мы можем скорректировать данные подключение, либо создать новое. Я предлагаю редактировать именно это подключение. Для этого следует нажать кнопку с ключиком, символизирующим значок редактирования (см. на рисунке выше). Нажимаем и попадаем в следующее окошко, где мы внесем несколько несложных параметров для подключения к нашей СУБД.

MySQL Workbench настройка подключения
MySQL Workbench. Настройка подключения

Выберите из списка слева наше соединение. Если вы вы впервые настраиваете подключение, то оно будет единственным в этом списке. Вы можете изменить имя подключения к базе данных в поле Connection Name, если по каким то причинам вам не нравится имя, созданное по умолчанию. Это демонстрационная статья, поэтому я оставлю как есть.

В этой статье нас интересует только вкладка Connection, а в этой вкладке нам нужна только вкладка Parameters. Давайте рассмотрим параметры. Я постараюсь совсем простым языком.

  • Hostname — это имя хоста. Если сказать иначе, то это имя компьютера, на котором установлена СУБД. Имя это задается как IP-адрес. То есть, здесь вы указывается IP-адрес компьютера в вашей сети, на котором установлена СУБД. Как правило, MySQL Workbench 8.0 CE удобно использовать именно на этом же компьютере. Бывают конечно исключения, например, когда серверная комната оборудована кондиционерами и в ней не комфортно находиться, тогда вы можете установить MySQL Workbench на любой другой компьютер вне серверной и в этом поле указать адрес сервера, где у вас установлена MySQL. Но это так, отступление от темы... Сейчас указано localhost, потому что MySQL установлен на одной машине с Workbench;
  • Port — обычно MySQL работает на порту 3306. Оставьте так как есть. Порт можно поменять только в том случае, если у вас данный порт занят другой системой и MySQL конфликтует. Но это бывает не часто;
  • Username — это имя пользователя. Пользователи — это пожалуй отдельная большая тема. У нас указано root. Это тоже самое, что Администратор в Windows. MySQL ориентирована также и на UNIX-системы (и наверное даже в первую очередь), а в операционных системах семейства UNIX учетная запись администратора называется root. И заметьте, что писать нужно с маленькой буквы, так как в системах UNIX имя пользователя чувствительно к регистру клавиатуры. Для учебы оставьте root;
  • Password — далее нам нужно ввести пароль для подключения к СУБД. Нажмите Store in Vault.
MySQL Workbench указание пароля
MySQL Workbench. Указание пароля

Здесь укажите пароль от root записи. Его вы указывали, когда устанавливали СУБД MySQL (если конечно после этого не меняли). Нажмите ok, а затем протестируйте подключение кнопкой Test Connection и если пароль верный, то вы увидите окно, говорящее об успешном подключении к MySQL.

MySQL Workbench успешное подключение
MySQL Workbench. Успешное подключение

Теперь можно приступать непосредственно к импорту данных.

Импорт базы данных в MySQL средствами MySQL Workbench

На домашней странице Workbench нажмите на ваше только что созданное подключение.

MySQL Workbench домашняя страница
Выбор созданного подключения

После этого вы сразу же попадете в окно, ч котором можно непосредственно работать с СУБД.

MySQL Workbench-администрирование
MySQL Workbench — администрирование

Выберите вкладку Administration (Администрирование), а затем Data Import/Restore (Импорт данных/восстановление).

MySQL Workbench-выбор способа импорта
MySQL Workbench-выбор способа импорта

В этом окне нужно выбрать с помощью переключателя один из способ импорта. Выбор способа зависит от того, каким образом был организован экспорт. Об этом я писал чуть выше. Если база данных представлена несколькими скриптами в папке, то выбирайте Import to Dump Project Folder. Если же вся база данных записана в одном скрипте, то выбирайте Import to Self-Contained File. Скрипты что при первом, что при втором способе имеют расширение sql.

Мне поему то нравится второй способ (Self-Contained File), поэтому давайте выберем его и затем файл с базой данных. Первый способ аналогичен, за исключением того, что автоматически будут выполнены все скрипты, находящиеся в папке архива, а при втором способе только один единственный.

Импорт базы данных в MySQL
Импорт базы данных в MySQL

Теперь обязательно укажите путь к файлу вашей резервной копии. Далее хочу рассказать про одну особенность.

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

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

Поэтому давайте нажмем кнопку New и укажем в поле Name of Schema to create имя базы данных, как на картинке и нажмем ok. Естественно, что имя базы данных у вас будет другое. Как его узнать? Очень просто. Откройте файл вашей резервной копии в блокноте.

Имя базы данных в файле резервной копии
Имя базы данных в файле резервной копии

В моем случае это shop_products. Это и есть имя моей базы данных. Его я и запишу в поле Name of Schema to create.

Еще одним интересным параметром, заслуживающим внимание является поле, без названия, указанное на рисунке ниже. В нем вы можете выбрать вариант импорта:

  • Dump Structure Only — будет выполнен импорт только структуры базы данных. То есть, импортируется вся база данных, но она будет пустая, без данных, даже если в резервной копии есть данные;
  • Dump Data Only — будут импортированы только данные. Ну этот способ очевидно нужен только в том случае, если база данные уже есть на компьютере и нужно просто обновить данные. Для чего это может потребоваться? В резервной копии могут быть данные не всех таблиц базы данных, а только выбранных при создании резервной копии. И как бы можно дописать к нашей базе данных данные из резервной копии, то есть добавить не перезаписывая все данные, которые должны остаться. Это очень интересный параметр;
  • Dump Structure and Data — будут импортированы и структура и данные. То есть, все полностью. если у вас уже есть база данных на компьютере с таким же именем, она будет уничтожена и заменена новой импортируемой базой.
Выбор варианта импортирования
Выбор варианта импортирования

Выберем Dump Structure and Data и нажмем Start Import. Если импорт прошел успешно, то мы увидим вот такую картинку:

Успешный импорт базы данных
Успешный импорт базы данных

Если при импорте возникнет ошибка, то вместо has finished появится errors с кодом ошибки.

Теперь зайдите во складку Schemas и проверьте наличие установленной базы данных на компьютере.

База данных в списке баз
База данных в списке баз

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

Также хочу отметить, что кроме MySQL Workbench существует еще много разных программ для администрирования СУБД. Также как уже было описано выше все операции с базой данных, пользователями и прочими вещами можно делать из консольной строки с помощью команд. И многие профессионалы любят именно этот способ за то, что он быстр (при условии, что вы хорошо знаете команды MySQL и быстро печатаете на клавиатуре). Я же предпочитаю графический интерфейс, поэтому люблю работать визуально.

Также вы можете посмотреть мое видео по импорту и экспорту данных в MySQL на моем YouTube-канале.

Экспорт и импорт базы данных в MySQL

Всем добра! В следующей статье опишу процесс создания резервных копий базы данных.

Понравилась статья? Поделиться с друзьями:
Блог Алексея Иванкова
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: