Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menyambung ke Pangkalan Data MySQL Jauh melalui SSH Tunneling di Java?

Bagaimana untuk Menyambung ke Pangkalan Data MySQL Jauh melalui SSH Tunneling di Java?

Patricia Arquette
Lepaskan: 2024-11-29 10:28:11
asal
684 orang telah melayarinya

How to Connect to a Remote MySQL Database via SSH Tunneling in Java?

Mewujudkan Sambungan MySQL Jauh melalui SSH dalam Java

Mewujudkan sambungan ke pangkalan data MySQL jauh melalui SSH daripada aplikasi Java boleh dicapai dengan memanfaatkan gabungan terowong SSH dan JDBC. Begini cara anda boleh melakukannya:

Terowong SSH

  1. Pada mesin tempatan anda, sediakan terowong SSH untuk memajukan port 1234 pada mesin anda ke port 3306 pada pelayan MySQL jauh. Untuk melakukan ini menggunakan klien baris arahan SSH, jalankan: ssh -L 1234:localhost:3306 mysql.server.remote
  2. Gunakan perpustakaan JSch Java untuk mencipta sesi SSH yang memajukan port 1234 ke pelayan jauh.

JDBC Sambungan

Setelah terowong SSH ditubuhkan, anda boleh menggunakan JDBC untuk menyambung ke pangkalan data MySQL:

  1. Buat objek java.sql.Connection, menyatakan URL JDBC sebagai jdbc:mysql://localhost:1234/[database].
  2. Sahkan dengan kelayakan MySQL anda dan teruskan dengan operasi pangkalan data anda.

Contoh Kod

Berikut ialah contoh kod asas untuk menunjukkan sambungan:

import com.jcraft.jsch.*;
import java.sql.*;

public class ConnectToRemoteMySQLThroughSSH {

   public static void main(String[] args) throws JSchException, SQLException {
      // SSH Session Setup
      JSch jsch = new JSch();
      Session session = jsch.getSession("username", "host", 22);
      session.setConfig("StrictHostKeyChecking", "no");
      session.setPassword("password");
      session.connect();

      // Port Forwarding
      session.setPortForwardingL(1234, "localhost", 3306);

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

      // Database Operations...

      connection.close();
      session.disconnect();
   }
}
Salin selepas log masuk

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

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan