Go SQL パッケージを使用して Spanner Omni に接続する

Go SQL パッケージは、Go プログラミング言語の SQL(または SQL に似た)データベースを扱う汎用インターフェースです。Go SQL パッケージ用の Spanner ドライバを使用すると、この標準インターフェースを使用して Spanner データベースを操作できます。

このドキュメントでは、Spanner Omni に接続するように Go SQL パッケージのドライバを構成する方法について説明します。このドライバは、Spanner と同様に Spanner Omni で動作し、GoogleSQL と PostgreSQL の両方のデータベース言語をサポートしています。

前提条件

Go SQL パッケージを使用して Spanner Omni に接続するには、次の要件を満たしていることを確認してください。

  • Go SQL パッケージの バージョン 1.23.0 以降を使用します。

  • アプリケーションでドライバを使用するには、次のモジュールを go.mod ファイルに追加します。

    go get github.com/googleapis/go-sql-spanner
    

接続を確立する

Spanner Omni との接続を確立するには、次のいずれかのコマンドを実行します。

平文による通信

平文通信チャネルを確立するには、次のコマンドを実行します。

db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?use_plain_text=true;is_experimental_host=true")

TLS 接続

安全な TLS 接続を確立するには、次のコマンドを実行します。

db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?ca_cert_file=PATH_TO_CA_CRT;is_experimental_host=true")

mTLS 接続

相互 TLS(mTLS)接続を確立するには、次のコマンドを実行します。

db, err := sql.Open("spanner", "ENDPOINT/databases/DATABASE_ID?ca_cert_file=PATH_TO_CA_CRT;client_cert_file=PATH_TO_CLIENT_CRT;client_cert_key=PATH_TO_CLIENT_KEY;is_experimental_host=true")