[pgsql-jp: 30460] Re: SynonymによるTBL 切替について。

fumiyaKitamura fkit.s @ sys238.jp
2003年 7月 14日 (月) 21:14:55 JST


キタムラです。
スキーマとビューの組み合わせでいけそうな気がします。

データベースは
 postgres
のみ

このデータベースに
 スキーマ:UserA (CREATE UserA SCHEMA AUTHORIZATION UserA;)
 スキーマ:UserB (CREATE UserB SCHEMA AUTHORIZATION UserB;)
 スキーマ:UserC (CREATE UserC SCHEMA AUTHORIZATION UserC;)
を作成する

DBの更新はUserA、UserBでデータベースpostgresに接続して行う。

UserCからUserAとUserBの参照先を切り替えるのはスキーマUserCで
 create or replace view tableX as select * from UserA.tableX
とか
 create or replace view tableX as select * from UserB.tableX
のようにすれば切り替えでます。


こんな感じでどうでしょうか?


On 2003.7.14, at 19:24 Asia/Tokyo, Ken Nakajima wrote:

> はじめまして ナカジマ@飯田橋 です。
>
> Oracleでsynonymを利用してTBLを切り替えていたDBをPostgresqlに移行しようと
> 思っております。
> なにかいい作戦はありますでしょうか?
> ご存知の方がいらっしゃいましたらご支援願います。
>
> ・synonymによるTBL切替
>
> メンテユーザ
>  UserA
>  UserB
> の2つのユーザで交替にTBLのメンテを行っています。
>
> 参照ユーザ(APはこちらのユーザを利用)
>  UserC
> に対して最新のTBLをSynonymで切り替えて提供しています。
>
> ex:
> ・昨日
> UserA.TBLXXX <- UserA がメンテ
> UserB.TBLXXX <- 参照用にsynonymリンク -> UserC.TBLXXX
> UserC.TBLXXX = UserB.TBLXXX <- UserCが参照
>
> ・日次処理
> UserC.TBLXXX を UserB.TBLXXX → UserA.TBLXXX に切替
> UserA.TBLXXX から UserB.TBLXXX を同期
> ※:切り替える理由はメンテ時間の短縮のため。
>
> ・今日
> UserA.TBLXXX <- 参照用にsynonymリンク -> UserC.TBLXXX
> UserB.TBLXXX <- UserB がメンテ
> UserC.TBLXXX = UserA.TBLXXX <- UserCが参照

=================<F.Kitamura>=================
E-Mail  : fkit @ sys238.jp
---
The greatest enemy of man is alcohol.
But, The Bible tells us to love our enemy.
==============================================




pgsql-jp メーリングリストの案内