Tôi hiểu là bạn muốn truy cập một máy chủ mysql đang chạy trên một máy từ xa và nghe trên cổng 3306 giả sử thông qua một đường hầm SSH.
Để tạo một đường hầm như vậy từ cổng 1234 trên máy cục bộ của bạn đến cổng 3306 trên một máy từ xa bằng máy khách ssh dòng lệnh, bạn sẽ nhập lệnh sau từ máy cục bộ của mình:
ssh -L 1234:localhost:3306 mysql.server.remote
Để làm điều tương tự từ Java, bạn có thể sử dụng JSch , một triển khai Java của SSH2. Từ trang web của nó:
JSch cho phép bạn kết nối với máy chủ sshd và sử dụng chuyển tiếp cổng, chuyển tiếp X11, truyền tệp, v.v. và bạn có thể tích hợp chức năng của nó vào các chương trình Java của riêng mình. JSch được cấp phép theo giấy phép kiểu BSD.
Ví dụ:hãy xem PortForwardingL.java
. Sau khi phiên được kết nối, hãy tạo kết nối JDBC của bạn với MySQL bằng cách sử dụng jdbc:mysql://localhost:1234/[database]
dưới dạng URL kết nối.