Linux за българи: Форуми

Програмиране => Web development => Темата е започната от: steady в Feb 25, 2006, 21:05



Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: steady в Feb 25, 2006, 21:05
Здравейте на всички.
Използвам MySQL server 4.1.12 инсталиран по подразбиране от Mandriva, но за съжаление не съм сложил парола при инсталацията.
Сега след като инсталирах phpMyAdmin реших да засиля малко сигурността и моля някой да помогне с променянето на паролата на MySQL.
Намерих разни статии по темата на Английски, но за съжаление командите не проработиха
Примерен код
mysql -u root mysql
> UPDATE user SET password=password('secret') WHERE user='root';
> flush privileges;

Въпроса ми е няма ли някой конфиг който да се промени за по-лесно ?
Благодаря на отзовалите се !


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: в Feb 25, 2006, 21:33
Securing initial MySQL Accounts

Не се притеснявай, че статията е за версия 5. Еднакви са нещата поне в това отношение.


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: steady в Feb 25, 2006, 22:06
Според статията кодът би трябвало да е:
Примерен код
shell> mysql -u root
mysql> SET PASSWORD FOR ''@'localhost' = PASSWORD('newpwd');
mysql> SET PASSWORD FOR ''@'host_name' = PASSWORD('newpwd');
където 'host_name' (от 3-тия ред) е записа на името на 'Host'-a седящ до 'User'-a с име 'root' , който се вижда след подаване на командата:
Примерен код
mysql> SELECT Host, User FROM mysql.user;

+-----------+--------+
| Host        | User   |
+-----------+--------+
| LanBG     | steady |
| localhost  |          |
| localhost  | root    |
+-----------+--------+
3 rows in set (0.02 sec)

Следователно аз подавам:
Примерен код
mysql> SET PASSWORD FOR ''@'localhost' = PASSWORD('моята парола');
Query OK, 0 rows affected (0.00 sec)

mysql> SET PASSWORD FOR ''@'localhost' = PASSWORD('моята парола');
Query OK, 0 rows affected (0.00 sec)

и паролата не се добавя  ???

Моля помогнете !!!

Цитат
MySQL 4.1.12 е стартиран на localhost като root@localhost

Цитат
Вашият конфигурационен файл съдържа настройки (root без парола), които съответстват на привилигирования акаунт на MySQL по подразбиране. Вашият MySQL сървър е стартиран с това по подразбиране и може да бъде лесно хакнат. Tрябва да оправите тази дупка в сигурността.


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: steady в Feb 25, 2006, 23:16
Намерих решение по "дърводялския" начин:
1. Трябва да имате инсталиран и работещ phpMyAdmin.
2. В него си има такава опция.
3. Въвеждате паролата.
4. И готово.

p.s. Страничните реакции са, че неможе да се влиза през shell-a в mysql ???


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: в Feb 26, 2006, 00:29
Ами виж какво си написал горе, на кого слагаш парола. Естествено, че в базата за потребителите няма такъв, на какъвто се опитваш да смениш паролата. Пробвай с root@localhost, а не само с @localhost


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: steady в Feb 26, 2006, 01:08
Благодаря за информацията, но се оправих и без конзола.

//отклонение от темата:
Странно защо ли все по-рядко я използвам тая конзола ?
Дори може да се каже, че я използвам само при срив на някой сървър.

Още веднъж благодаря на Михаил за информацията.


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: smelkomar в Feb 26, 2006, 03:22
steady, ти си злато относно това къде се сменя паролата в phpmyAdmin-a (отдавна я търсех :D ). Но иначе phoenix не ми стана ясно защо трябва да се влиза с root@localhost при положение че phpmyadmin-a ми иска нормално име (root) и съответната парола? Говоря през браузъра като се влиза


Титла: Q: Как да сложа паролата на MySQL ?
Публикувано от: в Feb 26, 2006, 08:39
Моля, моля, ама виждам, че не ти е помогнала много. Радвам се поне че си се оправил.
@smelkomar мисля, че phoenix има нещо друго предвид. Там където steady е написал:
''@'localhost'
трябва да бъде написано:
'root'@'localhost'
иначе слагаш парола не на root а на несъществуващ празен потребител.