Прежде всего нужно установить пакеты, необходимые для работы MySQL. У меня MySQL версии 4.0.15, поэтому я установил такие пакеты (номера версий у вас, возможно, будут другими, и я их обозначил символами «x»):
♦ MySQL_GPL-4.x.x
♦ MySQL_GPL-client-4.x.x
♦ MySQL_GPL-shared-libs-4.x
♦ MySQL_GPL-bench-4.x.x
♦ MySQL_GPL-resolveip-4.x.x
После установки пакетов нужно создать системную базу данных mysql, содержащую таблицы db, hostи user. Скорее всего, она уже создана, но, чтобы окончательно убедиться в этом, введите команду:
# mysql_install_db
17.1.1. Назначение пароля суперпользователя
Учетные записи и пароли всех пользователей, которые имеют право работать с сервером, содержатся в таблице user. Сразу же после создания базы mysqlв эту таблицу внесен только один пользователь — root. По умолчанию он не имеет пароля. Этот пароль нужно установить немедленно: не нужно объяснять, как это важно для безопасности системы. Для изменения пароля запустите сервер командой:
# safe_mysqld &
Эта команда запустит сервер в режиме демона и освободит консоль. Если все пакеты были установлены правильно, вы увидите сообщение:
mysql: ready for connections
Затем введите команду:
$ mysql -u root mysql
Эта команда запускает клиент MySQL (MySQL-монитор) и соединяется с сервером от имени пользователя root, даже если вы работаете под другой учетной записью. Последний аргумент указывает базу данных, которую требуется открыть.
SQL-запросы можно набирать в строке приглашения MySQL-монитора, заканчивая ввод точкой с запятой или командой \g (go), а можно редактировать в текстовом редакторе, введя команду \е (edit). Список команд MySQL-монитора можно получить по команде \h (help).
Измените пароль суперпользователя с помощью следующего запроса:
UPDATE user SET Password=PASSWORD('новый_пароль') WHERE
user='root';
Как вы заметили, это обычный SQL-запрос, обновляющий поле Password таблицы userдля пользователя root. При вводе запроса обратите внимание на регистр названий полей: сервер MySQL различает прописные и строчные буквы!
Теперь нужно, чтобы MySQL принял изменения. Для этого выполните еще один запрос SQL:
FLUSH PRIVILEGES;
Завершите сеанс работы с MySQL-монитором, введя команду \q (quit). В следующий раз зарегистрироваться на сервере без пароля вы уже не сможете. Теперь нужно запускать MySQL-монитор следующей командой:
$ mysql -u root -p mysql
Ключ -p запросит при регистрации пароль. Имейте в виду: забытый пароль нельзя восстановить. Единственный выход из этого положения — удалить каталог /var/lib/mysql/mysql
и создать базу mysqlзаново командой mysql_install_db.
Для принятия изменений можно также использовать программу mysqladminс аргументом reload. Вызвать программу можно так:
$ mysqladmin -p reload
Параметр -p вам обязательно нужно использовать, так как вы только что установили пароль для пользователя root.
Установите права доступа к сценарию /etc/rc.d/init.d/mysqld
:
# chmod +x /etc/rc.d/init.d/mysqld
Теперь можете перезапустить сервер командой
# /etc/rc.d/init.d/mysqld restart
17.1.2. Автозапуск сервера MySQL
Последнее, что вам осталось сделать — это добавить сервер MySQL в автозапуск. С этой целью перейдите в каталог /etc/rc.d/rc3.d
и создайте символическую ссылку на файл /etc/rc.d/init.d/mysql
:
# ln -s S14mysql /etc/rc.d/init.d/mysql
Префикс S14 определяет очередность запуска сервера mysqld. В данном случае он запустится после сервисов network (S10) и portmap (S11). У вас эти значения могут быть другими.
17.1.3. Пользователи сервера MySQL и их права
После установки сервера нужно завести пользователей, которые имеют право работать с сервером баз данных. Введите следующий запрос:
GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY
'пароль' WITH GRANT OPTION;
Введенный вами запрос создаст пользователя admin, который будет иметь право выполнять любые операции со всеми базами данных. Этот пользователь будет иметь право подключаться к серверу с компьютера localhost, используя пароль.
Маска *.* определяет, к каким базам данных и таблицам имеет право подключаться тот или иной пользователь. Первая звездочка определяет базу, а вторая — таблицу. Если вам нужно, чтобы пользователь admin имел право подключаться с любого узла, используйте знак процента вместо имени компьютера:
Читать дальше
Конец ознакомительного отрывка
Купить книгу