複数のデータストアを単一の物理データベースに格納する場合は、1 つのデータベース接続を共有するように、これらのリソースを構成できます。これにより、セッション管理やメモリ使用量など、データベース サーバー側のリソースに対する負荷を大幅に削減できます。これは、ODBC データ ソースと接続文字列の両方の方法で利用できます。
ODBC 接続の場合
dbfhconfig -update -server:ONEDB_SS -dsn:SS.ONEDS -odbcdsn:ONEDB_SS
次の例は MSSQL データベース構成ファイルの抜粋で、2 つのデータストア (SS.DATASTORE1 および SS.DATASTORE2) で 1 つのデータベース接続 (ONEDB_SS データ ソース) を使用しています。
... <server name="SERVER_SS" type="sqlserver" access="odbc"> <dsn name="SS.MASTER" type="database" dbname="master"/> <dsn name="SS.DATASTORE1" type="datastore" dsname="MYFILES1" dbname="onedb_ss" odbcdsn="ONEDB_SS" /> <dsn name="SS.DATASTORE2" type="datastore" dsname="MYFILES2" dbname="onedb_ss" odbcdsn="ONEDB_SS" /> </server> ...
接続文字列による接続の場合
dbfhconfig -update -server:ONEDB_SS -dsn:SS.ONEDS -connect:"Driver={PostgreSQL ANSI};Server=localhost;Port=5432;Database=onedb_pg;Uid=myuser;Pwd=mypass;"
次の例は PostgreSQL データベース構成ファイルの抜粋で、複数のデータストア (PG.DATASTORE1 および PG.DATASTORE2) で 1 つのデータベース接続 (ONEDB_SS データ ソース) を使用しています。つまり、各エントリで同じ接続文字列が指定されています。
... <server name="SERVER_PG" type="postgresql" access="odbc"> <dsn name="PG.POSTGRES" type="database" dbname="postgres" connect="Driver={PostgreSQL ANSI};Server=localhost;Port=5432;Database=postgres;Uid=myuser;Pwd=mypass;" /> <dsn name="PG.DATASTORE1" type="datastore" dsname="MYFILES1" dbname="onedb_pg" connect="Driver={PostgreSQL ANSI};Server=localhost;Port=5432;Database=onedb_pg;Uid=myuser;Pwd=mypass;" /> <dsn name="PG.DATASTORE2" type="datastore" dsname="MYFILES2" dbname="onedb_pg" connect="Driver={PostgreSQL ANSI};Server=localhost;Port=5432;Database=onedb_pg;Uid=myuser;Pwd=mypass;" /> </server> ...