如何从另一台计算机连接到本地主机

6

我制作了一个数据库程序,并使用本地主机作为主机。我希望我的朋友可以测试我的程序,但是我不知道如何从另一台计算机连接。

附注:我使用的是Windows 7和MySQL。


1
你尝试过什么了吗? - Manoj Purohit
4个回答

7

localhost只是回送地址127.0.0.1的别名,意味着它指向“本机”。

如果您想从“其他地方”与该计算机通信,则需要使用其真实的IP地址。

例如,查看以下显示连接将根据使用的IP地址而定的“图表”:

    +-----------+ 10.1.1.8 +-----------+
    | MyPC      | <------- | YourPC    |
    |           |          |           |
    | 10.1.1.8  | -------> | 10.1.1.9  |
    +-----------+ 10.1.1.9 +-----------+
      |       ^              |       ^
      |       |              |       |
    127.0.0.1-+            127.0.0.1-+

在Windows中,您可以使用ipconfig(UNIX类型系统下使用ifconfig)获取您的IP地址,并将其插入到当前具有localhost的连接参数中。

请记住,您可能仍然需要授予远程IP地址连接权限,例如(假设您正在尝试从10.1.1.8连接):

GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'10.1.1.8' IDENTIFIED BY 'super-sekrit'

我可以在命令提示符中输入ipconfig来获取我的IP地址,然后将我的IP地址放入连接字符串中(SERVER = 我的IP地址),对吗? - aratn0n
@aratn0n,是的,请在运行服务器的计算机上执行此操作,然后配置其他计算机使用该设置。 - paxdiablo
当我启动程序时,我将连接参数更改为我的IP地址。它说主机“我的IP”不允许连接到这个MySQL服务器。 - aratn0n
@aratn0n,那是一个不同的问题,可能需要配置您的SQL服务器或防火墙等。例如,请参见https://dev59.com/nFbUa4cB1Zd3GeqPDO6i,在此处您需要授予远程IP地址(您用于连接到服务器的IP地址)权限。我将更新答案。 - paxdiablo
除了paxdiablo的观点之外,你的朋友是和你在同一个网络上还是在不同的位置?如果你在路由器后面,它会为你创建一个内部子网(192.168.1.x很常见),你需要向他提供你的公共IP地址。谷歌搜索“我的IP是什么”,它会告诉你。 - Grambot

2

两台计算机是否在同一网络上?如果是,则只需向您的朋友提供局域网IP地址即可。但是,如果您在互联网上并且没有被NAT防火墙保护,则可以向他提供您的公共IP地址。如果您处于NAT路由器后面,则必须在您的路由器上设置端口转发。


1
我们在大学使用同一个互联网(WiFi),但不同的地方和连接。这会是相同的连接吗? - aratn0n
1
请检查您的网络和连接下的IP地址,然后再检查他的IP地址。您还可以运行“cmd”,然后运行“ipconfig”。它会告诉您您的IP地址。只需将其提供给您的朋友以尝试连接即可。由于您使用相同的WiFi路由器,所以这不应该是一个大问题。 - Hanky Panky

1
你是指连接到你的程序还是数据库?你可以用IP地址替换"localhost",这样你的程序就可以从另一台计算机访问了。

连接到我的程序,我使用C#。 - aratn0n
在朋友的电脑上ping你的IP地址,以确保他/她可以访问你。 如果有必要,您可能需要telnet端口。 - spiritwalker

0

本地主机是回环网络接口地址的标准主机名。用于两台计算机之间的通信:

  • 使用您系统的IP地址。
  • 首先确保您的系统可以从朋友的电脑上ping通。
  • 确保应用程序监听的相应端口是开放的。

我怎样才能检查我的朋友是否可以连接到我的电脑? - aratn0n
在你朋友的系统中,打开命令提示符 > 输入ping "你的IP地址"。 查看响应。 - Shurmajee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接