mysql用户组问题
登陆MYSQL后usemysqlselect*fromuser\G出现几个用户,有个疑问看图localhost应该是超级用户root。那另一个%root是什么。passw...
登陆MYSQL后use mysqlselect * from user\G出现几个用户 ,有个疑问看图
localhost应该是超级用户root。那另一个%root是什么。password看着怎么不一样,怎么把password统一成一样的。%貌似是所有的意思,但是这个%root密码怎么改。越说越糊涂了。我就是想搞清localhost和%。另外密码分别怎么改 展开
localhost应该是超级用户root。那另一个%root是什么。password看着怎么不一样,怎么把password统一成一样的。%貌似是所有的意思,但是这个%root密码怎么改。越说越糊涂了。我就是想搞清localhost和%。另外密码分别怎么改 展开
1个回答
2013-05-21
展开全部
第一个,实际上是 root@% . 意味着这个用户, 可以从任何及其上面, 用 root 登录到 mysql
第二个,实际上是 root@localhost, 意味着这个用户, 仅仅能从本机登录到 mysql
修改当前登录用户的密码: (也就是修改自己的密码)
mysql> SET PASSWORD = PASSWORD('test');
Query OK, 0 rows affected (0.00 sec)
mysql> select host, user, password from mysql.user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| localhost | root | |
| localhost | | *94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29 |
+-----------+------+-------------------------------------------+
2 rows in set (0.00 sec)
要想更改已有账户的密码,使用UPDATE来设置Password列值:
shell> mysql -u root mysql
mysql> UPDATE user SET Password = PASSWORD('bagel')
-> WHERE Host = '%' AND User = 'francis';
mysql> FLUSH PRIVILEGES;
第二个,实际上是 root@localhost, 意味着这个用户, 仅仅能从本机登录到 mysql
修改当前登录用户的密码: (也就是修改自己的密码)
mysql> SET PASSWORD = PASSWORD('test');
Query OK, 0 rows affected (0.00 sec)
mysql> select host, user, password from mysql.user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| localhost | root | |
| localhost | | *94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29 |
+-----------+------+-------------------------------------------+
2 rows in set (0.00 sec)
要想更改已有账户的密码,使用UPDATE来设置Password列值:
shell> mysql -u root mysql
mysql> UPDATE user SET Password = PASSWORD('bagel')
-> WHERE Host = '%' AND User = 'francis';
mysql> FLUSH PRIVILEGES;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询