Создание бекапов базы mySQL из консоли unix

Ещё одна шпаргалка по администрированию UNIX серверов. На этот раз рассмотрим несколько полезных команд для создания бекапа базы данных из консоли.

Нам понадобится команда mysqldump, которая позволяет создавать sql скрипт базы или её части.

Создание дампа базы

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

По умолчанию, сервером базы считается localhost. Если это не так, укажите дополнительный параметр -h.

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

Сохраняем это в какой то файл с расширением .sh, добавляем права на запуск. Каждый раз при запуске создаётся бекап с уникальным названием . Часть рутины осталась позади :)

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

Читайте, как развертывать созданный бекап здесь.

Мало букафф? Читайте есчо !

Курсоры в MySQL

Август 26, 2015 г.

MySQL позволяет использовать курсоры (CURSORs) в хранимых процедурах. Эта конструкция позволяет организовать сложную обработку данных на стороне сервера ...

Читать

Mysqldump без блокировки таблиц

Ноябрь 11, 2019 г.

По умолчанию для mysqldump требуются права пользователя на блокировку таблиц. Потому, когда вы создаёте бекапы, вы можете получить сообщение вроде: mysqldump: Got error: 1044: "Access denied for user 'USER'@'%' to database 'DATABASENAME'" when ...

Читать

Как изменить значение AUTO_INCREMENT таблицы в MySQL

Август 3, 2022 г.

Наиболее простой ответ - это использование запроса alter, где вы задаёте новое значение для AUTO_INCREMENT нужной вам таблицы: [crayon-6a6663a79528f623101450/] Вы можете достичь такого же эффекта изменениями соответствующего столбца вашей таблицы: ...

Читать

Как выполнить mysql запрос из командной строки

Январь 19, 2023 г.

Допустим, у вас запущен локально сервер, и есть база myBase с и учетка пользователя UserName/MyPass. Вы хотите выполнить запрос "SELECT * FROM TABLE" из командной строки. Команда передаётся с параметром -e, в общем виде запрос будет выглядеть так: ...

Читать
 

Комментарии к «Создание бекапов базы mySQL из консоли unix»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: