异地 mysql 访问

异地 mysql 访问

我正在将我的 mysql 数据库移出现场,并且大多数情况下,在同一网络上的单独服务器上运行的 Web 应用程序(供私人使用)都需要访问它。因此,从我所读到的来看,mysql 数据库最好只能通过网络访问,而不暴露给外界。但是,我目前正在使用我编写的 excel 插件访问数据库(以只读方式),我想继续这样做。最好的方法是什么?

我喜欢 MySQL 代理的想法,它位于本地服务器上,通过 ssh 隧道安全地访问到 webapp 服务器的数据库,但是“MySQL 代理”仍然处于 alpha 阶段,因此它似乎并不理想。

我可以让每个客户端手动打开一个 SSH 隧道,但这对 Excel 插件的其他用户来说太不方便了。

我可以设置 VPN,但这似乎有点小题大做……也许不是?

有任何想法吗?

答案1

您需要查看三件事:

  1. 在 MySQL 中确保您正确设置了 GRANT,以便每个用户都有正确的访问权限、受密码保护,并且只能从有限的 IP 地址访问:GRANT SELECT、INSERT、UPDATE、DELETE ON database。* TO'user1'@'ip.add.re.ss' IDENTIFIED BY'PASSWORD';
  2. 设置防火墙,将对端口 3306 的访问限制为您信任的 IP 地址。
  3. 查看 SSL 加密会话:http://dev.mysql.com/doc/refman/5.0/en/secure-connections.html您可以设置 GRANT 来要求 SSL 连接。

相关内容