Ubuntu中MySQL远程登录设置

mysql单独放在一台Ubuntu服务器上,我远程连接不上。可能是安装的时候忘记设置远程登录了。事后补救措施如下:

MySQL 绑定地址配置问题

MySQL 可能只绑定了 localhost,无法接受来自外部主机的连接。你需要检查 MySQL 的配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf,确保 bind-address 参数是 0.0.0.0或者是你的后端主机的地址。

修改 mysqld.cnf 文件,确保如下配置:

复制代码
bind-address = 0.0.0.0

然后重启 MySQL:

复制代码
sudo systemctl restart mysql

MySQL 用户权限不足

可以通过以下步骤修改用户权限:

登录 MySQL 服务器:

复制代码
mysql -u root -p

检查是否有允许远程连接的用户:

复制代码
SELECT host, user FROM mysql.user WHERE user = 'root';

我已经添加了一位用户进去。

创建用户
复制代码
CREATE USER 'root'@'192.168.145.130' IDENTIFIED BY 'your_password';
授予权限
复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.145.130';

刷新权限

复制代码
FLUSH PRIVILEGES;

可能会出现密码不符合规范的错误,所以可以降低密码规范:

复制代码
#将密码验证策略设置为 LOW 级别,只要求密码长度。
SET GLOBAL validate_password.policy = 0;
#密码长度最少6位
SET GLOBAL validate_password.length = 6;

可以再次检查用户是否成功创建:

复制代码
SELECT host, user FROM mysql.user WHERE user = 'root';
相关推荐
重生的黑客1 分钟前
Linux 进程状态详解:从理论到实践,僵尸进程与孤儿进程
linux·运维·服务器
脆皮炸鸡75511 分钟前
进程的程序替换
linux·经验分享·笔记·vim·学习方法
划水的code搬运工小李25 分钟前
ubuntu下使用opencode
linux·运维·ubuntu
ZPC821032 分钟前
Ubuntu 实时性优化(专属定制版,适配 fast_shm 通信)
linux·数据库·postgresql
郝学胜-神的一滴32 分钟前
epoll 边缘触发 vs 水平触发:从管道到套接字的深度实战
linux·服务器·开发语言·c++·网络协议·unix
韩明君1 小时前
OpenClaw安全部署实现
linux·人工智能·安全·debian·本地部署·ai agent·openclaw
代码中介商1 小时前
Linux 文件操作系统调用完全指南:从 open 到 close
linux·运维·服务器
想拿大厂offer1 小时前
【Linux】权限
linux·服务器
倔强的石头1061 小时前
【Linux指南】基础IO系列(七):“一切皆文件” 底层实现 ——struct file 与统一 IO 接口的魔法
linux·运维·服务器
网络小白不怕黑1 小时前
1.1 VMware部署Rocky Linux 9 (GPT分区表,最小化安装)
linux·服务器·gpt