【RDS运维案例--001】mysql远程连接报错,如何处理?

举报
小云妹 发表于 2018/07/10 15:41:23 2018/07/10
【摘要】 针对mysql出现远程连接报错情况,给出分析和解决方案

场景描述
客户远程连接(包括telnet3306端口)MySQL时报错:Host * is not allowed to connectto this MySQL server。

问题分析
一般是由于帐号不允许远程登录,只能在localhost登录造成。

解决方案
目前针对这种情况,我们提供了两种解决方案:

方案一:改表法
可能该帐号不允许远程登录,此时,需在安装localhost 的电脑登录mysql,并更改 “mysql 数据库 > user表 > host项 > localhost”为"%"。执行如下命令:
mysql -u root –ppasswd
use mysql;
mysql>update user set host = '%' whereuser = 'root';
mysql>select host, user from user;
mysql>flush privileges;


方案二:授权法

l  若想实现myuser使用mypassword从任何主机连接到mysql服务器,在本地登录数据库后执行如下命令:

GRANT ALL PRIVILEGES ON *.* TO'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;

l  若想允许用户myuserip192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码,执行如下命令:

GRANT ALL PRIVILEGES ON *.* TO'myuser'@'192.168.1.6' IDENTIFIED

BY 'mypassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;


在安装mysql的机器上运行如下命令:

mysql -h localhost -u root//登录

mysql>GRANT ALL PRIVILEGES ON *.* TO'root'@'%' WITH

GRANT OPTION //赋予任何主机访问数据的权限

mysql>FLUSH PRIVILEGES;//修改生效

mysql>QUIT //退出MySQL服务器

这样就可以实现在其它任何的主机上以root身份登录。

file:///C:/Users/LWX331~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
目前我方云主机,在数据库开启允许远程后,如果仍无法连接可尝试清空防火墙以及开放安全组指定端口进行处理。

数据库封面.png

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。