你用的这个root好像是redhat的根用户,不是mysql的root用户。
一、你可以直接更改mysql数据库中的user表,(注:有一定的危险慎重操作)。
c:\mysql
mysql>use mysql
mysql>update user set password="yourpassword" where user=root
二、可以借助管理工具如mysqlfront等
一、你可以直接更改mysql数据库中的user表,(注:有一定的危险慎重操作)。
c:\mysql
mysql>use mysql
mysql>update user set password="yourpassword" where user=root
二、可以借助管理工具如mysqlfront等
Enter password: *****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9 to server version: 3.23.42-ntType 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use mysql
Database changed
mysql> update user set password=password("jian") where user='root';
Query OK, 2 rows affected (0.01 sec)
Rows matched: 2 Changed: 2 Warnings: 0mysql> select * from user;
+-----------+------+------------------+-------------+-------------+-------------+-------------+--------
| Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_
+-----------+------+------------------+-------------+-------------+-------------+-------------+--------
| localhost | root | 30fd2a005d21b57f | Y | Y | Y | Y | Y
| % | | | N | N | N | N | N
| localhost | | | Y | Y | Y | Y | Y
| % | root | 30fd2a005d21b57f | Y | Y | Y | Y | Y
+-----------+------+------------------+-------------+-------------+-------------+-------------+--------
4 rows in set (0.00 sec)mysql> \q
ByeC:\>mysql
ERROR 2013: Lost connection to MySQL server during queryC:\>mysql -u root -p
Enter password: ***** //这里输入jian
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)C:\>mysql -u root -p
Enter password: ****
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)C:\>mysql -u root -p
Enter password: ******
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)C:\>mysql -u root -p
Enter password: ******
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)C:\>mysql -u root
ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)C:\>mysql -u root -p
Enter password: **************** //这里干脆输入那段password("jian") ,实在是异想天开的写法
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)C:\>mysql -u root -p
Enter password: **************** ////这里干脆输入那段加密数字
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)//下面没有用PASSWORD,我想保存为明文方式
mysql> use mysql
Database changed
mysql> update user set password="jian" where user='root';
Query OK, 2 rows affected (0.01 sec)
Rows matched: 2 Changed: 2 Warnings: 0mysql> select * from user;
+-----------+------+----------+-------------+-------------+-------------+-------------+-------------+-----------+-------
| Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload
+-----------+------+----------+-------------+-------------+-------------+-------------+-------------+-----------+-------
| localhost | root | jian | Y | Y | Y | Y | Y | Y | Y
| % | | | N | N | N | N | N | N | N
| localhost | | | Y | Y | Y | Y | Y | Y | Y
| % | root | jian | Y | Y | Y | Y | Y | Y | Y
+-----------+------+----------+-------------+-------------+-------------+-------------+-------------+-----------+-------
4 rows in set (0.00 sec)重启mysql之后变为
+-----------+------+------------------+-------------+-------------+-------------+-------------+-------------+-----------+---------
| Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_p
+-----------+------+------------------+-------------+-------------+-------------+-------------+-------------+-----------+---------
| localhost | root | 68d4f47c49a579c9 | Y | Y | Y | Y | Y | Y | Y
| % | | | N | N | N | N | N | N | N
| localhost | | | Y | Y | Y | Y | Y | Y | Y
| % | root | jian | Y | Y | Y | Y | Y | Y | Y
+-----------+------+------------------+-------------+-------------+-------------+-------------+-------------+-----------+---------
感觉是把第一行加密了。C:\mysql\bin>mysql -u root -p
Enter password: ****
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)
//测试还是不行,倒是不输入密码却可以进入,faint了
以上每次修改密码之后均重启mysql之后再登陆的,看来得好好看看mysql的用户部分了,哪位知道是什么原因帮忙指点一下,头都搞大了.
开始我以为只要正常shutdown server然后再起来就应该可以,结果我自己测试了一下是不行。非要mysqladmin flush-privileges才可以,而且不需要shutserver。
多谢!