SQLAdmin远程管理Linux上的数据库的正确做法
一、概念澄清
- SQLAdmin通常是用于管理MySQL的Web界面工具(类似 phpMyAdmin 的轻量方案),它并不直接“远程管理Linux系统”,而是通过浏览器连接到Linux服务器上运行的数据库服务(如 MySQL),实现对数据库的远程管理。若你的目标是管理数据库,请按下方步骤配置;若需要管理操作系统,请使用SSH等系统运维工具。
二、两种常见部署与连接方式
三、数据库侧必须完成的配置
- 允许远程连接(以MySQL为例)
- 编辑配置文件:/etc/mysql/mysql.conf.d/mysqld.cnf,将bind-address设为0.0.0.0(或注释掉该行),保存后重启服务(sudo systemctl restart mysql)。
- 创建远程管理用户并授权
- 登录数据库后执行:CREATE USER ‘sqladmin’@‘%’ IDENTIFIED BY ‘强密码’;
GRANT ALL PRIVILEGES ON . TO ‘sqladmin’@‘%’;
FLUSH PRIVILEGES;
- 为提升安全性,可将’%‘替换为具体来源IP/网段(如’192.168.1.%’)。
- 防火墙与云安全组
- 若采用方式A且数据库端口对外开放,需放行3306/tcp;若采用方式B,则无需放行数据库端口,仅放行SSH 22/tcp即可。
四、安全与排错要点
- 优先选择方式B(SSH隧道)或至少将SQLAdmin置于反向代理+HTTPS之后,避免数据库端口直接暴露公网;为管理账户设置最小权限与强口令,并定期更新系统与组件。
- 无法连接时,按顺序排查:1)数据库是否允许远程(bind-address、用户host、权限);2)本机/云安全组与防火墙是否放行对应端口;3)隧道是否建立成功(本地能否连127.0.0.1:3307);4)SQLAdmin配置文件中主机、端口、用户名、密码是否正确。