MySQL数据库远程访问权限如何打开(两

当我们需要在不同的机器上使用MySQL数据库时,我们可能需要启用远程访问权限。
默认情况下,MySQL用户不允许远程登录。
以下是解决此问题的两种常见方法:

方法一:修改用户表

首先,确保您已登录MySQL服务器(例如,通过`mysql-uroot-p`),然后更改“mysql”数据库中“用户”表的“主机”项。
将“localhost”改为“%”:

sqlmysql>UPDATEuserSEThost='%'WHEREuser='root';mysql>SELECThost,userFROMuser;方法二:授权访问权限

在MySQ中执行以下命令服务器授予特定的远程访问权限user:

shmysql-hlocalhost-urootmysql>GRANTALLPRIVILEGESON*.*TO'myuser'@'%'IDENTIFIEDBY'mypassword'WITHGRANTOPTION;//或者,指定具体IP地址mysql>GRANTALLPRIVILEGESON*.*TO'myuser'@'192.168.1.6'由'mypassword'识别并授予OPTION;

不要忘记执行`FLUSHPRIVILEGES`以使更改生效,然后退出MySQL服务器:

sqlmysql>FLUSHPRIVILEGES;mysql>EXIT;

现在用户可以登录任何主机使用提供的凭据。

mysql给root开启远程访问权限

要为mysqlroot用户启用远程访问权限,首先连接到服务器后,访问mysql系统数据库,使用命令:mysql-uroot-p。
然后,切换到mysql数据库,命令为:查询用户表的usemysql命令为:选择用户,authentication_string,Hostfromuser;通过这个查询我们可以发现,默认情况下,主机权限仅限于localhost。
进入操作的主要部分:使用命令GRANTALLPRIVILEGESON*.*TO'root'@'%'IDENTIFIEDBY'123456'。
这里root用户的权限设置为所有数据库的所有权限,密码指定为123456。
%代表所有主机,可以具体设置为特定主机IP地址。
执行GRANT操作后,一定要运行flushprivilege命令,保证权限数据重新加载,因为MySQL的权限设置默认是缓存的,更改后必须刷新;再次搜索users表,会发现新增了一个用户,具有所有主机的访问权限。
至此,root用户的远程访问权限已经成功开启,并实现了使用sqlyog等工具的访问绑定。