首页 > 解决方案 > 无法建立远程mysql连接

问题描述

我有一个 VM(Ubuntu 18.04 服务器)和 mysql 安装在其上并在端口 3306 上运行。我认为显示整个配置非常重要,这里是:

[mysqld_safe]
socket                  = /var/run/mysqld/mysqld.sock
nice                    = 0

[mysqld]
server-id               = 1
user                    = mysql
pid-file                = /var/run/mysqld/mysqld.pid
log-bin                 = /var/log/mysql/mysql-bin.log
socket                  = /var/run/mysqld/mysqld.sock
sync_binlog             = 1
binlog_format           = ROW
port                    = 3306
basedir                 = /usr
datadir                 = /var/lib/mysql
tmpdir                  = /tmp
lc-messages-dir         = /usr/share/mysql
skip-external-locking
bind-address            = 192.168.1.91
key_buffer_size         = 16M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8
myisam-recover-options  = BACKUP

query_cache_limit       = 1M
query_cache_size        = 16M


log_error = /var/log/mysql/error.log
expire_logs_days        = 7
max_binlog_size         = 500M

虚拟机的地址是 192.168.1.91。主机地址为 192.168.1.118。我 ssh 到虚拟机并发出以下命令:

sudo mysql -u root -p

然后我发出第一部分中显示一系列命令。它创建了一个具有所有必要权限的新的类似管理员的用户。

现在我退出并尝试从虚拟机登录:

sudo mysql -u vScopeUserName -h 192.168.1.91 -p

有用。

如果我尝试从 vm 像这样登录:

sudo mysql -u vScopeUserName -h localhost -p

有用。

现在,如果我尝试从主机(其 ip 为 192.168.1.118)像这样登录:

sudo mysql -u vScopeUserName -h 192.168.1.91 -p

它出错了:

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

如果您能帮助我找出此错误背后的原因,我将不胜感激。我究竟做错了什么?!我已经在互联网上搜索了一堆东西,但我尝试的所有方法都没有奏效,我仍然遇到同样的错误。

标签: mysql

解决方案


推荐阅读