Ubuntu 18.04安装MySQL并配置远程访问的完整指南
在Ubuntu 18.04服务器上部署MySQL服务是开发环境的常见需求。本文将分步演示如何安装MySQL,进行安全加固,修改监听地址与端口,并开放远程访问权限,确保服务能够被外部设备正常连接。
安装MySQL
首先更新软件源列表,然后使用apt包管理器安装MySQL服务器。
- 更新源:运行
sudo apt-get update获取最新的软件包索引。 - 执行安装:输入命令
sudo apt-get install mysql-server开始安装。过程中若提示确认,输入 Y 即可。
安全初始化配置
安装完成后,强烈建议运行安全脚本以优化基础设置,特别是禁止远程Root登录和移除匿名用户。
执行命令:sudo mysql_secure_installation,随后按以下步骤选择(根据安全性需求可调整):
- VALIDATE PASSWORD PLUGIN:测试密码强度插件。为简化操作,建议选 N(No)关闭。若需强密码策略,选 Y。
- 设置 Root 密码:输入并重复输入新的Root管理员密码。请务必妥善保管。
- 删除匿名用户:默认允许匿名登录。出于安全考虑,建议选择 Y(Yes)移除,但根据原文演示习惯,此处也可选 N。通常生产环境建议选 Y。
- 禁止Root远程登录:默认禁止Root从网络登录。若后续需要通过工具远程管理,此步稍后处理;若仅本机使用,选 Y。
- 删除test数据库:移除默认的测试数据库。建议选 Y,因为任何用户都可访问该库,存在安全风险。
- 重载权限表:使上述修改立即生效。必须选 Y(Yes)。
检查服务状态
确认MySQL服务是否正常运行。执行命令:systemctl status mysql.service。
如果看到绿色的 active (running) 状态,表示服务启动成功。
修改监听地址与端口
默认情况下,MySQL只允许本地回环地址(127.0.0.1)访问,且端口为3306。若需远程连接,需修改配置文件。
操作步骤:
- 编辑配置文件:使用vim打开mysqld.cnf文件。路径通常为:
vim /etc/mysql/mysql.conf.d/mysqld.cnf。 - 修改bind-address:找到
bind-address = 127.0.0.1,将其改为bind-address = 0.0.0.0,允许监听所有IPv4接口。 - 修改port(可选):默认端口为3306。若因安全原因需要更换端口(例如改为3388),将
port = 3306改为port = 3388。注意:若修改了非标准端口,客户端连接时需指定该端口号。 - 保存退出:按下 ESC 键,输入
:wq保存并退出。 - 重启服务:执行
sudo systemctl restart mysql.service使配置生效。
开启远程访问权限
仅修改配置文件允许监听是不够的,还需要在MySQL内部授权允许特定的用户从特定主机访问。
具体操作:
- 登录数据库:执行
mysql -u root -p,输入之前设置的Root密码进入命令行界面。 - 切换到mysql库:执行
use mysql;。 - 刷新权限:为了确保之前的安全脚本中删除匿名用户等操作生效,可以再次执行
flush privileges;。 - 授予远程访问权:执行以下SQL语句,允许root用户在任意主机(%)连接,拥有所有权限:
grant all privileges on *.* to 'root'@'%' identified by 'your_password' with grant option;
flush privileges;
- 注意:'your_password'需替换为你实际设置的MySQL密码。虽然原教程提到先删除匿名用户,但在MySQL 8.0+版本中用户管理逻辑有所变化,直接授予 '%' 主机的root权限通常足以实现远程访问。若出现权限错误,请检查User表中是否存在冲突记录。
- 退出并重启:输入
exit退出数据库,然后再次重启服务:sudo service mysql restart。
完成以上步骤后,即可使用Navicat、DBeaver等远程客户端工具,通过服务器的IP地址、新设定的端口(如有修改)及Root账号连接MySQL数据库。
以上就是Ubuntu 18.04安装MySQL并配置远程访问的详细内容,更多关于Ubuntu安装MySQL的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













