Все остальные поля задают полномочия для пользователя. Если выполнение какой-нибудь операции разрешено пользователю, соответствующее поле должно быть равным «Y». В противном случае установите значение «N».
Например, нам нужно создать пользователя admin, который должен иметь все полномочия. Это можно сделать с помощью такого запроса SQL:
INSERT INTO user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv) VALUES
('localhost', 'admin' ,password('4td561sl2'), 'Y', 'Y, 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');
При вводе запроса обратите внимание на регистр названий полей. Сервер MySQL различает прописные и строчные буквы! С помощью вышеприведенного запроса был создан пользователь admin, который имеет право регистрироваться на сервере только из узла localhost. Если вам нужно разрешить регистрацию из любого узла сети, используйте знак процента, однако это не совсем корректно с точки зрения безопасности. Пользователь admin обладает всеми возможными привилегиями. Пароль пользователя — 4td561sl2.
Для создания обыкновенного пользователя используйте следующий запрос:
INSERT INTO
user(Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv)
VALUES('%', 'user',password('123456') , 'Y','Y',' Y', Y');
16.2. Клиентская часть
Удобной программой для просмотра структуры базы данных является mysqlshow. Введите следующую команду:
mysqlshow –p mysql
В ответ вы увидите список таблиц, которые находятся в базе данных mysql.
Database: mysql
+--------+
I Tables I
+--------+
I db I
I host I
I user I
+--------+
Программа mysqlshow может вызываться с дополнительными параметрами, указанными в табл. 16.2.
Параметры программы mysqlshow Таблица 16.2
Параметр | Описание |
---|---|
––host=имя_xocтa | Задает имя хоста, к которому вы хотите подключиться |
--port=номер_порта | Определяет номер порта для сервера MySQL |
--socket=сокет | Указывает сокет |
--user=имя пользователя | С помощью этого параметра можно указать нужное имя пользователя |
-p | Запрашивает ввод пароля |
Для самих же операций с данными используется программа mysql. Она и является клиентом сервера. В этой программе можно использовать те же опции, что и mysqlshow. Среди многочисленных параметров программа mysql имеет один очень важный параметр –s. Я рекомендую вам всегда его использовать. Этот параметр подавляет большинство ненужных сообщений, выводимых клиентом. На медленных линиях связи это должно повысить производительность. Да и наблюдать за всеми рамочками и ненужными сообщениями особо не хочется.
16.3. Связка Apache + PHP + MySQL
Настроить данную связку, которая очень полезна при Web-программировании, можно двумя способами. Первый из них — это использовать программы, которые входят в состав дистрибутива и, как правило, устанавливаются из пакетов RPM. Второй способ заключается в загрузке последних версий Apache, MySQL и PHP и в самостоятельной их сборке из исходных текстов. Первый способ я могу порекомендовать начинающим пользователям, так как он более прост. Если же вы чувствуете уверенность в своих силах, приступайте сразу к чтению второго способа.
16.3.1. Первый способ: из пакетов RPM
Могу сразу обрадовать пользователей дистрибутивов Red Hat 7.2 и Mandrake 8.1 (или более поздних версий): вам не нужно настраивать первую часть связки — все настраивается во время установки системы. В состав дистрибутива Red Hat 7.2 входит сервер Apache 1.3.20-16, а при установке системы устанавливаются библиотека gd и интерпретатор php версии 4.0.6, а также модуль для сервера Apache. Поэтому вы можете сразу приступить к тестированию связки Apache + PHP (см. файл test .php ниже). Не забудьте установить сервер Apache, если он еще не установлен (перед выполнением данной команды перейдите в каталог, в котором находятся пакеты RPM):
rpm –Uh apache*
Затем следует настроить сервер. Настройка Apache подробно обсуждалась в гл. 12 этой книги. Не нужно настраивать сервер полностью: достаточно указать только директиву ServerName и попробовать запустить сервер.
Как правило, сервер должен успешно запуститься и функционировать. Для проверки его работы введите команду: