设置MySQL数据库的远程连接权限

设置MySQL数据库的远程连接权限

贡献者:

KB小秘书

 · 

更新时间:2019-08-12 14:54:43

提示: 这是一篇由阿里云ACE开发者(Alibaba Cloud Engineer)贡献,针对特定用户问题发布的文章。文档的内容以原稿呈现,阿里云对于文档内容不做任何形式的承诺。阿里云有权在未经通知的情形下对文档内容做出任何形式的修改。

问题描述

MySQL安装完毕,本机登录正常。但在远程登录时报错如下,确认已输入正确账号和密码。

 

问题原因

未授权远程IP地址登录。root用户默认只能在localhost也就是本机登录,故需要对其他IP地址进行授权。

 

解决方案

  1. 在服务器上登录数据库,然后执行如下授权命令。该授权命令的含义为root用户可用任何IP地址登录数据库,操作任何数据库中的任何对象。
    grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
    参数说明如下。
    • *.*参数,第一个“*”为数据库占位符,如果填“*”则代表所有数据库。第二个“*”为数据库对象占位符,如果填“*”则代表数据库中所有对象。
    • 'root'@'%'参数,root为授权登录的数据库账户,“%”为IP地址占位符。假如要限制只能在1.1.1.1登录,则需要把“%”改成1.1.1.1。如果填“%”则代表允许任何IP地址登录。
    • '123456'参数,该参数为数据库密码。
  2. 执行如下命令,刷新权限。
    flush privileges;
  3. 确认远程MySQL客户端可正常连接数据库。

 

适用于

  • 云服务器 ECS

 

如果您的问题仍未解决,您可以在阿里云社区免费咨询,或提交工单联系阿里云技术支持。

 

 

  • 87

    发布KB

  • 595

    回答问题

  • 4

    粉丝数