- 締切済み
rawデバイスの表領域を他のrawデバイスに移動させたい
rawデバイスに表領域を作成しているのですが、負荷分散のため、他のrawデバイスに移したいと考えています。 rawデバイスでない場合はalter tablespaceでできそうなのですが、rawデバイスだとこの方法は使えなさそうです。 新しくcreate tablespaceする以外に何か方法はないでしょうか? Oracleのバージョンは9.2.0.4です。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- whiteline507
- ベストアンサー率63% (47/74)
raw deviceにしろ、ファイルシステムにしろ、いったん作成した表領域に対するデータファイル(raw device)を移動することは1コマンドではできないと思います。 renameでできるのはDBFファイル名のみでディレクトリの移動まではできなかったような... 方法としてはやはり移動したい先に論理ボリュームを 確保してそこにraw deviceで空の表領域を作成し、 select segment_name from dba_segments where tablespace_name = '移動したい元の表領域名'; で表示される表なり索引なりを全て移動させる必要が あります。 確か表の移動は alter table {table_name} move tablespace to {new_tablespace_name}; 索引の移動は alter index {index_name} rebuild tablespace {new_tablespace_name}; といったような感じだったと思います。 (自信は無いので詳しくはマニュアルを見てください) 他の方法としてEXP/IMPを用いてオブジェクトを 移動するといった方法もあります。
- muyoshid
- ベストアンサー率72% (230/318)
こんにちは。 > 新しくcreate tablespaceする以外 Alter database rename file ・・・ ではどうでしょう?