> 데이터 베이스 > MySQL 튜토리얼 > Java를 사용하여 SSH 터널을 통해 원격 MySQL 데이터베이스에 안전하게 연결하는 방법은 무엇입니까?

Java를 사용하여 SSH 터널을 통해 원격 MySQL 데이터베이스에 안전하게 연결하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-06 07:02:11
원래의
156명이 탐색했습니다.

How to Securely Connect to a Remote MySQL Database via SSH Tunnel using Java?

Java를 사용하여 SSH를 통해 MySQL 연결 설정: 종합 가이드

소개:

Java에서 SSH 터널을 통해 원격 MySQL 데이터베이스에 연결하면 데이터베이스에 안전하게 액세스할 수 있습니다. 시작하는 데 도움이 되는 단계를 자세히 살펴보고 간결한 코드 예제를 제공하겠습니다.

연결 단계:

SSH를 통해 원격 MySQL 데이터베이스에 연결하려면 다음을 따르세요. 단계:

  1. SSH 만들기 터널:

    • SSH 명령줄 클라이언트를 사용하여 로컬 포트(예: 1234)에서 대상 서버의 MySQL 포트(예: 3306)로 터널을 만듭니다.
    • 다음을 실행하세요 명령:

      ssh -L 1234:localhost:3306 mysql.server.remote
      로그인 후 복사
  2. Java JDBC 연결 설정:

    • JSch 사용 SSH2, SSH 세션을 설정하고 연결을 포트 전달합니다. 데이터베이스.
    • 구현 세부 정보는 PortForwardingL.java 예제를 참조하세요.
  3. MySQL에 연결:

    • JDBC를 사용하여 데이터베이스에 연결합니다. 구문:

      jdbc:mysql://localhost:1234/[database]
      로그인 후 복사

예제 코드 조각:

다음 코드 조각은 JSch 및 Java를 사용하는 원격 MySQL 데이터베이스 JDBC:

import java.sql.Connection;
import java.sql.DriverManager;

public class RemoteMySQLConnection {

    public static void main(String[] args) throws Exception {
        // Create SSH session
        JSch jsch = new JSch();
        Session session = jsch.getSession("username", "hostname", 22);

        // Set SSH and tunnel parameters
        session.setConfig("StrictHostKeyChecking", "no");
        session.setPortForwardingL(1234, "localhost", 3306);
        
        // Connect SSH session
        session.connect();

        // Establish JDBC connection
        String url = "jdbc:mysql://localhost:1234/database_name";
        String user = "mysql_user";
        String password = "mysql_password";
        Connection conn = DriverManager.getConnection(url, user, password);

        // Execute queries or perform operations on the database
        // ...

        // Close SSH session and database connection
        conn.close();
        session.disconnect();
    }
}
로그인 후 복사

코드 조각에서 실제 데이터베이스 자격 증명과 서버 정보를 대체해야 합니다.

위 내용은 Java를 사용하여 SSH 터널을 통해 원격 MySQL 데이터베이스에 안전하게 연결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿