我是如何通过phpMyAdmin上的localhost访问主机/服务器的?

时间:2013-11-18 04:23:52

标签: mysql sql database phpmyadmin


我正在开展一个学校项目,我必须将数据上传到phpMyAdmin上托管的数据库。

我现在感到困惑的是,我在页面顶部看到“localhost”,在我查询数据库之前,我看到“在服务器上运行SQL查询/查询”localhost“:”

这是否意味着我在我的计算机上托管服务器并通过它访问数据库?因为那时我查询“SHOW VARIABLES WHERE Variable_name ='hostname';”并返回hostname = webhost330。 (它托管在webhost330.asu.edu上)。

我对这意味着什么非常困惑。感谢您提供任何可能的帮助。

我对数据库很陌生,所以请原谅我,如果我在这里错过了一些简单的东西。

编辑:澄清:我不在学校,我在家。这有什么影响?换句话说,这与本地托管数据库有什么区别?

当我通过My​​SQL命令行客户端在我的计算机上托管数据库时,我可以创建数据库信息,并将其存储在我的计算机上的文件中。这是否意味着它最初存储在localhost上,然后该数据用于在我的计算机上创建文件?

然后,与webhost330相同的是localhost最初存储数据库,然后将其上传到phpMyAdmin的主机?这是我最困惑的主要事情。

3 个答案:

答案 0 :(得分:3)

这恰恰意味着你的假设。连接到localhost时,您将连接到同一台计算机上的本地MySQL服务器。如果这不是您自己的计算机的名称,则使用webhost330....连接到该远程MySQL服务器实例。您自己的服务器可以是webhost30.etcetc

修改

如果您的网站位于此处:webhost330.asu.edu,那么MySQL主持人webhost330.asu.edulocalhost两者的意思相同 本地 你机器上的MySQL服务器。

根据您的更新进行修改

如果您在家,则localhost表示您已连接到您自己的计算机上安装的MySQL服务器。和webhost30.etc.etc表示您已连接到学校的数据库。数据库确实允许远程连接,如果你从家里连接到学校,这是一个远程MySQL连接。

要消除您的困惑,您应该只在代码中使用localhost。家中的localhost表示开发服务器是您的家用计算机,当您将相同的代码用于webhost30.etc.etc时,该服务器的localhost将表示其自己的MySQL安装。因此,只要您不希望代码连接到远程外部MySQL数据库服务器,localhost就可以在任何地方使用。

答案 1 :(得分:1)

假设你在学校,并假设你在学校网络上。然后是的,你的机器可能是“webhost330.asu.edu”。至少webhost330.asu.edu认为“webhost330.asu.edu”是localhost。

答案 2 :(得分:1)

要查看“localhost”在MySQL服务器方面的含义,您必须查看用于连接Web服务器的URL。

例如,如果网址为

http://localhost/phpmyadmin

这个phpMyAdmin实例告诉我MySQL服务器在localhost上,这意味着MySQL服务器在我的本地工作站上。

如果URL为http://example.com/phpmyadmin,则localhost将表示MySQL服务器位于同一台计算机上(example.com)。