当一个MySQL用户只能通过localhost登录到MySQL服务器,但是需要在开发电脑上访问该MySQL服务器时,如何进行操作呢?下面将为您详细介绍。

首先,如果不修改该MySQL用户的权限就直接尝试连接,会出现以下错误:

ERROR 1130 (HY000): Host '192.168.0.138' is not allowed to connect to this MySQL server

为了方便,可以通过以下步骤来修改用户名为“用户名”的MySQL用户权限,从而实现外网登录。

初始化环境时,创建一个只允许通过localhost登录的用户:

create user '用户名'@'localhost' IDENTIFIED BY '密码';

然后,可以给该用户分配适当的权限:

GRANT ALL PRIVILEGES ON *.* TO '用户名'@'localhost' WITH GRANT OPTION;

最后,通过执行下面的语句,该用户就可以通过外网登录到MySQL服务器了:

RENAME USER '用户名'@'localhost' TO '用户名'@'%';

您还可以通过以下语句查看您的MySQL服务器有哪些用户,并检验是否成功修改了用户权限:

select Host, User from mysql.user;

需要注意的是,MySQL用户机制是以用户名和host来唯一标识一个用户的,因此在创建用户时需要提供’用户名’@’localhost’等类似的信息来唯一标识一个用户。同时,您也可以创建不同host但用户名相同的用户,例如root@%和root@localhost两个用户。