[Comm] service mysqld start -> Adjusting environment for mysqld
Шенцев Алексей Владимирович
=?iso-8859-1?q?ashen_=CE=C1_nsrz=2Eru?=
Вт Сен 19 13:16:43 MSD 2006
В сообщении от 19 сентября 2006 15:54 Aleksander N. Gorohovski написал(a):
> Алексей,
> так чтоб настраивать его, надо чтобы он, по крайней мере, был запущен?
> Может я ошибаюсь?
Ошибаетесь. Думаю Вам это будет интересно прочесть, только учтите "rootpass"
это для примера:
Займёмся SQL-сервером MySQL. Устанавливаем MySQL-server, MySQL-client,
MySQL-doc, phpMyAdmin и всё что они за собой потянут. Смотрим на каких
уровнях ОС запскается mysql:
$ chkconfig --list | grep mysqld
mysqld 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл
Устанавливаем запуск mysqld на 3,4, и 5-ом уровнях:
$ chkconfig --level 345 mysqld on
Проверяем:
$ chkconfig --list | grep mysqld
mysqld 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл
В конфиге mysql - /var/lib/mysql/my.cnf коментируем строку skip-networking.
Нам это надо для того, чтобы можно было обратиться к mysql из сети, ибо мы
хотим им управлять из любой точки нашей ЛВС по веб-интерфейсу, ну а от инета
доступ мы закроем файерволом (как и что это уже не здесь). Итак конфиг mysql
мы привели к виду:
$ cat /var/lib/mysql/my.cnf
[mysqld]
chroot=/var/lib/mysql
datadir=/db
bdb-logdir=/log
log=/log/queries
pid-file=/mysqld.pid
skip-locking
#skip-networking
socket=/mysql.sock
tmpdir=/tmp
user=mysql
Запускаем mysql:
$ service mysqld start
Adjusting environment for mysqld: [ DONE ]
Starting mysqld service: [ DONE ]
Соединяемс с mysql и меняем пароль root'а:
$ mysql -u root mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.24-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> UPDATE user SET Password=PASSWORD('rootpass') WHERE user='root';
Query OK, 2 rows affected (0.00 sec)
Rows matched: 2 Changed: 2 Warnings: 0
mysql> quit
Bye
И перегружаем mysql:
$ service mysqld restart
Stopping mysqld service: [ DONE ]
Adjusting environment for mysqld: [ DONE ]
Starting mysqld service: [ DONE ]
Подсоединяемся к серверу ещё раз, только теперь с новым паролем и из таблицы
user удаляем запись пользователя '%' и '' (какая есть), т.к. эта запись
предоставляет доступ любому пользователю.
$ mysql -u root -p mysql
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.24-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> DELETE FROM user WHERE user='%';
Query OK, 0 rows affected (0.00 sec)
mysql> DELETE FROM user WHERE user='';
Query OK, 2 rows affected (0.00 sec)
mysql> quit
Bye
Так как мы изменили пароль пользователя root, то теперь не сможет работать
logrotate. Для исправления добавляем в конец файла /var/lib/mysql/my.cnf
соответсвующие параметры:
# cat /var/lib/mysql/my.cnf
[mysqld]
chroot=/var/lib/mysql
datadir=/db
bdb-logdir=/log
log=/log/queries
pid-file=/mysqld.pid
skip-locking
#skip-networking
socket=/mysql.sock
tmpdir=/tmp
user=mysql
[mysqladmin]
password=rootpass
user=root
И перегружаем mysql.
Веб-интерфейс для управления MySQL. Пакет phpMyAdmin мы уже установили.
Заходим в каталог /var/www/html/phpMyAdmin/ и в файле конфигурации
config.inc.php в строке $cfg['Servers'][$i]['auth_type'] = 'config'
значение 'config' заменяем на значение 'http'. Замену производим в самом
первом вхождении данной сроки, есть ещё два вхождения, но я их трогать не
стал, так как в php не разбираюсь, а вникать что и как в конфиге не стал, у
меня и так всё заработало. Ну а теперь топаем на ссылку
http://localhost/phpMyAdmin/, вводим имя пользоваиеля, у нас это root, и
пароль, у нас это rootpass и - вуаля, мы находимся на странице веб-интерфейса
для СУДБ MySQL. Единственное что я предложил бы, так это перенести
каталог /var/www/html/phpMyAdmin/ в созданный каталог /var/www/html/admin/ .
Мне, например, удобней обращаться по адресу http://localhost/admin/phpMyAdmin,
чем лазить по всему сайту, вспоминая хде что лежит ... ;) Тем более, что
перенос каталога ничего не меняет, кроме размещения самого каталога. Так что
далее обращаться к phpMyAdmin и к postfixadmin будеем через
http://localhost/admin/ , тем более, что на данный каталог можно навесить
дополнительную защиту к самой авторизации пользователей в используемых нами
программах администрирования, что, по моему мнению, повышает безопастность
всей системы в целом. Если я не прав, то пусть меня поправят, уточнят и
дополнят.
--
С уважением Шенцев Алексей Владимирович.
E-mail: ashen на nsrz.ru
ICQ: 271053845
Подробная информация о списке рассылки community