AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 425494
Accepted
krizzo
krizzo
Asked: 2012-09-08 18:56:53 +0800 CST2012-09-08 18:56:53 +0800 CST 2012-09-08 18:56:53 +0800 CST

远程连接到mysql服务器?

  • 772

我一直在试图弄清楚为什么当我尝试使用以下命令连接到 MySQL 服务器时总是出现此错误。

$~ mysql -u username -h SQLserver -p
Enter password:
ERROR 1045 (28000): Access denied for user 'username'@'myIP' (using password: YES)

我已经完成了以下操作:
端口在防火墙中打开,否则我不会得到它只是超时的错误。
未使用 skip-networking 或 bind-address
用户名运行的 MySQL 服务器的主机为“%”,我可以在本地连接,因此密码正确。

GRANT USAGE ON *.* TO username@% IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

我想知道以前是否有人有想法或遇到过这个问题并解决了?如您所见,我可以在本地登录,但是当我尝试执行 -h 服务器时,出现错误。

mysql> SELECT user(),Current_user();
+--------------------+----------------+
| user()             | Current_user() |
+--------------------+----------------+
| username@localhost | username@%     |
+--------------------+----------------+
1 row in set (0.00 sec)

评论结果:

mysql> select user, host from mysql.user where user='username';
+----------+------+
|   user   | host |
+----------+------+
| username | %    |
+----------+------+
1 row in set (0.00 sec)

mysql> show grants for 'username';
+----------------------------------------------------------------------------------------------------------------+
| Grants for username@%                                                                                            |
+----------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY PASSWORD '*F42AD03PASSWORDHASHADF4021C86B' |
| GRANT ALL PRIVILEGES ON `DB2`.* TO 'username'@'%'                                                           |
+----------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
mysql
  • 2 2 个回答
  • 717 Views

2 个回答

  • Voted
  1. Best Answer
    Safado
    2012-09-08T19:27:00+08:002012-09-08T19:27:00+08:00

    我似乎从我的记忆深处回忆起,为了让'user'@'%'工作,你还必须有一个'user'@'localhost'。

    尝试创建一个具有相同用户名的 localhost 主机用户。

    不过我可能真的错了。

    • 1
  2. moestly
    2012-09-10T05:12:23+08:002012-09-10T05:12:23+08:00

    它可能超出范围,但我宁愿永远不要在公共端口上留下数据库监听,这可以帮助您避免这个问题。

    我用 [auto]ssh 设置了我需要的所有远程数据库来监听机器的本地主机,我想访问数据库。这个:

    autossh N -f -L 3307:127.0.0.1:3306 yourserver
    

    会将您服务器的 127.0.0.1:3306 上的端口绑定到您调用的机器的本地主机端口 3307。您甚至不需要 sudo 权限来绑定此端口。

    当您现在访问服务器时

    mysql -u user -P 3307 -h 127.0.0.1 -p      
    

    您是远程主机上的“localhost”用户,不再需要'user'@'remote'or'user'@'%'指令。但不要使用

    mysql -u user -P 3307 -h localhost -p 
    

    因为通过这种方式,mysql 客户端会尝试连接到我们尚未通过这种方式转发的套接字,因此无法访问。

    认为 SSH 在建立连接后速度很快,您应该不会感到开销。autossh与 ssh 相比,在退出后会不断尝试重新建立连接,而 ssh 只会终止。

    • 1

相关问题

  • 开源与专有关系 db mgt 系统的优缺点是什么?

  • 在 solaris 10 上为 mysql 设置 max_allowed_pa​​cket

  • 如何移动 MySQL 的数据目录?

  • 通过 VPN 连接什么是远程服务器 IP?

  • mysql崩溃

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve