Spanner PostgreSQL 言語データベースでは、PostgreSQL JDBC ドライバと Spanner JDBC ドライバの両方を使用できます。このページでは、これらのドライバのいずれかを使用してデータベースに接続する方法について説明します。
PostgreSQL JDBC ドライバ
このセクションでは、PostgreSQL JDBC ドライバを Spanner の PostgreSQL 言語データベースに接続する方法について説明します。JDBC は PostgreSQL の標準 Java ドライバです。
PostgreSQL JDBC ドライバを使用するには、PGAdapter を使用して PostgreSQL ネットワーク プロトコルと Spanner ネットワーク プロトコルの変換を行う必要があります。PGAdapter を依存関係として追加し、アプリケーションを使用してプロセス内で実行できます。
1. PGAdapter と PostgreSQL JDBC ドライバを依存関係としてアプリケーションに追加します。 2. アプリケーションで PGAdapter を処理中に開始します。OptionsMetadata.Builder builder = OptionsMetadata.newBuilder() .setProject("my-project") .setInstance("my-instance") // Set the port to 0 to use a dynamically assigned port. .setPort(5432); ProxyServer server = new ProxyServer(builder.build()); server.startServer(); server.awaitRunning();
localhost
と 5432
を指定します。
// Make sure the PG JDBC driver is loaded. Class.forName("org.postgresql.Driver"); // Replace localhost and 5432 with the host and port number where PGAdapter is running. try (Connection connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/my-database")) { try (ResultSet resultSet = connection.createStatement().executeQuery("select 'Hello world!' as hello")) { while (resultSet.next()) { System.out.printf( "Greeting from Cloud Spanner PostgreSQL: %s\n", resultSet.getString(1)); } } }
PGAdapter GitHub リポジトリには、完全なサンプル アプリケーションが含まれています。
Spanner JDBC ドライバ
このセクションでは、Spanner JDBC ドライバを使用して PostgreSQL 言語データベースに接続する方法について説明します。
1. Spanner JDBC ドライバを依存関係としてアプリケーションに追加します。 2. Spanner JDBC 接続 URL を使用して PostgreSQL 言語データベースに接続します。try (Connection connection = DriverManager.getConnection( "jdbc:cloudspanner:/projects/my-project/instances/my-instance/databases/my-database")) { try (ResultSet resultSet = connection.createStatement().executeQuery("select 'Hello world!' as hello")) { while (resultSet.next()) { System.out.printf( "Greeting from Cloud Spanner PostgreSQL: %s\n", resultSet.getString(1)); } } }
ドライバは、指定されたデータベースの SQL 言語を自動的に検出します。接続 URL の言語パラメータは必須ではありません。
次のステップ
- PGAdapter について詳細を確認する。
- PGAdapter GitHub リポジトリの PGAdapter - JDBC 接続オプションで、PostgreSQL JDBC ドライバの接続オプションの詳細について確認する。