Это крайне полезная утилита, позволяющая получить частичный или полный дамп базы данных в виде единого файла с набором команд языка SQL, которые могут быть считаны обратно в MySQL или в другую СУРБД. Она принимает как параметр стандартную информацию о пользователе и пароль, а также имена базы данных и таблиц. Дополнительные опции, приведенные в табл. 8.5, существенно расширяют функциональные возможности этой утилиты.
Таблица 8.5
Команда
Описание
– -add-drop-table
Вставляет
в файл вывода операторы SQL для удаления любых таблиц перед командой их создания
– e
Применяет расширенный синтаксис вставки. Это нестандартный язык SQL, но если вы получаете дамп больших объемов информации, это поможет гораздо быстрее повторно загрузить дамп вашей базы в СУРБД MySQL
– t
Получает дамп только данных из таблиц, а не информации, необходимой для создания таблиц
– d
Получает дамп только структуры таблиц, а не реальных данных
По умолчанию
mysqldump
посылает эти данные в стандартный вывод, поэтому вам потребуется перенаправление их в файл.
Эта утилита очень удобна для перемещения данных или быстрого создания резервных копий, и благодаря клиент-серверной реализации MySQL ее даже можно использовать для выполнения сложного удаленного резервного копирования с помощью клиента
mysqldump
, установленного на другой машине. Далее для примера приведена команда подключения пользователя rick и получения дампа базы данных
myplaydb
:
$ mysqldump -u rick -p myplaydb > myplaydb.dump
Результирующий файл, у которого в нашей системе только одна таблица в базе данных, выглядит следующим образом:
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
– - Dump completed on 2007-0.6-22 20:11:48
mysqlimport
Команда
mysqlimport
применяется для загрузки в таблицу большого количества данных. С помощью
mysqlimport
вы можете считывать из файла ввода большие объемы текстовых данных. Этой команде требуются только имена файла и базы данных;
mysqlimport
загрузит данные в базу данных, в таблицу с тем же именем, что и имя файла (за исключением расширения файла). Вы должны убедиться в том, что в текстовом файле столько же столбцов данных, сколько их в таблице, заполняемой данными, и типы данных совместимы. По умолчанию данные следует разделять знаком табуляции.
Можно также выполнять команды SQL из текстового файла, просто запустив
mysql
с перенаправлением ввода из файла, как мы упоминали ранее.
mysqlshow
Эта маленькая утилита может быстро предоставить информацию о вашей установке MySQL и составляющих ее базах данных.
Без параметров она отображает все имеющиеся базы данных.
С базой данных в качестве параметра она выводит таблицы этой базы данных.
С именами базы данных и таблицы утилита отображает перечень столбцов заданной таблицы.
Если заданы база данных, таблица и столбец, утилита выводит подробную информацию о заданном столбце.
Создание пользователей и наделение их правами доступа
В роли администратора MySQL вам чаще всего придется обслуживать пользователей: добавлять, и удалять пользователей СУРБД MySQL и управлять их полномочиями. Начиная с версии MySQL 3.22, правами доступа или полномочиями пользователей управляют в мониторе MySQL с помощью команд
grant
и
revoke
— задача, гораздо менее устрашающая, чем непосредственная корректировка таблиц прав доступа, которая требовалась в ранних версиях MySQL.