博主信息
博文 24
粉丝 0
评论 0
访问量 27046
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
Root账号 可外部访问的解决方法
Technical的博客
原创
1775人浏览过

默认是不能用客户端远程连接的,阿里云提供的help.docx里面做了设置说明,mysql密码默认存放在/alidata/account.log

首先登录: mysql -u root -h localhost -p

use mysql                #打开mysql数据库


#将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip

     update user set host='%' where user='root' and host='localhost';

     flush privileges;        #刷新权限表,使配置生效

     然后我们就能远程连接我们的mysql了。

3、如果您想关闭远程连接,恢复mysql的默认设置(只能本地连接),您可以通过以下步骤操作:

     use mysql                #打开mysql数据库

     #将host设置为localhost表示只能本地连接mysql

     update user set host='localhost' where user='root';

     flush privileges;        #刷新权限表,使配置生效

备注:您也可以添加一个用户名为yuancheng,密码为123456,权限为%(表示任意ip都能连接)的远程连接用户。命令参考如下:

     grant all on *.* to 'yuancheng'@'%' identified by '123456';

     flush privileges;

问题原因

远程IP没有登录权限,root用户默认只能在localhost也就是只能在本机登录,需要设置允许其他IP登录权限。

 

解决方案

1. 在服务器内部登录数据库,然后执行

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

    此语句意思是给root用户在任何IP都可以登录数据库,操作任何数据库中的任何对象。

其中: 

*.* 第一个*是指数据库

*代表所有数据库

第二个*指数据库对象

*代表数据库中所有对象

 'root'@'%' root是制定要授权的数据库用户

%代表允许登录的IP

123456是你的数据库密码

 

假如要限制只能在1.1.1.1登录,把%改成1.1.1.1 ,执行完毕后执行 flush privileges; 刷新权限


 

2. 然后在远程电脑mysql客户端就可以连接了。


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学