我们大家都知道MySQL(和PHP搭配之***组合)开发者们研究出了能够连接本地或是远程MySQL GUI工具。以下的文章就是对远程使用MySQL GUI工具德详细内容描述,希望会给你带来一些帮助在此方面。
这些工具包括MySQL(和PHP搭配之***组合)管理员(MySQL(和PHP搭配之***组合) Administrator),MySQL(和PHP搭配之***组合) Query浏览器(MySQL(和PHP搭配之***组合) Query Browser)以及MySQL(和PHP搭配之***组合) 工作台(MySQL(和PHP搭配之***组合) Workbench)等,都是相当出色的能够轻松操作和创建MySQL(和PHP搭配之***组合)数据库的图形化工具。
使用这些工具操作远程数据库时有一个问题,它们经常要求MySQL(和PHP搭配之***组合) 在网络界面进行响应;大部分MySQL(和PHP搭配之***组合)管理员只允许MySQL(和PHP搭配之***组合)对localhost或socket进行响应,而拒绝远程连接。这是一种非常有效的安全措施;
但是在这种情况下,如果不施展一些手段就无法远程使用这些MySQL GUI工具。在这种情况下,使用ssh来暗中进行连接是一个非常不错的方法。因为这样做不仅能够进行很严格的认证和加密,同时还不会破坏只允许MySQL(和PHP搭配之***组合)相应本地连接的规则。
首先,要使MySQL(和PHP搭配之***组合)只响应localhost(在默认情况下,MySQL(和PHP搭配之***组合)只响应对连接本地socket的要求),需要调整设置让MySQL(和PHP搭配之***组合)允许网络连接,然后重启服务器。MySQL(和PHP搭配之***组合)应该只响应loopback上的连接,或者本地及网络界面上的连接。
然后,编辑发出连接要求的主机上的 ~/.ssh/config文件,然后插入以下内容:
- Host remotesql
- ?Hostname webserver.domain.com
- ?User joe
- ?LocalForward *:13306 localhost:3306
这样就会以用户joe的身份连接到webserver.domain.com,并将本地系统上13306端口推送到 webserver.domain.com上的3306端口(标准MySQL(和PHP搭配之***组合)端口)。请注意,我们并没有将推送端口限制在本地设备的本地界面上,而是针对全部界面;
也就是说我们能够连接到me.domain.com端口13306(假设me.domain.com是本地工作站的名称),除了连接本地主机端口13306(这点非常重要,因为MySQL GUI工具将会尝试通过socket连接localhost,而这是我们所不希望发生的)。现在可以执行以下命令来启动连接。
- $ ssh -f -N remotesql
***,启动MySQL(和PHP搭配之***组合)管理器,让其使用你的信用状与13306端口上的me.domain.com进行连接。如果出现"访问被拒绝“的错误,请检查远程数据库上的许可信息。为了进行正确的连接,可能必须对user@localhost.localdomain进行许可。
这样就可以实现通过本地网络上的任一系统(除非防火墙的规则禁止使用本地设备)跨过互联网进行安全的连接,这样就可以通过以下操作通过本地MySQL(和PHP搭配之***组合) 命令语句来对远程数据库进行操作:
- $ MySQL(和PHP搭配之***组合) -u root -p -h me.domain.com -P 13306
以上的相关内容就是对MySQL GUI工具的介绍,望你能有所收获。
【编辑推荐】