Поможите люди добрые!!! Сложилась следующая ситуация(привожу полную историю, поскипано несущественное):>======
Last login: Tue Oct 8 15:04:54 2002 from :0
[root@oic root]# mysql -u root mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 64 to server version: 3.23.49Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> update user set password='passwdw' where user='root';
Query OK, 2 rows affected (0.00 sec)
Rows matched: 2 Changed: 2 Warnings: 0mysql> FLUSH privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> quit;
Bye
[root@oic root]# mysql -p -u root mysql
Enter password:
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)>======
Было там в users два узера root, оба были без пароля, обоим поставился пароль,
я посмотрел базы, действительно пароль в user.MYD стоит такой как я вводил, но
ни из Shell, ни из mysqladmin, ни из скриптов на РHР с указанными
логином-паролем более не пускает в базы. Что делать? Помогите!!!
>mysql> update user set password='passwdw' where user='root';
>mysql> FLUSH privileges;
>[root@oic root]# mysql -p -u root mysqlА для базы mysql доступ для root открыт (таблица db) ?
Прописанный в user и db таблицах хост (поле Host) совпадает с тем с которого пытаешься зайти в базу ?Через mysql_setpermission не пробовал выставлять пароль и права доступа ?
>>mysql> update user set password='passwdw' where user='root';
ошибка тут ^^^^ а надо было PASSWORD('passwdw')
>>mysql> FLUSH privileges;
>>[root@oic root]# mysql -p -u root mysql
>
>А для базы mysql доступ для root открыт (таблица db) ?
>Прописанный в user и db таблицах хост (поле Host) совпадает с тем
>с которого пытаешься зайти в базу ?
>
>Через mysql_setpermission не пробовал выставлять пароль и права доступа ?Все оказалось проще - в той доке, по которой я делал не было написано, что пароли mysql передаются в шифрованном виде, то есть хеши, и я неправильно написал запрос.
Я выгрузил mysqld (killall mysqld, killall safe_mysqld), запустил safe_mysqld --skip-grant-tables &, затем из myphpadmin(можно и из командной строки) создал юзера, пароль зашифровал функцией password, снова убил и перезапустил mysqld, но уже с grant tables, и все заработало.
Источники тут:
http://www.devshed.com/Server_Side/MySQL/Grant_Tables/commen...
http://www.devshed.com/Server_Side/MySQL/Grant_Tables/commen...
и тут:
https://www.opennet.ru/docs/RUS/mysqlrus/admin.html#About