問題ステートメント:
リモートでホストされている MySQL データベースへのアクセスJava からの安全な SSH トンネルを使用するサーバーapplication.
解決策:
SSH トンネルを確立し、Java からリモート MySQL データベースに接続するには、JSch ライブラリを利用できます。これを実現する方法の概要は次のとおりです。
JSch セッション クラスを使用して、ローカルからトンネルを作成します。ポート (例: 1234) をリモートのデータベースのポート (例: 3306) に接続します。
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();
SSH トンネルがアクティブな場合、MySQL への JDBC 接続を確立できます。作成したローカル ポートを使用したデータベース。
import java.sql.Connection; import java.sql.DriverManager; // Establish a JDBC connection Connection connection = DriverManager.getConnection( "jdbc:mysql://localhost:1234/[database]", "username", "password" );
例使用法:
// Example usage: retrieve data from the remote database Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name");
以上がSSH トンネリングを使用して Java からリモート MySQL データベースに安全に接続する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。