> 行う必要があるということなのでしょうか。

例:ORA-39111: 依存オブジェクト型OBJECT_GRANT:"SYSTEM"はスキップされ、ベース・オブジェクト型VIEW:"SYSTEM". ・undo表領域が自動拡張されない(固定)となっている (最大サイズまで拡張し、これ以上拡張出来ない場合も含む) 表領域がのサイズが不足した場合、undo表領域に絡んだエラーが発生する可能性があります。 ・ora-01555:スナップショットが古すぎます 2.フラッシュバック問い合わせ ちなみに、日付に対応するパーティションがあり、表・索引ともにパーティションで管理されています。毎日深夜に一番古いパーティションを削除し、翌日分のパーティションを新規作成するデーモンが動きます。 ただし、それぞれの設定レベル、保存方法によって、参照できる範囲は変わります。 現在DBからあるレコードが消えてしまい(最初から作られてない可能性もあり)、顧客からクレームがついています。 統計情報が悪さをして、まともな実行計画が立案できません。 COSTは、検索するテーブルのデータ量が多いほうがコスト値が大きくなる。 インポート時のコマンド そのまんまの内容だと思うのですが。 なので、テーブルの登録内容が大きく変わる場合は、統計情報の更新を行う必要が 少なくとも、他への影響がないので。, >CBOでは実行計画の最適化には統計情報が使われるのですか・・・! 出力形式が見づらくて困っています。 出来るのでしょうか?

●環境 演習4を再実行した際に、UNDO 表領域の使用量が上限に達しないことを30秒間隔で確認してください。また、チューニング済みUNDO保存期間の値が、UNDO_RETENTION初期化パラメータの設定値(900秒)を下回っていないことも確認してください。, さあ、最後の演習です。上記回答例では再実行部分は記述しておりませんが、皆さんの環境でも問題無く(ORA-1555の読取一貫性エラーが発生することなく)、SELECT文の結果が戻ってきたと信じています。, UNDO表領域の使用量(ACTIVE or UNEXPIREDなエクステントの合計サイズ)を30秒間隔で取得した結果からは、見事に270MBの上限に達することなく5分間の更新処理が完了したことを確認することが可能です。少し使用率が高いように思われますが、前回生成されたUNDO情報が20MB前後残っている状態から計測し始めた為であるとお断りしておきます。また、V$UNDOSTATビューを確認する限り、1785秒間分のUNDO情報を保持する用にUNDO保持期間が自動チューニングされていることからも、UNDO表領域のサイズが十分であることが確認できますね。, 繰り返しになりますが、適切なUNDO表領域のサイズ見積もりは、Oracle Enterprise ManagerのUNDOアドバイザを使用することをお勧めします。合わせて、表領域の空き領域サイズの監視+通知も実装できますので非常に有効に活用して頂けます。, データベース管理の基本でもあるUNDO表領域の管理ですが、意外にも少し難しい部分を感じて頂けたかなと思っています。特に、UNDO表領域の自動拡張or固定によって内部的に自動チューニングされるUNDO保持期間の動きが変わる部分については、忘れてしまっていた方も多いと思うので、復習になったのであれば幸いです。今回は、読取一貫性エラー(ORA-1555)の発生を抑止する為のUNDO表領域のサイズ見積もりについて体験して頂きましたが、次回は更新処理のパフォーマンス・ダウンを避ける為のUNDO表領域のサイズ設定について、待機イベントを絡めて解説させて頂く予定でおりますので、楽しみにしていて下さい。, 今回も最後まで体験して頂きましてありがとうございました。次回以降もどうぞよろしくお願い致します。サクラを見に北上してきます!.
ORA-17502: ksfdcre:4 ファイル+DATA/testdb/datafile/tblsp1の作成に失敗しました --------------------------- 大量データのテーブルをDataPump の Impdp でインポートしようとした際に、

2.部分的にdeleteして、領域を開放したい場合 CBOは、類推して、実行計画を算定します。 =====, いつもお世話になっております。 select カラム1,カラム2,カラム3 from hoge; "SYS_IMPORT_FULL_01"を起動しています: system/******** dumpfile=expdp_dir:expdp_all.dmp logfile= full=y alter index ind_test rebuild; 当該PJでは、客先にDBを構築して納入しているのですが、最近動作が遅くなってきたというクレームを耳にしました。調べてみると、特定のテーブルのSelect処理に時間がかかっているようです。問題のテーブルは、毎日数十万件のデータがInsertされ、一定の保持期限より古いデータは毎日削除されます。 BLOCKSメソッドを使用して見積り中です...

ただし、統計情報が一度も採取されていないテーブルやインデックスについては、

ORA-39002: invalid operation ----- エクスポート時に「compress=n」をつけたり、 あります。 -----

サーバにアクセスしてsqlplusで、 有効化は以下です。 sqlに関するツールは使用できないルールでして、あくまでsqlplusのコマンド上でみやすくしなければなりません。

ORA-39166: Object STUDY.TEST2 was not found. ・expdb実行 Gold DBA のセミナー、Oracle Certified... 津島博士のパフォーマンス講座 Indexページ ▶▶ >UNDOや一時領域をなるべく生成しない方法を考えましょう。 "SYS_EXPORT_FULL_01"を起動しています: system/******** dumpfile=TEST_DIR:expdp_all.dmp logfile= full=y カラム2 2の値 Oracleの設定などは前任者がしており、まともな引継ぎを受けないまま私が維持運用員となりました。 -----
>DBへデータを入れたあとにインデックスがきかなくならないのでしょうか? カラム3 3の値 従来のImport を使えばインポートできるのですが、非常に時間を要するため、 Please try again.

・undo表領域が自動拡張されない(固定)となっている (最大サイズまで拡張し、これ以上拡張出来ない場合も含む) 表領域がのサイズが不足した場合、undo表領域に絡んだエラーが発生する可能性があります。 ・ora-01555:スナップショットが古すぎます

・STUDY.TEST2は存在します。 とくに変化はありませんでした。, ExportファイルのサイズとImport後のサイズは同期しません。よくある誤解です。 COST・・・・CBOによって見積もられた操作コスト。 前の方のおっしゃるとおり、DELETEしただけでは領域は開放されません(ハイウォーターマークが下がらない)ので、以下を試してみてください。1.該当テーブルの全件削除で良い場合truncate テーブル名 drop storage;を実行する。これで ALTER DATABASE DATAFILE '/oracle/TESTDB/UNDOTBS01.DBF' RESIZE 16G; (UNDOTBS01.DBFというUNDO表領域のファイルを16GBとする) カラム名1

INSERT INTO TEST_TBL (USER_ID, DEPT_NO) VALUES (seq1.nextval, '1234') ; カラム名2 begin ALTER TABLESPACE UNDOTBS1 RETENTION GUARANTEE; 以下の手順で、エクスポート/インポート テストを行ったのですが、

-----------------------...続きを読む, SQLPLUSを起動して、 ORA-15005: name "testdb/datafile/tblsp1" is already used by an existing alias 1.オンラインREDOログとアーカイブログ

統計情報にあるテーブル/インデックスの特性と実態が異なるようなケースでは、 (SELECT対象のデータが他のセクションで変更されている場合、UNDO領域からデータを抽出するが、UNDO領域に変更前のデータがなくなっている場合に発生), ・ORA-30036:string(UNDO表領域'string'内)でセグメントを拡張できません オブジェクト型DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATAの処理中です 域ではありませんが、トランザクションの COMMIT 後に、UNDO_RETENTION や, TUNED_UNDORETENTION の時間が経過しておらず、リテンションが失効していな, SQL> select status, sum(bytes) from dba_undo_extents. [/sql] いる領域ですが、一度も領域が使用されていない、または、krown:64291 に記.

full=y(データベース全体)は動きました。 =====

統計情報の更新タイミングが持てないような運用の場合、ヒントで切り抜けるのが 有効化は以下です。 $ expdp system/pass tables=TEST_TBL dumpfile=TEST_DIR:expdp_tbl.dmp logfile= TEST_DIR:expdp_tbl.log 私は、 と書かれていますが、いまいちピンときません。

---------------------------

ですが、少ししか使用率が減らず困っています。

ALTER DATABASE DATAFILE '/oracle/TESTDB/UNDOTBS01.DBF' RESIZE 16G; ((UNDO_RETENTION × 1秒間あたりの最大使用ブロック数 + オーバーヘッド ) × BLOCK_SIZE) / 70%. (SQL文は単純にTBLをカウントしているだけです) ORALCE11gXE

3.その他 end loop;

ただし、maxsize句に指定されているサイズまで拡張した場合は、期限切れではないundoを上書きします。 + undo表領域が固定(autoextend off)の場合. いろいろ調べてみたのですが、解決に至ってないためお力添えをお願いいたします。 ===== 私はOracleの知識(管理面について)が殆どなく、Oracleを使うことはできるが、Oracleの設定がどういう状況になっているか調べることもできず、資料もありません。

studyスキーマのTEST1テーブルをexpdpでエクスポート(content=data_only)し、 そのため、undo表領域の空き領域が少なくなるとundoを上書きしないように自動的に拡張します。 4.   これらは#1の方がおっしゃったLOGMINERで実行済みSQLを調査することができま...続きを読む, 実行計画の「COST」と「BYTE」について教えていただきたいです。

次のSQLを実行し、TRYスキーマ上に約100MBの更新用の表およびCOL1列に対する主キーを作成して下さい。, はい、毎度お馴染みの指の準備運動ですね。今回は特別変わったことはしていませんので、説明を割愛させて頂きます。, もし、この連載を初めて読まれた方は、是非とも以前の回の演習1番目の解説にも目を通して頂ければ、何か面白い事が解説されているはず。。。, 2. カラム名2 UNDO表領域をいっぱいにしてしまった! お仕事中にやらかしてしまったので、自戒も込めて書きます。 Oracle DatabaseにはUNDO表領域というものがあります。 UPDATE, DELETEを行った際に復元ができるように、 更新前のデータを一次退避しておくためのテーブルスペースです。    SQL> select name,to_char(completion_time, 'yyyy/mm/dd hh24:mi') adate from v$archived_log;   ですが、そのREDOログのサイズとシステムのアクセス量によって保存期間は変化します。アーカイブログ設定しておけば、古いREDOログはアーカイブとして吐き出されます。