bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

oracle怎么自動維護,oracle日常運維

oracle中怎么設置數據庫自動備份?

Oracle自動備份的三種方法:

創新互聯專業為企業提供北侖網站建設、北侖做網站、北侖網站設計、北侖網站制作等企業網站建設、網頁設計與制作、北侖企業網站模板建站服務,10年北侖做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。

Oracle自動備份數據庫不外乎以下三種方式:

WINDOWS下的任務計劃(At命令)

UNIX下的Crontab

第三方工具如Viritas

在以上三種方式中Viritas屬于第三方工具,很多人可能都沒有接觸,主要說一下windows的任務計劃與unix的cron

1、生成腳本文件,如backup.rcv 假定文件內容如下:

$cat backup.rcv connect target sys/password rcvcat rman/rman@localname; run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup fileaperset 3 format ‘/u01/oradata/backup/arch%u_%s_%p’ archivelog all delete input; release channel c1; release channel c2; release channel c3; }

2、生成執行文件在windows上生成backup_archive.bat,內容包括rman cmdfile = backup.rcv 在unix下生成 backup_archive.sh,內容包括oracle/ramn/rman cmdfile = backup.rcv

3、加入調度在windows中用任務計劃向導即可,或使用at命令。在unix中,在目標機器上編寫一個文件,用以啟動Oracle自動備份進程。假定文件名為ORACLE,文件將放在/var/spool/cron/crontabs目錄下

$cat oracle

0 23 * * 0 backup_archive.sh

#表示星期天23點對數據庫備份

0 12,18 * * * backup_archive.sh

#表示每天12點,18點備份

Crontab文件的每一行由六個域(minutes,hours,day of month,month,day of week,command)組成,域之間用空格或Tab分隔開來。

如何更好的使用Oracle全文索引

不使用Oracle text功能,也有很多方法可以在Oracle數據庫中搜索文本.可以使用標準的INSTR函數和LIKE操作符實現。

SELECT *FROM mytext WHERE INSTR (thetext, 'Oracle') 0;

SELECT * FROM mytext WHERE thetext LIKE '%Oracle%';

有很多時候,使用instr和like是很理想的, 特別是搜索僅跨越很小的表的時候.然而通過這些文本定位的方法將導致全表掃描,對資源來說消耗比較昂貴,而且實現的搜索功能也非常有限,因此對海量的文本數據進行搜索時,建議使用oralce提供的全文檢索功能 建立全文檢索的步驟步驟一 檢查和設置數據庫角色首先檢查數據庫中是否有CTXSYS用戶和CTXAPP腳色。如果沒有這個用戶和角色,意味著你的數據庫創建時未安裝intermedia功能。你必須修改數據庫以安裝這項功能。 默認安裝情況下,ctxsys用戶是被鎖定的,因此要先啟用ctxsys的用戶。 步驟二 賦權 在ctxsys用戶下把ctx_ddl的執行權限賦于要使用全文索引的用戶,例:

grant execute on ctx_ddl to pomoho;

步驟三 設置詞法分析器(lexer)

Oracle實現全文檢索,其機制其實很簡單。即通過Oracle專利的詞法分析器(lexer),將文章中所有的表意單元(Oracle 稱為 term)找出來,記錄在一組 以dr$開頭的表中,同時記下該term出現的位置、次數、hash 值等信息。檢索時,Oracle 從這組表中查找相應的term,并計算其出現頻率,根據某個算法來計算每個文檔的得分(score),即所謂的‘匹配率’。而lexer則是該機制的核心,它決定了全文檢索的效率。Oracle 針對不同的語言提供了不同的 lexer, 而我們通常能用到其中的三個:

n basic_lexer: 針對英語。它能根據空格和標點來將英語單詞從句子中分離,還能自動將一些出現頻率過高已經失去檢索意義的單詞作為‘垃圾’處理,如if , is 等,具有較高的處理效率。但該lexer應用于漢語則有很多問題,由于它只認空格和標點,而漢語的一句話中通常不會有空格,因此,它會把整句話作為一個 term,事實上失去檢索能力。以‘中國人民站起來了’這句話為例,basic_lexer 分析的結果只有一個term ,就是‘中國人民站起來了’。此時若檢索‘中國’,將檢索不到內容。

n chinese_vgram_lexer: 專門的漢語分析器,支持所有漢字字符集(ZHS16CGB231280 ZHS16GBK ZHT32EUC ZHT16BIG5 ZHT32TRIS ZHT16MSWIN950 ZHT16HKSCS UTF8 )。該分析器按字為單元來分析漢語句子。‘中國人民站起來了’這句話,會被它分析成如下幾個term: ‘中’,‘中國’,‘國人’,‘人民’,‘民站’,‘站起’,起來’,‘來了’,‘了’。可以看出,這種分析方法,實現算法很簡單,并且能實現‘一網打盡’,但效率則是差強人意。

n chinese_lexer: 這是一個新的漢語分析器,只支持utf8字符集。上面已經看到,chinese vgram lexer這個分析器由于不認識常用的漢語詞匯,因此分析的單元非常機械,像上面的‘民站’,‘站起’在漢語中根本不會單獨出現,因此這種term是沒有意義的,反而影響效率。chinese_lexer的最大改進就是該分析器 能認識大部分常用漢語詞匯,因此能更有效率地分析句子,像以上兩個愚蠢的單元將不會再出現,極大 提高了效率。但是它只支持 utf8, 如果你的數據庫是zhs16gbk字符集,則只能使用笨笨的那個Chinese vgram lexer.

如果不做任何設置,Oracle 缺省使用basic_lexer這個分析器。要指定使用哪一個lexer, 可以這樣操作:

第一. 當前用戶下下建立一個preference(例:在pomoho用戶下執行以下語句)

exec ctx_ddl.create_preference ('my_lexer', 'chinese_vgram_lexer');

第二. 在建立全文索引索引時,指明所用的lexer:

CREATE INDEX myindex ON mytable(mycolumn) indextype is ctxsys.context

parameters('lexer my_lexer');

這樣建立的全文檢索索引,就會使用chinese_vgram_lexer作為分析器。

步驟四 建立索引

通過以下語法建立全文索引

CREATE INDEX [schema.]index on [schema.]table(column) INDEXTYPE IS ctxsys.context [ONLINE]

LOCAL [(PARTITION [partition] [PARAMETERS('paramstring')]

[, PARTITION [partition] [PARAMETERS('paramstring')]])]

[PARAMETERS(paramstring)] [PARALLEL n] [UNUSABLE];

例:

CREATE INDEX ctx_idx_menuname ON pubmenu(menuname)

indextype is ctxsys.context parameters('lexer my_lexer')

步驟五 使用索引

使用全文索引很簡單,可以通過:

select * from pubmenu where contains(menuname,'上傳圖片')0

全文索引的種類

建立的Oracle Text索引被稱為域索引(domain index),包括4種索引類型:

l CONTEXT

2 CTXCAT

3 CTXRULE

4 CTXXPATH

依據你的應用程序和文本數據類型你可以任意選擇一種。

對多字段建立全文索引

很多時候需要從多個文本字段中查詢滿足條件的記錄,這時就需要建立針對多個字段的全文索引,例如需要從pmhsubjects(專題表)的 subjectname(專題名稱)和briefintro(簡介)上進行全文檢索,則需要按以下步驟進行操作:

? 建議多字段索引的preference

以ctxsys登錄,并執行:

EXEC ctx_ddl.create_preference(' ctx_idx_subject_pref',

'MULTI_COLUMN_DATASTORE');

? 建立preference對應的字段值(以ctxsys登錄)

EXEC ctx_ddl.set_attribute(' ctx_idx_subject_pref ','columns','subjectname,briefintro');

? 建立全文索引

CREATE INDEX ctx_idx_subject ON pmhsubjects(subjectname)

INDEXTYPE ISctxsys.CONTEXT PARAMETERS('DATASTORE ctxsys.ctx_idx_subject_pref lexer my_lexer')

? 使用索引

select * from pmhsubjects where contains(subjectname,'李宇春')0

全文索引的維護

對于CTXSYS.CONTEXT索引,當應用程序對基表進行DML操作后,對基表的索引維護是必須的。索引維護包括索引同步和索引優化。

在索引建好后,我們可以在該用戶下查到Oracle自動產生了以下幾個表:(假設索引名為myindex):

DR$myindex$I、DR$myindex$K、DR$myindex$R、DR$myindex$N其中以I表最重要,可以查詢一下該表,看看有什么內容:

SELECT token_text, token_count FROM dr$i_rsk1$I WHERE ROWNUM = 20;

這里就不列出查詢接過了。可以看到,該表中保存的其實就是Oracle 分析你的文檔后,生成的term記錄在這里,包括term出現的位置、次數、hash值等。當文檔的內容改變后,可以想見這個I表的內容也應該相應改變,才能保證Oracle在做全文檢索時正確檢索到內容(因為所謂全文檢索,其實核心就是查詢這個表)。這就用到sync(同步) 和 optimize(優化)了。

同步(sync): 將新的term 保存到I表;

優化(optimize): 清除I表的垃圾,主要是將已經被刪除的term從I表刪除。

當基表中的被索引文檔發生insert、update、delete操作的時候,基表的改變并不能馬上影響到索引上直到同步索引。可以查詢視圖 CTX_USER_PENDING查看相應的改動。例如:

SELECT pnd_index_name, pnd_rowid,

TO_CHAR (pnd_timestamp, 'dd-mon-yyyy hh24:mi:ss') timestamp

FROM ctx_user_pending;

該語句的輸出類似如下:

PND_INDEX_NAME PND_ROWID TIMESTAMP

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

MYINDEX AAADXnAABAAAS3SAAC 06-oct-1999 15:56:50

同步和優化方法: 可以使用Oracle提供的ctx_ddl包同步和優化索引

一. 對于CTXCAT類型的索引來說, 當對基表進行DML操作的時候,Oracle自動維護索引。對文檔的改變馬上反映到索引中。CTXCAT是事務形的索引。

索引的同步

在對基表插入,修改,刪除之后同步索引。推薦使用sync同步索引。語法:

ctx_ddl.sync_index(

idx_name IN VARCHAR2 DEFAULT NULL

memory IN VARCHAR2 DEFAULT NULL,

part_name IN VARCHAR2 DEFAULT NULL

parallel_degree IN NUMBER DEFAULT 1);

idx_name 索引名稱

memory 指定同步索引需要的內存。默認是系統參數DEFAULT_INDEX_MEMORY 。

指定一個大的內存時候可以加快索引效率和查詢速度,且索引有較少的碎片

part_name 同步哪個分區索引。

parallel_degree 并行同步索引。設置并行度。

例如:

同步索引myindex:Exec ctx_ddl.sync_index ('myindex');

實施建議:建議通過oracle的job對索引進行同步

索引的優化

經常的索引同步將會導致你的CONTEXT索引產生碎片。索引碎片嚴重的影響了查詢的反應速度。你可以定期優化索引來減少碎片,減少索引大小,提高查詢效率。

當文本從表中刪除的時候,Oracle Text標記刪除的文檔,但是并不馬上修改索引。因此,就的文檔信息占據了不必要的空間,導致了查詢額外的開銷。你必須以FULL模式優化索引,從索引中刪除無效的舊的信息。這個過程叫做垃圾處理。當你經常的對表文本數據進行更新,刪除操作的時候,垃圾處理是很必要的。

exec ctx_ddl.optimize_index ('myidx', 'full');

實施建議:每天在系統空閑的時候對全文索引進行相應的優化,以提高檢索的效率

P.S.定時優化索引

3.定時優化同步域索引

創建定時任務,定期優化和同步域索引

SQL create or replace procedure hsp_sync_index as

2 begin

3 ctx_ddl.sync_index('id_cont_msg');

4 end;

5 /

Procedure created.

Elapsed: 00:00:00.08

SQL VARIABLE jobno number;

SQL BEGIN

2 DBMS_JOB.SUBMIT(:jobno,'hsp_sync_index();',

3 SYSDATE, 'SYSDATE + (1/24/4)');

4 commit;

5 END;

6 /

PL/SQL procedure successfully completed.

Elapsed: 00:00:00.27

SQL create or replace procedure hsp_optimize_index as

2 begin

3 ctx_ddl.optimize_index('id_cont_msg','FULL');

4 end;

5 /

SQL VARIABLE jobno number;

SQL BEGIN

2 DBMS_JOB.SUBMIT(:jobno,'hsp_optimize_index();',

3 SYSDATE, 'SYSDATE + 1');

4 commit;

5 END;

6 /

Procedure created.

Elapsed: 00:00:00.03

PL/SQL procedure successfully completed.

Elapsed: 00:00:00.02

SQL

oracle怎么創建數據庫實例

從Windows桌面執行“開始”→“程序”→“Oracle - ORACLE_HOME_NAME”→“配置和移置工具”→“Database Configuration Assistant”命令,打開Database Configuration Assistant對話框的歡迎界面,單擊該界面中的“下一步”按鈕

啟用“創建數據庫”選項,單擊“下一步”按鈕,進入“步驟2:數據庫模板”界面

啟用“一般用途或事務處理”選項,單擊“下一步”按鈕,進入“步驟3:數據庫標識”界面

在“步驟3:數據庫標識”界面中設置新數據庫的全局數據庫名,這里設置為myorcl,而數據庫實例名(SID)默認與全局數據庫名相同,也為myorcl

設置好口令后,單擊“下一步”按鈕,進入“步驟6:存儲選項”界面,在該界面中啟用“文件系統”選項

單擊“下一步”按鈕,進入“步驟7:數據庫文件所在位置”界面。設置好存儲位置后,單擊“下一步”按鈕,進入“步驟8

¤采用默認設置,單擊“下一步”按鈕,進入“步驟9:數據庫內容”界面,該界面中可以對示例方案及定制腳本進行配置。采用默認設置,單擊“下一步”按鈕,進入“步驟10:初始化參數”界面,該界面中可以對內存、調整大小、字符集和連接模式進行配置。采用默認設置,單擊“下一步”按鈕,進入“步驟11:安全設置”界面,在該界面中采用默認設置,即啟用“保留增強的11g默認安全設置”選項。¤單擊“下一步”按鈕,進入“步驟 12:自動維護任務”界面,在該界面中選擇“啟用自動維護任務”選項。

單擊“下一步”按鈕,進入“步驟13:數據庫存儲”界面,在該界面中可以指定數據庫的存儲參數,單擊“下一步”按鈕,進入“步驟14:創建選項”界面

9

單擊“完成”按鈕,在彈出的“確認”對話框中單擊“確定”按鈕,即可開始新數據庫的創建

文章名稱:oracle怎么自動維護,oracle日常運維
文章位置:http://vcdvsql.cn/article26/dsdgpcg.html

成都網站建設公司_創新互聯,為您提供小程序開發面包屑導航云服務器全網營銷推廣移動網站建設標簽優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站建設