Ubuntu 下 MySQL 8.0.28 安装配置与远程访问教程
本文详细介绍如何在 Ubuntu 环境下安装 MySQL 8.0.28,解决默认的本地登录限制,并通过修改配置文件实现远程连接。主要步骤涵盖服务端安装、利用系统自动生成的用户重置 root 密码、解除绑定地址限制以及防火墙设置。
安装 MySQL 客户端与服务端
首先,建议在虚拟机中安装 SSH 服务以便通过终端进行操作:
sudo apt-get install openssh-server
service sshd start
接着,使用 apt 包管理器安装 MySQL 的服务端和客户端组件。参数 -y 用于自动确认安装:
sudo apt install -y mysql-server
sudo apt install -y mysql-client
初始化配置与权限重置
MySQL 8.0 在 Debian/Ubuntu 系发行版安装后,会创建一个名为 debian-sys-maint 的系统账户,其凭证存储在 /etc/mysql/debian.cnf 文件中。这是重置 root 密码的关键入口。
第1步:查看系统默认账号密码
打开配置文件夹中的自动生成文件:
cat /etc/mysql/debian.cnf
记录下 [client] 节下的 user(通常为 debian-sys-maint)和 password 字段值。
第2步:临时跳过权限验证
为了能以无密码或已知凭据进入数据库修改 root 策略,需先编辑主配置文件:sudo vim /etc/mysql/my.cnf。
在 [mysqld] 块中添加一行以跳过权限表检查。这将允许后续直接登录:
[mysql]
default-character-set=utf8
[mysqld]
port=3306
bind-address = 0.0.0.0
skip-grant-tables
第3步:重启服务并登录
应用新配置并重启 MySQL:
sudo service mysql restart
使用之前记录的 debian-sys-maint 账号和密码登录:
mysql -udebian-sys-maint -p此处输入实际密码
第4步:修改 Root 密码与主机权限
登录后执行以下 SQL 语句,将 root 账户的主机权限设置为 '%'(即允许任何 IP 连接),并将认证插件重置为兼容性较好的模式:
use mysql;
grant all privileges on *.* to 'root'@'%' with grant option;
update user set host='%' where user='root';
ALTER USER 'root'@'%' IDENTIFIED BY '你的新密码' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的新密码';
FLUSH PRIVILEGES;
第5步:恢复安全配置
退出 MySQL 命令行后,再次编辑 /etc/mysql/my.cnf,删除或注释掉 skip-grant-tables 行:
[mysql]
default-character-set=utf8
[mysqld]
port=3306
bind-address = 0.0.0.0
再次重启服务使配置生效:
sudo service mysql restart
网络连通性测试
完成上述配置后,若希望从局域网其他设备或宿主机连接,需确保防火墙未拦截 3306 端口。对于实验环境,可暂时关闭 UFW 防火墙:
sudo service ufw disable
sudo service ufw stop
最终,可使用 Navicat 或其他数据库管理工具,使用 root 账号和刚才设置的密码进行连接测试,如图所示:
以上就是 Ubuntu 安装 MySQL 8.0.28 及配置远程连接的详细内容,更多关于 MySQL 优化的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









