gpt4 book ai didi

MySQL远程访问不可能

转载 作者:行者123 更新时间:2023-11-29 11:01:10 25 4
gpt4 key购买 nike

我在通过远程访问连接到 MySQL 服务器时遇到问题。

我正在使用MySQL Workbench。一切都设置正确(我介意)。 MySQL 服务器在带有 Plesk 的 Ubuntu 16.04 上运行。

我的用户拥有所有权限(包括GRANT),my.cnf中的远程限制被注释掉:

# bind-address = ::ffff:127.0.0.1

数据库名称是“localhost”,我尝试通过服务器的 IP 地址进行连接。

重要的是,不存在用户错误(例如密码错误或缺少权限)。所以我认为,这是一个防火墙问题。

最佳答案

<强>1。更改 mysql 配置

找到mysql配置文件

/etc/mysql/my.cnf

或者(如果上面的文件指向!includedir/etc/mysql/mysql.conf.d/)

/etc/mysql/mysql.conf.d/mysqld.cnf

注释掉以下行(如果有)

#bind-address = 127.0.0.1

这允许除 localhost (127.0.0.1) 之外的外部连接

#skip-networking

这允许监听 TCP/IP 端口

<强>2。更改 GRANT 权限

mysql> GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' 
IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;

以下内容确保用户有权访问数据库中的所有架构

*.*

% 确保用户可以从任何 IP 地址/网络进行连接

'USERNAME'@'%'

然后运行此命令以应用更改。

mysql> FLUSH PRIVILEGES;

<强>3。重启MySQL服务器

重启服务器

service mysql restart

<强>4。连接到服务器

MySQL 的默认端口是

3306

您还可以使用此命令找到它正在运行的端口

netstat -tln

它应该返回类似这样的内容

tcp        0      0 127.0.0.1:3306              0.0.0.0:*                   LISTEN 

在 MySQL Workbench 中

使用 SQL Server 的 IP 地址作为主机名

使用3306作为端口号

使用您授予访问权限的用户

使用您在 GRANT 命令中使用的“密码”

请引用https://easyengine.io/tutorials/mysql/remote-access/

关于MySQL远程访问不可能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42222418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com