如何檢視oracle資料庫的失效物件
select object_name,status from dba_objects where owner = 'username'
手動編譯執行
sql> alter function func_name compile;
函式已更改。
sql> alter procedure procedure_name compile;
過程已更改。
sql> alter package package_name compile body;
程式包主體已變更。
也可以使用dbms_ddl包來編譯,但只用於pl/sql物件,不能用來編譯檢視
使用dbms_utility.compile_schema
使用這個包將會編譯指定schema下的所有procedures, functions, packages, and triggers.
你可以在sqlplus 下使用它,如:
exec dbms_utility.compile_schema(schema => 『scott』);
使用utl_recomp
utl_recomp包有兩個儲存過程:recomp_serial和recpmp_parallel
從儲存過程的名字可以看出乙個是非並行,乙個是並行方式.
使用並行方式會加快編譯速度,包的定義如下:
procedure recomp_serial(
schema in varchar2 default null,
flags in pls_integer default 0);
procedure recomp_parallel(
threads in pls_integer default null,
schema in varchar2 default null,
flags in pls_integer default 0);
引數使用方法:
schema
- 想編譯的模式,如果為null,將編譯資料庫的所有無效物件.
threads
- 並行度,如果為null,會使用引數job_queue_processes的值.
通常threads的值最好和cpu的數量想匹配,以發揮並行的最大優勢.
flags -
oracle內部使用的診斷測試引數.
對資料庫的操作
資料庫的檔案 資料檔案 包含資料和物件,主資料檔案建議副檔名.mdf,其餘.ndf 事務日誌檔案 包含恢復資料庫中的所有事物所需的資訊,建議副檔名.ldf 至少包含乙個資料檔案和乙個日誌檔案 對資料庫的操作 選其中乙個,可以選 選其中乙個,必選 分割,表示多個選項 表示說明 建立create dat...
linux對資料庫的
yum y install mariadb server yum y install mariadb client 開啟服務 systemctl start mariadb 配置檔案的設定 vi etc my.cnf.d server.cnf 新增 mysqld init connect set c...
資料庫索引失效
索引失效 1 沒有查詢條件,或者查詢條件沒有建立索引 2 在查詢條件上沒有使用引導列 3 查詢的數量是大表的大部分,應該是30 以上。4 索引本身失效 5 查詢條件使用函式在索引列上 見12 6 對小表查詢 7 提示不使用索引 8 統計資料不真實 9 cbo計算走索引花費過大的情況。其實也包含了上面...