このトピックでは、PHPクライアントをOracleと互換性のあるPolarDBクラスターに接続する方法について説明します。
前提条件
PolarDBクラスターのアカウントが作成されました。 詳細については、「データベースアカウントの作成」をご参照ください。
PolarDBクラスターに接続するホストのIPアドレスがクラスターのホワイトリストに追加されます。 詳細については、「クラスターのホワイトリストの設定」をご参照ください。
Windowsで環境を準備する
WampServerをダウンロードしてインストールします。 詳細については、「WampServer公式Webサイト」をご参照ください。
PostgreSQLプラグインを起動します。
php.ini
ファイルを変更します次のコードから
;
セミコロンを削除します。セミコロンを削除する前に:
;extension=php_pgsql.dll ; extension=php_pdo_pgsql.dll
セミコロンを削除した後:
extension=php_pgsql.dll extension=php_pdo_pgsql.dll
libpq.dll
ファイルをC:\wamp\bin\php\php5.6.40ディレクトリからC:\windows\system32\ ディレクトリにコピーします。 注: この例ではphp5.6.40が使用されており、実際のディレクトリはクライアントのバージョンに従います。Apacheサービスを再起動します。
Linuxで環境を準備する
php-pgsql.x86_64
ドライバーをインストールします。sudo yum install php-pgsql.x86_64
php.ini
ファイルを変更します。vim /etc/php.ini
php.ini
ファイルに次のコンテンツを追加します。extension=php_pgsql.so
Apsara PolarDBへの接続
WindowsまたはLinuxで環境を準備した後、PHPスクリプトを実行してApsara PolarDBデータベースに接続できます。
次のサンプルコードは、PHPを使用してApsara PolarDBクラスターに接続する方法を示しています。
<? php
$host = "host=xxxx";
$port = "port=xxxx";
$dbname = "dbname=xxxx";
$credentials = "user=xxxx password=xxxxx";
$db = pg_connect( "$host $port $dbname $credentials" );
if(! $db){
echo "Error : Unable to open database\n";
} else {
echo "Opened database successfully\n";
}
$sql =<<<EOF
select * from pg_roles;
EOF;
$ret = pg_query($db, $sql);
if(! $ret){
echo pg_last_error($db);
} else {
echo "Records created successfully\n";
}
$results = pg_fetch_all($ret);
print_r($results);
pg_close($db);
? >
上記のサンプルコードでは、Apsara PolarDBの接続情報は、次の表に示すように、host
、port
、dbname
、credentials
などのパラメーターで構成されています。
パラメーター | 例 | 説明 |
host |
| Apsara PolarDBクラスターのエンドポイント。 エンドポイントを取得する方法の詳細については、「エンドポイントの表示または申請」をご参照ください。 |
port |
| Apsara PolarDBクラスターのポート。 デフォルト値:1521 |
dbname |
| 接続するデータベースの名前です。 |
credentials |
| Apsara PolarDBクラスターへのログインに使用されるユーザー名とパスワード。 |
PHP APIの詳細については、「PHPドキュメント」をご参照ください。