mysql用户权限
方法一:改表法
需要在本机修改,修改需要远程的用户的"host"从"localhost"变为"%",如下:
mysql> use mysql;
mysql> select user,host from user;
mysql> update user set host='%' where user='root';
mysql> flush privileges;
方法二:授权法
语法解释:
all privileges ==》 表示所有的权限 ,增删改查权限全部都有了
*.* ==》 所有的数据库下面所有的表
root@% ==》 所有数据库下面所有的表,所有的权限,全部都给root用户 % 表示root用户可以在任意机器上面进行连接登录
identified by '123456' ==》 远程登录连接的密码
with grant option ==》 权限传递,意思是它的权限可以传递给其它用户
查看自身权限:
mysql> show grants
刷新权限列表:
mysql> flush privileges
任何主机都可访问
这里用的root用户,密码为123456,其他用户也可以这样设置
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option; //赋予任何主机访问权限
mysql> flush privileges;
ip为192.168.86.14的主机可访问
mysql> grant all privileges on *.* to 'root'@'192.168.86.14' identified by '123456' with grant option;
mysql> flush privileges;
ip为192.168.86.14的主机可访问testDB数据库
mysql> grant all privileges on testDB.* to 'root'@'192.168.86.14' identified by '123456' with grant option;
mysql> flush privileges;