Чтение онлайн

на главную - закладки

Жанры

Linux-сервер своими руками

Колисниченко Денис Николаевич

Шрифт:

1. таблицу db;

2. таблицу host;

3. таблицу user.

Сейчас нас интересует таблица user. Она содержит пароли всех пользователей, которые имеют право работать с сервером. На данном (начальном) этапе в базу данных внесен только один пользователь — root. Для изменения пароля запустите сервер командой:

safe_mysqld &

Эта команда запустит сервер в режиме демона и освободит консоль. Если все пакеты были установлены правильно, вы увидите сообщение:

mysql: ready for connections

Однако,

может быть и другое сообщение, свидетельствующее об удачном запуске. Затем введите команду:

mysql –u root mysql

Данная команда запускает клиент MySQL. При этом используется имя пользователя root, даже если вы работаете под другой учетной записью. Последний параметр определяет базу данных — mysql.

Измените пароль суперпользователя с помощью команды:

UPDATE user SET Password=PASSWORD(xnew_password') WHERE user='root';

Как вы заметили, это обычный SQL-запрос, обновляющий поле Password таблицы user для пользователя root. Теперь нужно, чтобы MySQL принял изменения. Для этого выполните еще один запрос SQL:

FLUSH PRIVILEGES;

Для принятия изменений можно также использовать программу mysqladmin с параметром reload. Вызвать программу можно так:

mysqladmin –p reload

Параметр –р вам обязательно нужно использовать, так как вы только что установили пароль для пользователя root. Выйти из клиента mysql вы можете, введя команду quit.

Установите права доступа к сценарию /etc/re.d/init.d/mysql:

chmod +х /etc/re.d/init.d/mysql

Теперь можете перезапустить сервер командой:

/etc/re.d/init.d/mysql restart

Если вы забудете пароль, вы его уже не восстановите. Единственный выход из этого положения — удалить каталог /var/lib/mysql/mysql и создать базу mysql заново командой mysql_install_db.

Теперь вы уже не можете зарегистрироваться на сервере без пароля. Если вы введете команду mysql –u root mysql, то получите следующее сообщение:

ERROR: Access denied for user: * root@localhost' (Using password: NO)

Для регистрации на сервере теперь нужно использовать команду mysql –u root –p. Параметр –р запросит пароль при регистрации.

Последнее, что вам осталось сделать — это добавить сервер MySQL в автозапуск. С этой целью перейдите в каталог /etc/re.d/rc3.d/ и создайте символическую ссылку на файл /etc/re.d/init.d/mysql:

ln –s S14mysql /etc/re.d/init.d/mysql

Префикс S14 определяет очередность запуска сервера mysql. В данном случае он запустится после сервисов network (S10) и portmap (S11). У вас эти значения могут быть другими.

В своей работе демон mysqld использует файл журнала /var/log/mysql.log. Именно в него заносятся все транзакции, а также все команды, которые ввел пользователь. После установки сервера нужно внести пользователей, которые имеют право работать с сервером баз данных. Введите следующий запрос:

GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;

Введенный

вами запрос создаст пользователя admin, который будет иметь право выполнять любые операции со всеми базами данных. Данный пользователь будет иметь право подключаться к серверу с компьютера localhost, используя пароль password.

Маска *.* определяет, к каким базам данных и таблицам имеет право подключаться тот или иной пользователь. Первая звездочка определяет базу, а вторая — таблицу. Если вам нужно, чтобы пользователь admin имел право подключаться с любого хоста, используйте знак процента вместо имени хоста. В этом случае запрос будет выглядеть так:

GRANT ALL PRIVILEGES ON *.* TO admin@"%" IDENTIFIED BY 'password' WITH GRANT OPTION;

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

GRANT CREATE,DROP,SELECT,INSERT,UPDATE,DELETE,INDEX ON user.* TO user@% IDENTIFIED BY 'user_password';

Перед выполнением данного запроса необходимо создать базу данных user. Данный запрос позволяет пользователю user выполнять все операции с его базой данных.

Полный список полномочий представлен в табл. 16.1. Если запрос GRANT у вас не работает, то вы можете внести пользователя непосредственно в таблицу user базы данных mysql. Структура таблицы user выглядит следующим образом:

Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv

Поля Host, User, Password — это, соответственно, узел, из которого пользователь может получить доступ, имя пользователя, пароль пользователя.

Полномочия пользователей сервера MySQL Таблица 16.1

Полномочия Описание
SELECT, INSERT, UPDATE, DELETE Одноименные операции с данными: пользователь имеет право просматривать, добавлять, модифицировать, удалять данные в таблицах баз данных
INDEX Пользователь имеет право производить операции с индексами таблиц
REFERENCES Пользователь имеет право работать со ссылками в базах данных и таблицах
CREATE, DROP Создание и удаление таблиц и баз данных
GRANT, ALTER Операции с полномочиями
RELOAD, SHUTDOWN, PROCESS Пользователь имеет право перезагружать, останавливать сервер и просматривать все процессы (подключения)
Поделиться:
Популярные книги

Жена неверного генерала, или Попаданка на отборе

Удалова Юлия
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Жена неверного генерала, или Попаданка на отборе

Эпоха Опустошителя. Том II

Павлов Вел
2. Вечное Ристалище
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Эпоха Опустошителя. Том II

Гримуар темного лорда III

Грехов Тимофей
3. Гримуар темного лорда
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Гримуар темного лорда III

Меткий стрелок. Том II

Вязовский Алексей
2. Меткий стрелок
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Меткий стрелок. Том II

Кукловод

Злобин Михаил
2. О чем молчат могилы
Фантастика:
боевая фантастика
8.50
рейтинг книги
Кукловод

Дракон

Бубела Олег Николаевич
5. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.31
рейтинг книги
Дракон

Дочь моего друга

Тоцка Тала
2. Айдаровы
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Дочь моего друга

Жут

Май Карл Фридрих
Приключения:
вестерны
6.25
рейтинг книги
Жут

Я еще не князь. Книга XIV

Дрейк Сириус
14. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я еще не князь. Книга XIV

Вернувшийся: Новая жизнь. Том I

Vector
1. Вернувшийся
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Вернувшийся: Новая жизнь. Том I

Камень. Книга восьмая

Минин Станислав
8. Камень
Фантастика:
фэнтези
боевая фантастика
7.00
рейтинг книги
Камень. Книга восьмая

Я уже барон

Дрейк Сириус
2. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я уже барон

Глава рода

Шелег Дмитрий Витальевич
5. Живой лёд
Фантастика:
боевая фантастика
6.55
рейтинг книги
Глава рода

Кодекс Охотника. Книга XXXVIII

Винокуров Юрий
38. Кодекс Охотника
Фантастика:
фэнтези
боевая фантастика
попаданцы
юмористическое фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XXXVIII