首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法连接到新安装的Linux上的工作台和Azure上的MySQL

问无法连接到新安装的Linux上的工作台和Azure上的MySQL
EN

Server Fault用户
提问于 2018-08-29 03:57:40
回答 1查看 943关注 0票数 0

我在Ubuntu上创建了一个新的v18。我创建了一个入站规则以允许port 3306

我运行了updates and upgrades

我做了sudo apt install mysql-server

我检查了一下以确保它运行时:

代码语言:javascript
复制
sudo service mysql status

现在我试图通过MySQL Workbench连接到它,但是当我点击test connection按钮时无法连接到它

我还少了什么?

EN

回答 1

Server Fault用户

发布于 2018-08-29 08:59:13

要将MySQL公开给本地主机以外的任何东西,您必须有以下行

For MySQL5.6及以下版本

在/etc/mysql/my.cnf中不加注释,并分配给您的计算机IP地址,而不是回送

For MySQL5.7及以上版本

在/etc/mysql/mysql.con.d/mysqld.cnf中不加注释,并分配给您的计算机IP地址而不是回送

用您的IP地址替换xxx

代码语言:javascript
复制
bind-address        = xxx.xxx.xxx.xxx

如果不想指定IP,则添加bind-address = 0.0.0.0。

然后使用新的MySQL条目停止并重新启动my.cnf。运行完毕后,转到终端并输入以下命令。

代码语言:javascript
复制
lsof -i -P | grep :3306

在xxx的实际IP中,应该会出现这样的情况

代码语言:javascript
复制
mysqld  1046  mysql  10u  IPv4  5203  0t0  TCP  xxx.xxx.xxx.xxx:3306 (LISTEN)

如果上述语句返回正确,那么您将能够接受远程用户。但是,要让远程用户连接到正确的priveleges,您需要在本地主机和'%‘中创建该用户。

代码语言:javascript
复制
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';
CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
then,

GRANT ALL ON *.* TO 'myuser'@'localhost';
GRANT ALL ON *.* TO 'myuser'@'%';

最后,

代码语言:javascript
复制
FLUSH PRIVILEGES; 
EXIT;

然后,您可以连接到mysql。

希望这能帮到你。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/928432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档