Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyambung dengan Selamat ke Pangkalan Data MySQL Jauh dari Java menggunakan SSH Tunneling?

Bagaimana untuk Menyambung dengan Selamat ke Pangkalan Data MySQL Jauh dari Java menggunakan SSH Tunneling?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-29 05:11:15495semak imbas

How to Securely Connect to a Remote MySQL Database from Java using SSH Tunneling?

Menyambung ke Pangkalan Data MySQL Jauh melalui SSH dalam Java

Pernyataan Masalah:

Mengakses pangkalan data MySQL yang dihoskan pada alat kawalan jauh pelayan menggunakan terowong SSH selamat dari Java aplikasi.

Penyelesaian:

Untuk mewujudkan terowong SSH dan menyambung ke pangkalan data MySQL jauh dari Java, anda boleh memanfaatkan perpustakaan JSch. Berikut ialah gambaran keseluruhan cara untuk mencapai ini:

  1. Buat Terowong SSH:

Gunakan kelas Sesi JSch untuk mencipta terowong daripada tempatan port (cth., 1234) ke port pangkalan data (cth., 3306) pada alat kawalan jauh pelayan.

import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;

// Establish an SSH session
JSch jsch = new JSch();
Session session = jsch.getSession("username", "remoteServerAddress", 22);

// Set connection parameters
session.setPassword("password");
session.setPortForwardingL(1234, "localhost", 3306);

// Connect to the SSH server
session.connect();
  1. Tubuhkan Sambungan JDBC ke MySQL:

Dengan terowong SSH aktif, anda boleh mewujudkan sambungan JDBC ke MySQL pangkalan data menggunakan port tempatan yang anda buat.

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

// Establish a JDBC connection
Connection connection = DriverManager.getConnection(
  "jdbc:mysql://localhost:1234/[database]", 
  "username", 
  "password"
);

Contoh Penggunaan:

// Example usage: retrieve data from the remote database
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name");

Atas ialah kandungan terperinci Bagaimana untuk Menyambung dengan Selamat ke Pangkalan Data MySQL Jauh dari Java menggunakan SSH Tunneling?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn