访问的数据库服务器是客户端的数据库连接

时间:2017-11-21 08:46:08

标签: mysql database angular spring-boot

我正在尝试设置一个本地服务器进行测试,我打算主持以下内容:

  1. 后端应用程序的Spring-Boot应用程序(端口:8080)
  2. 前端应用程序的Angular 4应用程序(端口:4200)
  3. 数据库的MySql数据库(端口:3306)
  4. 当我尝试使用本地服务器进行测试时,一切正常。 当我尝试从另一台PC访问服务器时,会出现此问题。我似乎无法通过我的前端应用程序从另一台PC访问服务器的MySql数据库。

    问题:

    1. 使用服务器进行访问:

      localhost:4200/login - able to login (connects to the server's MySql DB)
      
    2. 使用其他PC访问:

      192.168.179.18:4200/login -unable to login (connects to the other PC's MySql DB)
      NOTE: 192.168.179.18 is the server's IP address.
      
    3. 当我尝试从另一台PC访问前端应用程序时,它似乎正在尝试连接到其他PC的本地MySql数据库。

      如何配置这个以便我访问服务器的位置,它将访问服务器的MySql数据库?

      顺便说一句,我的application.properties看起来像这样:

      spring.datasource.url=jdbc:mysql://localhost:3306/my_app_database
      spring.datasource.driver-class-name=com.mysql.jdbc.Driver
      spring.datasource.username=root
      spring.datasource.password=root
      spring.jpa.database=mysql
      spring.jpa.hibernate.ddl-auto=none
      

1 个答案:

答案 0 :(得分:0)

我找到了原因和解决方案。事实证明,在FrontEnd App中,它是硬编码连接到localhost:8080所以无论我在哪里访问它,它都会尝试找到localhost:8080。当我测试这个时,我在另一台PC上运行后端应用程序(端口8080),这就是它访问其他PC的MySql数据库的原因。

我所做的是将硬编码的localhost:8080更改为192.168.179.18:8080,以便它与我服务器上的后端应用程序进行通信。