
No.3ベストアンサー
- 回答日時:
やはりディスクの空きを増やすのが目的でしたか。
一般的に再編成と呼ばれる作業となります。
まあ、だいたい、以下のような作業が必要となります。
・dba_data_filesを参照し現状のデータファイルのサイズを確認。
・dba_free_spaceを参照し現状の空き状況をを確認。
・再編成対象の表領域に存在するオブジェクトを確認する。
パターン1(resize)
表領域の空きがある場合はデータファイルのサイズを変えてるだけでOK。
・表領域のサイズを変更。
alter database datafile 'データファイル(フルパス)' resize サイズ;
パターン2(再作成)
・表領域単位でテーブルをExportする。
・対象の表領域のテーブルを削除する。
・対象の表領域を削除する。
・対象の表領域を再作成する。※サイズを小さくする。
・対象の表領域にテーブルをImportする。
パターン3(move and rebuild)
・ワーク用の表領域を作成する。
・再編成を行う表領域に存在するテーブル・索引をワーク用の表領域に移す。
表:alter table テーブル名 move tablespace ワーク表領域名;
索引:alter index 索引名1 rebuild tablespace ワーク表領域名;
・表領域のサイズを変更。
alter database datafile 'データファイル(フルパス)' resize サイズ;
・元の表領域にテーブル・索引を戻す。
表:alter table テーブル名 move tablespace 元の表領域名;
索引:alter index 索引名1 rebuild tablespace 元の表領域名;
・ワーク用の表領域を削除する。
※表領域削除後、データファイルも削除する。
・テンポラリーの再編成
9iだからテンプの情報はdba_temp_filesだと思います。
・新規にテンプ領域を作成する。
・ユーザーに割り当てられているテンプを変更する。
alter user scott temporary tablespace 新テンプ;
・旧テンプをdropする。
※表領域削除後、データファイルも削除する。
それなりに詳しくないとできない作業なので、検証環境などで
試したから作業を行うことをお勧めします。
ご丁寧な説明大変ありがとうございます。
アドバイスいただいた内容を調べてやってみます。
また、何かありましたらご質問いたします。m(_ _)m
No.4
- 回答日時:
再編成については詳細な回答がありましたがもう一つ、コアダンプやトレースファイル、アラートファイルといった
「放って置くと溜まる一方」で不要なファイルのクリーニング(削除)もそれなりに効果が見込めるかもしれません。
もし意識されていないのであれば、一度確認することをオススメします。
ご回答どうもありがとうございます。
ファイルのクリーニングも調べてやってみます。
また、何かありましたら宜しくお願いします。m(_ _)m
No.2
- 回答日時:
データベース容量とは何を想定して書いているのでしょうか?
・表領域に割り当てられたデータファイルのサイズ
・表領域内の割り当て済みデータブロック
・表の割り当て済みデータブロック
テーブルにDelete文を発行しても表のサイズは変わりません。
表に割り当てられたエクステント内のデータブロックが開放されるだけです。表のサイズが変わらなければ表領域もデータファイルも変わりません。
具体的に何をしたいのかがわからないと対応は異なります。
以下のうちのなにをしたいのでしょうか?
・表領域内の空きを増やしたい。
・表内の空きを増やしたい。
・OS上のディスクの空きを増やしたい。
※文脈からするとディスクの空きを増やしたいのかなーと予測してます。おそらくDelete文の負荷が高くて、TEMP表領域(のデータファイル)が拡張してディスクが圧迫されたのかと予測してます。
この回答への補足
ご回答有難うございます。ご推察の通りです。
os上のディスクの空きを増やしたいです。
DELEAT文の負荷が高いとTEMP表領域データファイルが拡張すると言うことでしょうか?それを解決してディスクの空きを増やすにはどうすればいでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
データを削除しても表領域の使...
-
Data Pump で大量データインポ...
-
ORA-00959: 表領域'****'は...
-
datapumpの実行方法について
-
列が255以上のCSVファイルをAcc...
-
CLOB型へのINSERT
-
SQL*Loaderで、データを加工し...
-
お知恵をお貸しください。
-
RDBのテーブル種類の違い
-
(ACCESS)複数mdbからのデータ...
-
ACCESS 複数テーブル・複数フィ...
-
oracle 10g ユーザやスキーマご...
-
oracleのimpdpでORA-39166
-
SQL*LoaderとInsertの違いについて
-
ACCESS2000からEXCELファイルを...
-
Viewにインデックスは張れ...
-
ラジオボタンで選択したらデー...
-
object browser で処理を中断す...
-
SQLでスキーマ名(所有者名)の...
-
DELETE文でFROM句を省略した場合
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データを削除しても表領域の使...
-
ORA-00959: 表領域'****'は...
-
Data Pump で大量データインポ...
-
TruncateしたテーブルへのInser...
-
ORACLEでの領域計算
-
データベースの初期サイズ
-
テーブルのSTORAGE句のサイズ設定
-
oracle SYSTEM01.DBF が大きい
-
表領域の使用率がもうすぐ100%
-
Oracleはどの程度まで巨大なテ...
-
USER_SEGMENTの参照について
-
データ削除の方法
-
create table時のINITIALとMAXE...
-
UNDO_RETENTION初期化パラメー...
-
運用中のALTER TABLE
-
ダイレクトパスロードの性能に...
-
エクステント数
-
max_fsm_pagesについて
-
NEXT EXTENTのサイズが0
-
表領域(users)の中身を整理したい
おすすめ情報