2014-12-22 3 views
2

안녕하세요 저는 현재 사용자를 mysql 데이터베이스에 등록하는 프로그램을 작성 중입니다. 모든 것은 localhost에서 잘 작동하지만 외부 데이터베이스에 연결하려고하면 아래와 같은 오류가 발생합니다.Java를 외부 mysql 데이터베이스에 연결할 수 없습니다.

enter image description here

나는 내가 ACESS 또한 내가 드라이버를 설치하려고 데이터베이스에 사용자에게 모든 권한을 부여했다. 어떤 아이디어?

내 코드 :

private void createEventListenerDBProperties() { 
     dbSubmitBtn.addActionListener((ActionEvent e) -> { 
       if (dbDriverChooser.getSelectedItem().equals("com.mysql.jdbc.Driver")) { 
        driver = (String) dbDriverChooser.getSelectedItem(); 
        port = dbPortField.getText(); 
        host = "jdbc:mysql://" + hostField.getText() + ":" + port + "/"; 
        db = dbnameField.getText(); 
        dbuser = dbUsernameField.getText(); 
        dbpassword = new String(dbPasswordField.getPassword()); 
       } 
      } 
     }); 
    } 

    private Connection instanciateDB() { 
     Connection con = null; 
     try { 
      Class.forName(driver); 
      con = DriverManager.getConnection(host + db, dbuser, dbpassword); 
      System.out.println("Connection Established"); 
     } catch (ClassNotFoundException | SQLException e) { 
      System.out.println("Connection not Established"); 
      JOptionPane.showMessageDialog(Project2.this, e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); 
     } 
     return con; 
    } 
+0

원하는 포트에서 원격 호스트에 대한 연결을 확인해야합니다. 원격 포트 –

+0

에 telnet을 시도해보십시오. 2 개의 포트에서 같은 오류가 발생했습니다. 지금 당장 점검 했으므로 두 포트 모두 3306과 3536 모두에서 사용할 수 있습니다. 이유는 생각하지 않습니다. –

+1

일반적인 mysql 구성은 종종 사용자 이름 @ mysql은 사용자가 원격 주소에서 접속하는 것을 허용하지 않으므로'username @ *'을 설정했는지 확인하십시오. 즉, 표시되는 오류는 tcp ip 문제를 나타내는 것이기 때문에 명령 프롬프트에서'telnet [your host] 3306'을 실행하면 (dos 또는 * nix가 작동합니다) 연결할 수 있는지 확인하십시오. (로컬 앱이 원격 mysql에 연결하는) 모델은 일반적으로 권장되지 않습니다. 이러한 유형의 연결은 암호화되지 않으며 일반적으로 신뢰할 수있는 네트워크 (예 : LAN)에서만 발생해야합니다. – Taylor

답변

1

나는 연결하는 당신의 방법이 잘못 생각합니다. 대신이의 :

con = DriverManager.getConnection(host + db, dbuser, dbpassword); 

이 시도 :

con = DriverManager.getConnection(host + db + "?user=" + dbuser + "&password=" +dbpassword); 

확인이 밖으로, 그것은 유용 할 수 있습니다.

관련 문제