【问题标题】:Connect to MySQL Database on Local Network连接到本地网络上的 MySQL 数据库
【发布时间】:2015-07-23 06:46:39
【问题描述】:

在我尝试之前,我实际上认为我可以做到这一点。我在本地网络 IP 地址 (192.168.1.4) 中的一台 PC 上安装了 MySQL 服务器,现在我试图从同一网络 (192.168.1.5) 中的另一台 PC 访问它,但我无法:

C:\Users\DOMICO>mysql -u domico -h 192.168.1.4 -p
Enter password: **********
ERROR 1045 (28000): Access denied for user 'domico'@'DOMICO-PC' (using password:
 YES)

令人惊讶的是 DOMICO-PC 是我尝试连接的 PC。为什么它没有连接到给定的主机而是尝试连接到本地机器?

【问题讨论】:

标签: mysql remote-server


【解决方案1】:

适用于所有用户和所有主机。

mysql -u root -p

GRANT ALL PRIVILEGES
ON *.*
TO '%'@'%'
IDENTIFIED BY 'password'
WITH GRANT OPTION;

FLUSH PRIVILEGES;

QUIT;

【讨论】:

    【解决方案2】:

    通过mysql服务器创建一个新用户 并赋予它特权,您可以通过命令和使用任何服务器(例如使用工作台)来完成此操作

    【讨论】:

    • 对于已经有公认答案的两年前的问题是否有必要这样做?
    【解决方案3】:

    您需要授予从远程主机连接的权限

    mysql>GRANT ALL PRIVILEGES ON database.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

    【讨论】:

    • 我收到了那个错误,ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.16' (111)
    【解决方案4】:

    您需要拥有适当的权限才能连接。在安装了数据库的计算机上,为您的用户授予适当的权限:

    mysql>GRANT ALL PRIVILEGES ON *.* TO 'domico'@'DOMICO-PC';
    mysql>FLUSH PRIVILEGES;
    

    您可以在此处阅读更多内容: https://www.digitalocean.com/community/tutorials/how-to-create-a-new-user-and-grant-permissions-in-mysql

    这里: https://dev.mysql.com/doc/refman/5.1/en/privileges-provided.html

    【讨论】:

      【解决方案5】:

      这是按照您的要求连接到预期的主机。 t 只是说明谁在连接。以及从哪里来。

      用户@域

      user : 运行 mysql 命令的用户 domain : 您连接的系统的名称。

      使用 -u root 通过服务器登录 mysql,确保用户 'domico' 已创建并具有足够的访问权限。

      【讨论】:

      • 创建用户时,我在 domico 上授予了所有权限。* 用户 'domico' 他们还需要哪些其他访问权限?
      • 向我展示您在数据库中为“domico”设置的授权。你确定你也输入了正确的密码吗?
      • 重点是,您可能在@localhost 上授予了所有权限(这意味着您只能从本地计算机访问数据库)。正如我在上面的答案中所写,在授予权限时,您需要指定正确的主机(计算机)-@'DOMICO-PC'。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-28
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多