加入收藏 | 设为首页 | 会员中心 | 我要投稿 南京站长网 (https://www.025zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

软件配置:解决MySQL远程无法访问

发布时间:2022-11-01 14:31:21 所属栏目:MySql教程 来源:互联网
导读: 软件配置:解决MySQL远程无法访问
在日常学习和工作中,经常需要使用的数据库,有时候是在本地的虚拟机上搭建,有时是在VPS上搭建,MySQL默认的策略是关闭远程访问的mysql远程,这就给学习

软件配置:解决MySQL远程无法访问

在日常学习和工作中,经常需要使用的数据库,有时候是在本地的虚拟机上搭建,有时是在VPS上搭建,MySQL默认的策略是关闭远程访问的mysql远程,这就给学习和测试工作造成比较大的影响,亟待解决

无法远程访问的原因

常见问题的原因一把也就这几种

解决方法MySQL的安全策略没有修改

#?ssh连接ubuntu
#?登录MySQL服务器
mysql?-uroot?-p
#?输入密码登录

#?进入mysql数据库
use?mysql;
#?查看root用户的访问权限
SELECT?host,user?FROM?user;
#?更新域属性,‘%’表示允许外部访问
UPDATE?user?SET?host?=?'%'?WHERE?user?=?'root';
#?更新权限信息
flush?privileges;
#?执行授权语句
grant?all?privileges?on?*.*?to?'root'@'%'?with?grant?option;
#?再次更新权限信息
flush?privileges;

#?禁用地址绑定(很多教程上都没有写这一步操作)
#?打开该文件
sudo?vi?/etc/mysql/mysql.conf.d/mysqld.cnf
#?注释掉以下行:bind-address = 127.0.0.1
#?点击按键I进入插入模式,在该行前面添加?#?注释掉该行
#?按?Esc?键退出编辑模式,输入?:wq?并按?Enter?键保存并退出文件

#?重启系统或重启MySQL服务
#?重启MySQL服务
sudo?/etc/init.d/mysql?restart
#?重启系统
sudo?reboot

服务器OS防火墙没有开放3306端口(Ubuntu为例)

ubuntu防火墙相关的基础命令

#?查看系统防火墙状态
sudo?ufw?status
#?开启防火墙
sudo?ufw?enable
#?禁用防火墙
sudo?ufw?disable
#?放行指定端口
sudo?ufw?allow?端口号
#?阻断指定端口
sudo?ufw?deny?端口号
#?重启防火墙
sudo?ufw?reload

端口被占用或绑定指定IP

#?查询指定端口的占用情况
netstat?-ap?|?grep?端口号
#?杀死占用端口的进程
kill?-进程pid

#?端口绑定指定IP解决方法见上文“禁用地址绑定”

VPS(云服务器)安全组没有开放端口(腾讯云为例)

登录腾讯云控制台 -> 安全组控制台 ->安全组

图片来源--简书

修改规则 -> 入站规则 -> 添加规则

mysql远程_mysql远程执行命令_mysql远程管理工具

图片来源--简书用户权限不足

这个是要看自己是否有数据库的管理权限,是否是数据库所有者

自己是DBA,那么可以使用cli方式或是第三方数据库管理工具(eg:Navicat/DBreave ...)进行用户权限管理,具体管理方法本文不做赘述,请参考网络文章。

cli 形式管理用户可以参考这篇文章或复制链接浏览器访问

注意事项限于篇幅,表述有限,未完待续

往期文章

(编辑:南京站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章