版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chushoutaizhong/article/details/82878837
- 使用下发命令时如果没有这个用户使用这个命令之后会自动创建一个 如果存在了 mysql.user表中添加一条记录对应权限的记录
使用下发命令时 必须先登录mysql -u root -p
该root用户必须有执行该语句的权限
- 授权格式:grant 权限 on 数据库.表名称 to 用户名@登录主机 identified by "密码";
例子
grant all privileges on TestDB.* to test@localhost identified by '123456';
flush privileges;
说明 将TestDB数据下的所有表(*代表所有表)权限给test用户,指定允许登录的主机为localhost 用户密码为123456; 如果项远程登录可以在执行一下grant all privileges on TestDB.* to test@localhost identified by '123456';语句将localhost改为允许登 录的主机ip如12.12.12.12 这样test用户可以在本地和12.12.12.12两台主机上登录数据库 flush privileges; 语句必须执行不然配置不生效
- 可以使用select * from mysql.user\G 查看数据库中所有用户的权限
- 可以使用select * from mysql.db\G 查看数据库中所有用户对应的表权限 具有root权限的用户不会显示
- 修改密码
update user set password=password('123') where user='root' and host='localhost';
flush privileges;
当然其他方式也可以但是 本人亲测该方式可以使用也生效了 故推荐使用这种方式