您的位置:首页 > 数据库 > MySQL

mysql 赋给用户远程权限 grant all privileges on

2017-09-27 11:34 477 查看

登陆

在本机上使用命令行登陆,并切换到MySQL
mysql -uroot -p
use mysql;


要查看user表中user=’root’的对应情况,根据实际需求来更改表信息
select host,user from user where user='root';# 如果上面查询到有信息,但host为localhost或其他值,就需要根据实际需求来更新表信息update user set host='%' where user='root' # 如果想任何的IP地址都可以使用root用户来远程登陆(注意如果上面的查询语句,查询出来有多条,就需要做一些处理,比如多加一个条件如 where user='root' and host='localhost'或先删除其他人记录只保存一条user='root'的记录)

更改权限

使用grant all privileges on来更改用户对应某些库的远程权限
grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;flush privileges;


库名:要远程访问的数据库名称,所有的数据库使用“*” 

   表名:要远程访问的数据库下的表的名称,所有的表使用“*” 

   用户名:要赋给远程访问权限的用户名称 

   IP地址:可以远程访问的电脑的IP地址,所有的地址使用“%” 

   密码:要赋给远程访问权限的用户对应使用的密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'lxh' WITH GRANT OPTION; # 所有的地址都可以使用root用户,密码为lxh远程访问所有的数据库
flush privileges;GRANT ALL PRIVILEGES ON testdb.* TO 'lxh'@'172.16.52.225'  IDENTIFIED BY 'lxh' WITH GRANT OPTION; # IP为172.16.52.225的电脑可以使用lxh用户,密码为lxh远程访问数据库testdb的所有表


需要注意mysql的配置文件中的bindaddress 的参数和skip-networking 配置

bindaddress : 设定哪些ip地址被配置,使得mysql服务器只回应哪些ip地址的请求),最好注释掉该参数或设置成为127.0.0.1以外的值

skip-networking : 如果设置了该参数项,将导致所有TCP/IP端口没有被监听,也就是说出了本机,其他客户端都无法用网络连接到本mysql服务器,所以应该注释掉该参数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql