本文へジャンプします。

ニフクラ 技術仕様

RDB:PostgreSQL

RDBでは、PostgreSQL DBエンジンを利用可能です。

DBサーバーやDBスナップショット、リードレプリカを作成したり、ポイントインタイムリカバリーや自動・手動によるバックアップを行ったりすることもできます。

また、SSL接続を利用して DBサーバーへ接続することもできます。

PostgreSQLのクライアントであればどんなものでもDBサーバー上のデータベースへアクセスすることができます。
オープンソースのPostgreSQL用管理・開発ツールであるpgAdminや、PostgreSQL本体に含まれるpsqlコマンドなどを利用することができます。

Telnet・SSH・Windows のリモートデスクトップ接続による接続はできません。

お客様には「マスターユーザー」と呼ばれる接続用のユーザーが発行され、RDBが管理のために使う権限以外は、ほぼすべての権限が付与されます。

利用可能なバージョン9.3.4 / 9.6.5

現状、マイナーメジャーバージョンアップ・メジャーバージョンアップはサポートされていません。

文字コード

PostgreSQL DBサーバーのデフォルトの文字コードは、UTF-8です。

文字コードのオプションを指定せずに作成した場合、下記のような設定となります。
オプションを指定することで下記の設定を上書きすることが可能です。

エンコーディングUTF8
照合順序en_US.UTF-8
Ctype(変換演算子)en_US.UTF-8

また、server_encoding、client_encodingは、DBパラメーターグループで下記のように設定されています。
server_encodingについては、独自のDBパラメーターグループを作成し、値を変更することが可能です。

パラメーター名変更
client_encodingUTF8不可
server_encodingUTF8可能

タイムゾーン

「お客様に発行されるマスターユーザーのタイムゾーン」 および「マスターユーザーが作成したユーザーのタイムゾーン」は、デフォルトではUTCに設定されています。
"alter role"文を発行することにより、任意のタイムゾーンに変更することができます。

なお、RDBが利用する管理ユーザー(rdbadmin、rdbrepladmin)のタイムゾーンを変更した場合、動作に不具合が出る場合がありますのでご注意ください。

エクステンション

エクステンションを使用すると、コマンドを入力するだけでバンドルされたデータ型や関数をインストールすることができます。

RDBにて動作確認済みのPostgreSQLエクステンション一覧
拡張機能名9.3で利用可9.6で利用可機能概要
bloom   ブルームフィルターによるインデックスのアクセスメソッドを提供します。
btree_gin いくつかのデータ型に対し、B-treeと同等な動作を実装するGIN演算子クラスを提供します。
btree_gist B-treeと同等な動作を実装するGiSTインデックス演算子クラスを提供します
chkpass 暗号化したパスワードを格納するために設計されたデータ型を提供します。
citext 大文字小文字の区別がない文字列のデータ型を提供します。
cube 多次元立体を表現するためのデータ型を提供します。
dblink データベース・セッション内から、ほかのPostgreSQLデータベースへ接続することができます。
dict_int 全文検索のための辞書テンプレートの追加例です。整数データのインデックス作成を制御するために利用します。
earthdistance 地表面上の大圏距離を計算します。
fuzzystrmatch 文字列間の類似度や相違度を算出できます。
hstore キーバリューのペアを保存するためのデータ型を提供します。
hstore_plperl   PL/Perl言語向けにhstore型の変換を実装した追加の拡張です。
intagg 整数型の集約子と列挙子を提供します。このモジュールは廃止されていますが、組み込み関数の互換ラッパーとして今でもまだ提供されています。
intarray NULLのない整数の配列の操作に便利な関数と演算子を提供します。
ip4r   単一のIPv4アドレスから任意の範囲のIPv4やIPv6のアドレス帯に及ぶIPアドレスデータ型をサポートします。
isn EAN13、UPC、ISSN、ISBNのような国際標準となっている商品番号のデータ型を提供します。
ltree 階層ツリー構造のデータ型を提供します。
pg_prewarm   オペレーティングシステムのバッファキャッシュまたはPostgreSQLのバッファキャッシュいずれかにリレーションデータをロードするための便利な方法を提供します。
pg_trgm トライグラム一致に基づくASCII英数字の類似度を算出する関数です。
pgaudit   pgaudit 拡張機能を使用して、セッション監査またはオブジェクト監査を有効にできます。
pgcrypto 暗号関数を提供します。
pgrowlocks 特定のテーブルにおける行ロックの情報を提供します。
plcoffee   CoffeeScriptで関数を作成することができます。
plls   LiveScriptで関数を作成することができます。
plperl Perlプログラミング言語を使用してPostgreSQL関数を作成することができる、ロード可能な手続き言語です。
plpgsql PostgreSQLデータベースシステム用の読み込み可能な手続き言語です。
pltcl PL/Tcl言語でPostgreSQLを拡張することができます。
plv8   JavaScript実行エンジンのV8を組み込んだプロシージャ言語で、JavaScriptでPostgreSQLを拡張することができます。
postgis 地理空間情報を扱うための拡張です。
postgis_tiger_geocoder
postgis_topology
sslinfo 現在のクライアントが、PostgreSQLに接続する際に提供したSSL証明書に関する情報を提供します。
tablefunc テーブルを返却する各種関数を提供します。
test_parser   全文検索用の独自パーサの例です。
tsearch2 後方互換のためにテキスト検索機能を提供します。
tsm_system_rows   SYSTEM_ROWSというテーブルサンプリングメソッドを提供します。
tsm_system_time   SYSTEM_TIMEというテーブルサンプリングメソッドを提供します。
unaccent unaccentは語彙素からアクセント(発音区分記号)を取り除く全文検索用の辞書です。
uuid-ossp UUIDを生成します。

SSL接続の利用

SSL暗号化を利用することができます。

SSL通信を経由してDBサーバーを利用するには、下記の手順を実施する必要があります。

手順は下記ページをご覧ください。

ユーザー権限管理

DBサーバーのユーザー権限の管理は、手動で構築したDBサーバーと同じように行うことができます。

DBサーバー作成時、マスターユーザーには、下記のロール属性が付与されます。

create role / create db / login

また、マスターユーザーが作成したオブジェクト(データベースなど)には、下記のアクセス権限が付与されます。

select / insert / update / delete / truncate / references / trigger / create / connect / temporary / execute / usage

DBサーバーのマスターユーザーを削除すると、動作に不具合が出る場合がありますのでご注意ください。
また、管理用のユーザー(rdbadmin、rdbrepladmin、rdb_superuser)について、設定変更(パスワード変更も含みます)およびユーザー削除した場合には、動作に深刻な不具合が出る場合がありますので削除を行わないようご注意ください。

注意事項

  • XMLデータ型を利用することが可能です。
  • テーブル空間を作成することはできません。

推奨画面サイズ 1024×768 以上