|
которой нужно запускать именно safe_mysqld, а не mysqld) в том, что сценарий
safe_mysqld запускает mysqld, а затем непрерывно проверяет, выполняется ли
mysqld. Если выполнение MySQL неожиданно прекратится, safe_mysqld ее
перезапустит.
Теперь, когда вы знаете, как запускать MySQL, нужно сделать так, чтобы MySQL
стартовала и заканчивала работу вместе с компьютером, на котором она
выполняется. Под Windows NT, конечно, достаточно установить MySQL как службу.
Под Windows 9x нужно поместить ярлык сценария запуска MySQL в папку Startup.
Под Unix, как и почти всегда бывает в этом мире, заставить MySQL стартовать и
завершаться вместе с системой несколько сложнее. Unix-системы обычно ищут
сценарии начального запуска где-то в каталоге /etc - в /etc/rc.d или /etc/ init.
d. Вы должны узнать у системного администратора или в документации, куда именно
нужно помещать сценарии запуска/завершения. Дистрибутив MySQL содержит в
каталоге support_j'lies файл mysql.ser-ver. Этот сценарий и будет служить
сценарием запуска/завершения.
Администрирование базы данных
Теперь, когда у вас есть свежеустановленная и запущенная MySQL, нужно первым
делом поменять пароль суперпользователя сервера, выполнив из каталога, в
который установлена MySQL, команду:
./bin/mysqladmin -u root password 'mynewpasswd'
При работающей и защищенной MySQL вы можете заняться некоторыми начальными
задачами администрирования, чтобы MySQL смогла начать вам служить.
Утилита mysqladmin
Главным инструментом администрирования баз данных в MySQL служит утилита
mysqladmin. С ее помощью вы можете создавать, уничтожать и контролировать свой
сервер и поддерживаемые им базы данных.
Создание баз данных
Ваш сервер бесполезен, пока нет баз данных, которые он обслуживает. С помощью
mysqladmin можно создавать новые базы данных:
mysqladmin -p create DATABASENAME
Параметр -р указывает, что вы хотите, чтобы было выдано приглашение для ввода
пароля суперпользователя, который вы задали раньше. Если вы введете правильный
пароль, то mysqladmin создаст новую пустую базу данных с именем, которое вы
указали. Поскольку в MySQL база данных - это каталог с группой файлов, команда
mysqladmin create создает новый каталог, который будет содержать файлы базы
данных. Например, если вы создали базу данных с именем «mydata», в каталоге
data, содержащемся в директории, в которую установлена MySQL, будет создан
каталог mydata.
Поскольку базы данных и таблицы MySQL хранятся как файлы файловой системы, вы
столкнетесь с неприятными различиями -в поведении реализаций для Unix и Win32.
Именно, все файловые системы для Win32 нечувствительны к регистру, в то время
как файловые системы Unix различают регистр. В результате имена баз данных и
таблиц различаются по регистру в Unix и не различаются в Win32.
Удаление базы данных
В процессе разработки приложения вам, вероятно, потребуется создать несколько
баз данных для поддержки процесса разработки. Например, обычной практикой в
разработке приложений баз данных является создание отдельных баз данных для
разработки, тестирования и работы. По завершении разработки следует избавиться
от этих промежуточных баз данных. Утилита mysqladmin позволяет удалить базу
данных с помощью параметра «drop»:
mysqladmin -p drop DATABASENAME
Как и в команде mysqladmin create, DATABASENAME является именем базы данных,
которую нужно уничтожить. MySQL не позволит вам случайно удалить базу данных.
После ввода этой команды она предупредит вас, что удаление базы данных
потенциально очень опасно и попросит вас подтвердить свое намерение. После
удаления базы данных вы можете убедиться в том, что в каталоге data больше нет
каталога, служившего ранее этой базой данных.
Переименование и копирование баз данных
В MySQL нет утилиты для переименования и копирования баз данных. Поскольку база
данных - это просто файлы в некотором каталоге, можно, соблюдая осторожность,
переименовывать и копировать базы данных с помощью операционной системы. Хотя
использование команд операционной системы позволяет переименовывать и
копировать базы данных, результат не сохранит параметров защиты исходных таблиц,
поскольку MySQL хранит данные по защите в таблице системной базы данных. Для
того чтобы полностью скопировать базу данных, вам потребуется также
продублировать ее информацию по защите, хранимую в системной базе данных MySQL.
Мы подробнее рассмотрим систему защиты MySQL далее в этой главе.
Состояние сервера
В утилите mysqladmin очень много команд, позволяющих контролировать состояние
сервера MySQL. Ввод команды mysqladmin status обеспечивает выдачу состояния
сервера в одной строке, которая выглядит следующим образом:
Uptime: 395 Threads: 1 Questions: 14 Slow queries: 0
Opens: 10 Flush tables: 1 Open tables: 6
Выводимые величины означают следующее: Uptime
Число секунд, в течение которых сервер запущен и работает. Threads
Число потоков, взаимодействующих с базой в данный момент. Вы всегда увидите
хотя бы один поток - тот, который подсчитывает все остальные потоки. Сервер
имеет также три других потока, невидимых данной команде, - один обрабатывает
сигналы, другой управляет всеми другими потоками и третий ждет входящих
соединений.
|
|