|
Программирование >> Программный интерфейс приложений
а Утилита mysqladmin позволяет выполнять всевозможные административные функции. а Сценарии safe mysqld и mysql. server применяются для запуска MySQL-сервера mysqld. Программа mysqldump используется для резервирования и копирования баз данных. а Утилиты myisamchk И isamchk применяются для проверки целостности данных таблиц и операций отладки. Дополнительную информацию об этих программах можно найти в приложении Д, Профаммы MySQL . Защита новой инсталляции MySQL Многие пользователи наверняка приступят к чтению этой главы сразу после выполнения инсталляции MySQL (в соответствии с инсфукциями приложения А, Получение и инсталляция профаммного обеспечения ). На этом этапе необходимо обязательно установить пароль для MySQL-пользователя root, поскольку сразу после установки права сервера не защищены. Предполагается, что каталог данных и база данных mysql с таблицей разрещений уже инициализированы. На компьютерах с UNIX для их инициализации достаточно запустить сценарий mysql install db. На компьютерах, работающих под управлением Windows, каталог данньк и база данных mysql инициализируются посредством запуска профаммь; Setup в дисфибуции сервера. Итак, каталог и основная база данньк про инициализированы, и сервер запушен. Сразу после первой инсталляции MySQL на компьютере привилегии в таблице разрешений базы данных mysql устанавливаются следуюшик! образом. а Зарегисфироваться в качестве основного пользователя root с ло кального компьютера можно без пароля. Пользователь root обла дает всеми возможными правами (включая админисфативные) \ может выполнять любые операции. (Кстати, совпадение имен су перпользователей MySQL и UNIX не является закономерностью Они никак друг на друга не влияют.) а Права анонимного доступа предоставляются всем пользователям, подключающимся с локального компьютера к базе данных test или любой другой базе данных, имя которой начинается со слова test . Анонимные пользователи могут выполнять любые операции с такими таблицами, но не обладают привилегиями администратора. Для подключения к серверу с локального компьютера можно определить как имя главного компьютера localhost, так и его реаль- ное имя. Например, если сервер размещается на компьютере pit-viper. snake. net, клиент этого компьютера может подключиться без пароля к серверу для работы с базой данных test с помощью одной из двух следующих команд: % mysql -h localhost test , mysql -h pit-viper. snake. net test Ha полное отсутствие защиты исходной инсталляции указывает тот факт, что подютючиться к серверу MySQL можно в качестве пользователя root абсолютно без пароля. Именно поэтому одна из первых задач администратора MySQL заключается в установке пароля для пользователя troot. Затем, в зависимости от метода установки пароля, возможно, еще придется указать серверу перезагрузить таблицы разрешений, чтобы загрузить в память все сделанные изменения. (В процессе запуска сервер загружает таблицы в память и может не заметить внесенные впоследствии изменения. В таком случае следует явным образом указать ему на необходимость повторного считывания таблиц.) В версиях MySQL 3.22 и выше установить пароль можно с помошью команды mysqladmin. Для этого достаточно ввести следующую команду, 5аменив ее часть ту password реальным паролем: mysqladmin -и root password my password Во всех остальных версиях MySQL для этих целей можно воспользоваться профаммой mysql и непосредственно обновить таблицу разрешений grant В базе данных mysql: г mysql -U root mysql riysql> UPDATE user SET Password=PASSWORD ( my password ) -> WHERE User= root ; Команда mysql и оператор UPDATE применяется в старых версиях MySQL, а также во всех бесплатно распространяемых версиях под Windows. После установки пароля необходимо определиться, следует ли задавать серверу перезафузк7 таблицы разрешений. Для этого запустите следующую команду: \ mysqladmin -и root status Если сервер все еще позволяет подключаться в качестве пользователя root без пароля, укажите ему перезагрузить таблицы, введя следующую команду: % mysqladmin -и root reload После определения пароля пользователя root (и перезафузки таблиц разрешений), самое время приступать к определению нового пароля для админисфатора. Настройка процедур запуска и завершения работы сервера MySQL Одна из основных обязанностей администратора MySQL - обеспечить согласованную и длительную работу сервера, что даст возможность пользователям получать доступ к нему в любое удобное время. Иногда, однако, возникает необходимость и во временной приостановке работы сервера. (Так, например, при перемещении базы данных необходимо убедиться, что сервер в это же время не обновляет ее таблицы.) Эта книга не поможет разрешить компромисс между необходимостью постоянной работы сервера и желанием иногда временно приостановить его работу, поскольку зачастую решение этого компромисса зависит от конкретной ситуации. По крайней мере читатели смогут узнать, как запустить и завершить работу сервера. Все приведенные в этой главе инструкции применимы только к операционным системам UNIX. Пользователям компьютеров Windows эту главу можно пропустить, поскольку в приложении А, Получение и инсталляция программного обеспечения , представлены все необходимые для запуска и завершения работы сервера команды. Запуск представленных в этой главе команд в большинстве примеров этой главы такие программы, как mysqladmin, mysqldump и им подобные для краткости представлены без опций -h, -и и -р. Предполагается, что пользователи будут правильно вызывать эти профаммы, используя в случае необходимости подключения к серверу соответ-ц ствующие опции. В версии MySQL 3.22.11 и выше перезагрузить таблицы можно с помощью команды mysqladmin flush-privileges и SQL-оператора FLUSH PRIVILEGES. Запуск сервера MySQL непривилегированным пользователем Прежде чем приступить к рассмофению процедуры запуска сервера, давайте обсудим, какие пользователи могут выполнить подобный запуск. Сервер может запускаться вручную или автоматически. В первом случае сервер запускается в качестве пользователя, под именем которого зареги-сфирован админисфатор, запускающий сервер (или другой сотрудник) Другими словами, если админисфатор зарегисфирован под именем пользователя paul и запускает сервер, сервер будет работать с правами пользователя paul. Если затем администратор с помощью команды su зарегистрируется в качестве пользователя root и запустит сервер, сервер будет работать с правами пользователя root.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |