仅对workbench拒绝权限

kmbjn2e3  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(329)

我有一个位于服务器上的数据库,它工作正常。我可以从本地服务器访问它,并从连接到网络的任何服务器使用phpmyadmin。
我想使用workbench来使用它的功能,但我已经尝试了很多可能性,我无法从中连接。
我找到了很多解决办法,但谁也帮不了我。因为这个原因,我想找个能帮我的人。
首先,我想解释一下,这个数据库可以从phpmyadmin(如我之前所说)和webserver(我在我的web应用程序中使用数据库)访问,因此,拒绝远程访问的麻烦被忽略了(具有用户根)
此外,我正在查找问题,在数据库服务器的日志中可以找到:

error: connect to 127.0.0.1 port 3306 failed: Permission denied
channel_by_id: 0: bad id

我尝试过使用workbench with tcp/ip with the ip of the database server by port 3306 and with ssh connecting to webserver(此步骤正在正确运行)and connecting to database with local ip and port 3306.我尝试过使用workbench with tcp/ip with the ip of the database server by port 3306 and with ssh connecting to webserver(此步骤正在正确运行)and connecting to database。
此外,我还检查了3306端口是否关闭和打开。
配置(my.cnf)如下:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
max_allowed_packet=1024M

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

我知道这个配置是不常见的,但我还没有安装它,我不想接触很多,因为它是工作,现在有很多人正在使用它。
我也试过编辑 hosts.allow 添加行 mysqld: all 但没有起作用。
有什么问题吗?谢谢你的帮助。
(我也查看了stackoverflow的帖子,但没有找到解决方案)

ffdz8vbo

ffdz8vbo1#

您需要配置mysql以允许远程登录。然后可以指定ip或通配符*以允许所有ip访问mysql数据库。
这是授予远程访问权限的命令。
登录到数据库服务器。以root用户身份连接到mysql数据库。输入以下命令:

GRANT ALL ON <local database name>.* TO <remote web node username>@<remote web node server ip address> IDENTIFIED BY '<database user password>';

例如,

GRANT ALL ON magento_remote.* TO dbuser@192.0.2.50 IDENTIFIED BY 'dbuserpassword';

相关问题