Базы данных mysql: MySQL — Википедия – MySQL — это просто! | MySQL

Восстановление MySQL баз данных и таблиц разными методами

Восстановление MySQL баз данных

От автора: добрый день, уважаемые. У вас что-то случилось? Опять «выкинули» не ту базу данных? Ну, это не смертельно, если знать все про восстановление MySQL. Сейчас мы расскажем вам все тонкости данного ритуала. Для этого нужен бубен, козявка из носа белохвостого тюленя… Это шутка! А все серьезное по этой теме будет изложено дальше.

Горе поправимо, если удалили базу

Без баз данных и систем управления ими (СУБД) в интернете никуда. Большая часть современных CMS и «самописных» движков, на которых развернуты сайты, используют MySQL. Поэтому ее можно смело назвать «всея интернетной» системой управления базами данных.

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

Быстрый способ восстановления

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

Зайдите в phpMyAdmin и выберете нужную БД.

Восстановление MySQL баз данных

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас!

Перейдите по вкладке «Импорт», которая расположена в главном верхнем меню.

В разделе «Импортируемый файл» выберете источник резервной копии нужной базы.

Нажатие на кнопку «Ok».

Восстановление MySQL баз данных

После этого вместо текущей версии БД будет загружена ранее сохраненная. Стоит отметить, что данный веб-интерфейс не подходит для бэкапа больших массивов данных, поскольку максимальный поддерживаемый размер загружаемой базы составляет всего 2 Мб.

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

Восстановление MySQL баз данных

Работа через MySQLdump

MySQLdump представляет собой веб-приложение, работающее на стороне сервера. Оно предназначено для восстановления баз MySQL из резервных копий, созданных с помощью приложения. Чтобы сильно «не зарываться», мы продемонстрируем создание простого бэкапа и восстановление из него БД. В качестве площадки для эксперимента используем самый популярный локальный сервер Рунета Denwer.

Для начала нужно скачать MySQLdump и поместить его по следующему адресу: F:\Webserver\usr\local\mysql-5.5\bin

Восстановление MySQL баз данных

MySQLdump является консольным приложением, поэтому вся последующая работа с ним будет происходить через командную строку (cmd.exe). Теперь поэтапно:

Запускаем Denwer.

Через командную строку заходим на виртуальный диск (в примере – это диск Z).

Заходим в папку, где «лежит» MySQLdump.

Восстановление MySQL баз данных

Восстановление MySQL баз данных

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас!

После этого запускаем утилиту на выполнение. Перед тем, как восстановить БД MySQL, в качестве примера создадим в папке bin резервную копию базы my_db1, и назовем бэкап «db1». Для этого мы используем команду mysqldump.

Восстановление MySQL баз данных

Теперь восстановим из созданной копии (db1) другую базу данных. Для этого используем команду mysql.

Восстановление MySQL баз данных

Код примеров использования обеих команд:

C:\Users\домашний>Z: Z:\>cd usr\local\mysql-5.5\bin Z:\usr\local\mysql-5.5\bin>mysqldump -uroot my_db1>db1.sql Z:\usr\local\mysql-5.5\bin>mysql -uroot db2<db1.sql

C:\Users\домашний>Z:

Z:\>cd usr\local\mysql-5.5\bin

Z:\usr\local\mysql-5.5\bin>mysqldump -uroot my_db1>db1.sql

Z:\usr\local\mysql-5.5\bin>mysql -uroot db2<db1.sql

Если немного присмотреться к коду, то можно заметить, что обе команды имеют общий синтаксис. Единственное, что их различает – это названия источников данных и копий. А также знак направления движения данных («<», «>»).

uroot – это имя пользователя. Оно указывается сразу после параметра u (без пробела). Кроме этого синтаксис команд включает еще несколько параметров. Среди них: пароль, адрес удаленного хоста. С помощью команды mysqldump можно экспортировать БД в различные форматы, сжимать данные. Также это проверенный способ, как можно восстановить таблицу MySQL.

Утилита MySQLdump (с помощью одноименной команды) позволяет экспортировать базы в простом текстовом формате (.txt). А так как текст обладает высокой степенью сжатия, то это эффективный способ уменьшения объемов бэкапов, в ситуации, когда наблюдается «дефицит» серверного пространства.

Что можно сделать еще

Кроме рассмотренных двух основных методов для восстановления данных MySQL можно использовать еще несколько консольных утилит:

MySQL-консоль

Mysqlbinlog – для формирования бэкапов программа импортирует данные из серверных журналов бинарных логов. В них записываются все пользовательские и системные запросы (в бинарном коде), после выполнения которых были изменены данные баз.

Также для популярных CMS разработано множество специализированных плагинов. Например, для WordPress:

Keep Backup Daily.

UpdraftPlus Backup and Restoration.

Perfect Dashboard.

Восстановление MySQL баз данных

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

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

Восстановление MySQL баз данных

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас! Восстановление MySQL баз данных

Хотите изучить MySQL?

Посмотрите курс по базе данных MySQL!

Смотреть

SHOW. Просмотр информации о таблицах и базах данных MySQL

Команда SHOW

С помощью команды SHOW можно просматривать информацию о колонках в таблицах и о самих базах данных, а также прочие данные о статистике и производительности сервера MySQL.

Далее рассмотрим несколько полезных применений команды SHOW.

В некоторых командах используется флаг - \G для более удобного вертикального вывода данных.

В квадратных скобках - [ ] указаны необязательные команды, которые могут дополнить детальность запроса.

Показать все доступные базы данных.

SHOW DATABASES [LIKE 'db_name_pattern'];

SHOW DATABASES [LIKE 'db_name_pattern'];

Показать все таблицы в базе данных.

SHOW [OPEN] TABLES [FROM db_name] [LIKE 'table_name_pattern'];

SHOW [OPEN] TABLES [FROM db_name] [LIKE 'table_name_pattern'];

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

SHOW [FULL] COLUMNS FROM table_name [FROM db_name] [LIKE 'column_name_pattern'];

SHOW [FULL] COLUMNS FROM table_name [FROM db_name] [LIKE 'column_name_pattern'];

Отобразить статистику таблиц.

SHOW TABLE STATUS [FROM db_name] [LIKE 'table_name_pattern'] \G;

SHOW TABLE STATUS [FROM db_name] [LIKE 'table_name_pattern'] \G;

Показать информацию об индексировании таблицы.

SHOW INDEX FROM table_name [FROM db_name];

SHOW INDEX FROM table_name [FROM db_name];

Получить данные о первичном и внешних ключах таблицы.

SHOW KEYS FROM table_name [FROM db_name];

SHOW KEYS FROM table_name [FROM db_name];

Отобразить привилегии пользователя.

SHOW GRANTS FOR 'username'@'server_address';

SHOW GRANTS FOR 'username'@'server_address';

Показать информацию о статусе работы MySQL сервера.

SHOW STATUS [LIKE 'parametr_name_pattern'];

SHOW STATUS [LIKE 'parametr_name_pattern'];

Просмотр данных о состоянии главного Master-сервера (при наличии репликации).

Просмотр данных о состоянии зависимых Slave-серверов (при наличии репликации).

Отобразить логи (при включенном логгировании).

Выполняемые, в текущий момент процессы.

Отобразить значения всех переменных MySQL сервера.

SHOW VARIABLES [LIKE 'variable_name_pattern'];

SHOW VARIABLES [LIKE 'variable_name_pattern'];

Соединение с базой данных MySQL

В этом документе описывается настройка соединения с базой данных MySQL из IDE NetBeans. После подключения с MySQL можно начать работать в проводнике баз данных среды IDE, создавая новые базы данных и таблицы, заполняя таблицы данными и делая структуру и содержимое баз данных доступными для запросов SQL. Этот учебный курс разработан для начинающих пользователей, обладающих базовым представлением об управлении базами данных, которым необходимо применить знания к работе с MySQL в IDE NetBeans.

MySQL является распространенной системой управления реляционной базой данных с открытым исходным кодом (СУРБД), широко используемой в веб-приложениях благодаря своей скорости, гибкости и надежности. MySQL использует SQL (

язык структурированных запросов) для доступа к данным в базе данных и их обработки.

Предполагаемая продолжительность: 30 минут

Содержание

Содержимое на этой странице применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0

Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.

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

Настройка свойств сервера MySQL

IDE NetBeans поставляется с включенной поддержкой для MySQL RDBMS. До получения доступ к серверу баз данных MySQL в IDE NetBeans, необходимо настроить свойства сервера MySQL.

  1. Щелкните правой кнопкой мыши узел Databases ("Базы данных") в окне Services ("Службы") и выберите Register MySQL Server ("Зарегистрировать MySQL") для открытия диалогового окна свойств сервера MySQL.
    Диалоговое окно &quot;Свойства сервера MySQL&quot;: базовые свойства
  2. Убедитесь, что имя узла и порт сервера указаны правильно.

    Обратите внимание, что среда IDE вводит localhost как имя узла сервера по умолчанию и 3306 как номер порта сервера по умолчанию.

  3. Введите имя администратора (если оно не отображается).

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

  4. Введите пароль администратора. По умолчанию установлено пустое значение.

    Примечание. Пустой пароль является допустимым.

  5. Нажмите вкладку "Свойства администратора" в верхней части диалогового окна.

    Отобразится соответствующая вкладка, предоставляющая возможность ввода сведений для управления сервером MySQL.
  6. В поле "Путь/URL-адрес к средству администрирования" введите путь к средству администрирования MySQL (например, MySQL Admin Tool, PhpMyAdmin или другому подходящему веб-средству) или найдите его при помощи кнопки "Обзор".

    Примечание. mysqladmin является инструментов администрирования MySQL, который находится в папке bin каталога установки MySQL. Это средство командной строки не подходит для использования в среде IDE.

    Введите аргументы для средства администрирования в соответствующее поле.
  7. В поле "Путь к команде запуска" введите соответствующий путь MySQL или найдите его при помощи кнопки "Обзор". Для получения команды запуска найдите файл mysqld в папке bin каталога установки MySQL.

    Примечание. Рекомендуемый двоичный файл для Unix и NetWare: mysql_safe. Также может потребоваться другая команда запуска при установке MySQL в составе установки AMP.

    Введите значение аргументов для команды запуска в соответствующее поле.
  8. В поле "Путь к команде остановки" введите путь к команде остановки MySQL или найдите его при помощи кнопки "Обзор". Обычно требуется ввести путь к файлу mysqladmin в папке bin каталога установки MySQL. При использовании команды mysqladmin введите -u root stop в поле "Аргументы" для получения прав пользователя root на остановку сервера.
  9. На рисунке ниже изображен внешний вид вкладки "Свойства администратора" по завершении настройки. Если настройка выполнена корректно, нажмите кнопку "ОК".

    Диалоговое окно &quot;Свойства сервера MySQL&quot;: свойства администрирования

Запуск сервера MySQL

Перед попыткой подключения к серверу базы данных MySQL необходимо убедиться в том, что он запущен на компьютере. Если сервер базы данных не подключен, вы увидите (disconnected) рядом с именем пользователя в узле MySQL Server в окна 'Служба' и не сможете развернуть узел.

Для подключения к серверу баз данных убедитесь, что сервер базы данных MySQL запущен на компьютере, щелкните правой кнопкой мыши 'Базы данных' > узел 'MySQL Server' в окне 'Службы' и выберите 'Подключить'. Может отобразиться запрос на ввод пароля для подключения к серверу.

Сервер базы данных MySQL запущен

После подключения сервера вы сможете развернуть узел MySQL Server и просмотреть все доступные базы данных MySQL.

Создание экземпляра базы данных и подключение к ней

Редактор SQL является широко распространенным способом взаимодействия с базами данных. Для этого в IDE NetBeans имеется встроенный редактор SQL. Обычно редактор SQL доступен с помощью параметра 'Выполнить команду' из контекстного меню узла подключения (или дочерних узлов узла подключения). После установления подключения к серверу MySQL, можно создать новый экземпляр базы данных в редакторе SQL. Для продолжения работы с данным учебным курсом создайте экземпляр с именем MyNewDatabase:

  1. В окне 'Службы' среды IDE щелкните правой кнопкой мыши узел сервера MySQL Server и выберите 'Создать базу данных'.

    Откроется диалоговое окно "Создание базы данных MySQL".
  2. В диалоговом окне "Создание базы данных MySQL" введите имя новой базы данных. В этом учебном курсе используется имя MyNewDatabase. Не устанавливайте флажок. Диалоговое окно создания базы данных MySQL

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

  3. Нажмите кнопку "ОК".

    В узле "Сервер MySQL" окна "Службы" будет выведена новая база данных.

  4. Щелкните узел новой базы данных правой кнопкой мыши и выберите 'Подключение', чтобы установить соединение с базой данных.

    Открытые подключения к базе данных отображаются в узле 'Установленные подключения' (значок узла установленных подключений) в окне 'Службы'.

Как перенести базу данных MySQL

Как быстро перенести базу данных MySQL с помощью приложений

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

Быстрый способ экспорта

Начнем с обзора phpMyAdmin. Чтобы перенести базу, сначала нужно создать ее дубликат. Для этого в программе имеется специальный функционал. Рассмотрим детально данный процесс:

Можно сначала выбрать в списке слева нужную базу, и затем перейти по вкладке меню «Экспорт». Если использовать данный вариант, то будет произведен потабличный перенос MySQL. Для этого в «Способ экспорта» устанавливаем «Обычный», а в «Таблицы» выбираем элементы экспорта.

Как быстро перенести базу данных MySQL с помощью приложений

Если требуется экспортировать БД целиком (со всеми таблицами), то сразу переходите в «Экспорт». Только здесь мы уже оперируем не таблицами, а базами. В «Способ экспорта» также устанавливаем «Обычный». Затем выделяем нужную БД, и в разделе «Вывод» выбираем вариант «Сохранить вывод в файл».

Как быстро перенести базу данных MySQL с помощью приложений

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас!

Как быстро перенести базу данных MySQL с помощью приложений

Следующим шагом задаем формат, в котором будет сохранена копия базы. Выбираем в соответствующем списке значение «SQL». Это будет гарантом того, что копию можно будет использовать на большей части платформ. Но если собираетесь переносить базу на конкретную основу, то здесь можно выбрать соответствующий формат: массив PHP, CSV, PDF и другие.

Как быстро перенести базу данных MySQL с помощью приложений

Ниже в разделах «Параметры формата» и «Параметры сохранения данных» можно настроить более «профессиональные» параметры для переноса базы MySQL. Но мы не будет подробно останавливаться на их обзоре. Если вы не знакомы с какими-либо из них, то лучше не менять (без необходимости) установленные значения по умолчанию. Здесь можно настроить максимальную совместимость со старыми версиями СУБД и как будут сохранены таблицы. Можно экспортировать только данные или структуры. Мы скопируем таблицы полностью (вариант «структура и данные).

Как быстро перенести базу данных MySQL с помощью приложений

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

Как быстро перенести базу данных MySQL с помощью приложений

Импортируем

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

Чтобы присоединить к серверу базу (или несколько баз), сразу переходите по указанной вкладке. Затем в разделе «Импортируемый файл» отмечаем пункт «Обзор вашего компьютера», и через проводник указываем месторасположение файла БД.

Здесь нужно указать кодировку, в которой представлены данные в импортируемом источнике. С этим параметром следует быть аккуратнее, иначе вместо строк в таблицах получите настоящие «иероглифы», и для их расшифровки придется нанимать коренного японца или китайца. А с ними в нашей местности – настоящий дефицит :) .

:)

Чаще всего используется кодировка UTF-8, которая и установлена по умолчанию. Поэтому, даже если не знаете точно, какая используется в переносимой базе MySQL, то стоит попробовать данную кодировку. В любом случае вы всегда сможете удалить импортированную базу, и затем «перезалить» ее с другой кодировкой.

Также спешу огорчить «рьяных» поклонников phpMyAdmin. Данная утилита подходит только для экспорта-импорта небольших баз (до 2 «метров»). Этого значение вполне хватает для частичного (поэтапного) переноса сервера, что может быть не совсем удобно и затянуть надолго весь процесс.

Как быстро перенести базу данных MySQL с помощью приложений

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас!

:)

В разделе «Формат» устанавливаем значение «SQL». Если нужно, то включаем режим совместимости. А также отключаем автоматическое создание значения ключа для столбцов с нулевым значением (зависит от структуры таблиц импортируемого источника). И для окончания импорта жмем «Ок».

Если собираетесь перенести базу данных MySQL из бэкапа, то не забудьте перед началом импорта удалить с сервера «оригинал» источника. Иначе получите сообщение об ошибке, поскольку данная БД уже существует.

:)

Если процесс прошел удачно, то система программы выведет соответствующее сообщение.

:)

Альтернативное ПО

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

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

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

:)

В новом раскрывшемся окне слева в панели «Navigator» выбираем нужную вкладку (для экспорта или импорта). Я импортирую дубликат базы, созданный с помощью phpMyAdmin.

:)

Чтобы осуществить перенос данных MySQL, переходим через пункт «Data Import». В одноименной вкладке в разделе «Import Options» выбираем второй вариант (обозначен на снимке).

:)

Так как у нас никаких схем нет, то внизу нажимаем на «Start Import». В соседней вкладке «Import Progress» отображается состояние процесса переноса указанного файла. Эта опция может пригодиться при импорте больших объемов данных.

:)

После окончания переноса MySQL в списке баз у нас появится db1, дубликат которой мы создали с помощью phpMyAdmin.

:)

Ну, а пока я «прятал» свою БД MySQL, все родственники разъехались. Так как я был занят, а пополнять продуктовую базу холодильника было некому. Вот как любимая СУБД спасла меня от «родственной» напасти. За что ей огромное спасибо :) .

Как быстро перенести базу данных MySQL с помощью приложений

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас! :)

Хотите изучить MySQL?

Посмотрите курс по базе данных MySQL!

Смотреть

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *