首先應(yīng)該保證數(shù)據(jù)庫的服務(wù)啟動
創(chuàng)新互聯(lián)公司主要從事網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)賓川,10多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108
在myeclipse的數(shù)據(jù)庫視圖中點 右鍵-new 彈出database driver的窗口,
Driver template選擇oracle(thin driver),
Driver name 輸入oracle
connection URL=jdbc:oracle:thin:@localhost:1521:oracle 注意localhost:1521:oracle中的oracle是數(shù)據(jù)庫得sid換成你自己數(shù)據(jù)庫的sid就可以
username:登陸數(shù)據(jù)庫具有system權(quán)限的用戶名
password:登陸數(shù)據(jù)庫具有system權(quán)限的密碼
點擊add jar 選擇ojdbc14.jar的存放位置,沒有得可以到百度下一個叫ojdbc14.jar的文件。
點擊test driver 到此成功配置。
關(guān)于啟動數(shù)據(jù)庫后提示ora-12505的解決方法:
第二種可能發(fā)現(xiàn)sid配置沒有錯誤,但是還是報錯,那可能就是oracle得監(jiān)聽配置出了問題,需要檢查listener.ora文件,用記事本打開,
正確配置如下:
# listener.ora Network Configuration File: e:\oracle\product\10.2.0\db_1
etwork\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = e:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc))(SID_DESC =
(GLOBAL_DBNAME = oracle)
(ORACLE_HOME = e:\oracle\product\10.2.0\db_1)
(SID_NAME = oracle)))LISTENER =(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))))紅字部分改成oracle創(chuàng)建時候的sid 保存退出。
多項研究表明,40% 的應(yīng)用程序故障都是由操作員或用戶的錯誤造成的。人非圣賢,孰能無過?但是,這些錯誤很難避免,而且在沒有事先規(guī)劃和使用正確技術(shù)的情況下尤其難以恢復(fù)。這樣的錯誤會導(dǎo)致“邏輯”數(shù)據(jù)損壞,或者導(dǎo)致 IT 基礎(chǔ)架構(gòu)的一個或多個組件停止運行。糾正個別組件的錯誤相對來說簡單,而檢測并糾正邏輯數(shù)據(jù)的損壞,例如意外刪除了有價值的數(shù)據(jù)時,所耗費的操作將導(dǎo)致業(yè)務(wù)產(chǎn)出的巨大損失。典型的用戶錯誤可能包括意外刪除了有價值的數(shù)據(jù),錯誤刪除了數(shù)據(jù)和錯誤刪除了表。避免人為錯誤 Oracle 數(shù)據(jù)庫體系結(jié)構(gòu)利用了人為錯誤數(shù)據(jù)庫恢復(fù)領(lǐng)域獨有的技術(shù)進展。Oracle 閃回技術(shù)提供了一組新特性,可及時查看數(shù)據(jù)并在時間上前后滾動數(shù)據(jù)。使用閃回特性,可以查詢歷史數(shù)據(jù)、執(zhí)行更改分析,以及執(zhí)行自助修復(fù),以便在數(shù)據(jù)庫聯(lián)機時從邏輯損壞中恢復(fù)。利用 Oracle 閃回技術(shù),您完全可以撤銷過去的操作!Oracle9i 引入了閃回查詢,從而提供了可從人為錯誤中恢復(fù)的簡單、強大和全面的非破壞性機制。它允許用戶查看過去某個時間點的數(shù)據(jù)狀態(tài),而無需更改任何數(shù)據(jù)庫結(jié)構(gòu)。 Oracle 數(shù)據(jù)庫 10g 擴展了閃回技術(shù),提供了基于數(shù)據(jù)庫、表、行和事務(wù)級別的快速、方便的恢復(fù)。閃回技術(shù)使恢復(fù)過程實現(xiàn)了革命性變化,您只需對更改的數(shù)據(jù)進行操作?,F(xiàn)在,錯誤恢復(fù)所需的時間就相當(dāng)于錯誤發(fā)生的時間。Oracle 10g 閃回技術(shù)包括閃回數(shù)據(jù)庫、閃回表、閃回刪除、閃回版本查詢以及閃回事務(wù)查詢。 可以輕松地利用閃回技術(shù)進行非修復(fù)性操作,如使用閃回查詢進行歷史審計、利用閃回數(shù)據(jù)庫撤銷測試更改。Oracle 數(shù)據(jù)庫 11g 引進了一個創(chuàng)新的方法,使用閃回數(shù)據(jù)存檔來管理和查詢長期的歷史數(shù)據(jù)。該版本還提供了簡單的一步式事務(wù)撤銷操作,實現(xiàn)了新的閃回事務(wù)功能。 Oracle 數(shù)據(jù)庫 11g 中的新特性 閃回數(shù)據(jù)存檔 閃回數(shù)據(jù)存檔能夠以高度的應(yīng)用程序透明性、安全性及高效的方式自動跟蹤和維護對所有 Oracle 數(shù)據(jù)的歷史更改。作為 Oracle Total Recall 選件的組成部分,閃回數(shù)據(jù)存檔為企業(yè)提供了快速、集中和極其高效的解決方案,以滿足管理所有歷史數(shù)據(jù)的需要。閃回數(shù)據(jù)存檔自動跟蹤對數(shù)據(jù)庫中所存儲數(shù)據(jù)的每個更改,同時維護一個安全、高效和易于訪問的歷史數(shù)據(jù)存檔。捕獲的歷史數(shù)據(jù)可以根據(jù)業(yè)務(wù)需要保存任意長的時間,并且可以使用閃回 SQL 查詢方便地進行訪問。在現(xiàn)有表和新建表上均可立即啟用歷史數(shù)據(jù)跟蹤,更重要的是,以一種完全應(yīng)用程序透明的方式進行跟蹤。 閃回數(shù)據(jù)存檔提供了一個高性能的、存儲優(yōu)化的、具有集中管理界面的解決方案,可以滿足組織對數(shù)據(jù)保留和更改控制的需求。使用閃回數(shù)據(jù)存檔進行歷史數(shù)據(jù)跟蹤的主要好處包括: 應(yīng)用程序透明: 在應(yīng)用程序沒有更改或更改很小的情況下,可以在一個或多個表上立即啟用歷史數(shù)據(jù)捕獲。因此,客戶可以使用該特性捕獲打包應(yīng)用程序以及自行開發(fā)的應(yīng)用程序的歷史數(shù)據(jù)。 無縫訪問: 可以使用熟悉的閃回 SQL 結(jié)構(gòu)輕松訪問歷史數(shù)據(jù)。閃回數(shù)據(jù)存檔包括對閃回查詢的支持。應(yīng)用程序可以及時無縫地查詢不同時間點的表歷史數(shù)據(jù)。無需拍攝特殊快照既可利用該特性。 安全性: 歷史數(shù)據(jù)一旦生成,任何用戶都不能進行修改。這就實現(xiàn)了即取即用,而無需特殊或額外的設(shè)置。對內(nèi)部歷史表的訪問限制為只讀。不允許用戶(包括管理員)進行 DML 操作。由于通過閃回查詢機制提供了無縫訪問,因此應(yīng)用程序無需直接查詢內(nèi)部歷史表。 最小的性能開銷: 常規(guī)用戶事務(wù)幾乎沒有影響。閃回數(shù)據(jù)存檔采用輕型機制來標(biāo)記要存檔的跟蹤表上的 DML 操作。通過稍后介紹的后臺進程異步生成實際歷史記錄并進行存檔。 存儲優(yōu)化: 在內(nèi)部對歷史數(shù)據(jù)進行分區(qū)和高度壓縮,以減少占用的存儲空間。閃回數(shù)據(jù)存檔采用高效的壓縮模式來壓縮內(nèi)部歷史表。此外,它還依據(jù)范圍分區(qū)模式對內(nèi)部歷史表進行自動分區(qū)。閃回數(shù)據(jù)存檔中的壓縮和分區(qū)都是自動管理的,無需特殊管理。 集中管理: 閃回數(shù)據(jù)存檔提供了一個基于策略的集中管理界面,實現(xiàn)了大量正在進行中的管理任務(wù)自動化。使用閃回數(shù)據(jù)存檔,可以方便地對表進行分組并設(shè)置常規(guī)保留策略。新表將從所在的閃回數(shù)據(jù)存檔中自動繼承保留參數(shù)。Oracle 將根據(jù)指定的保留策略自動清除所有跟蹤表中過期的歷史數(shù)據(jù)。這就可以將管理員從重復(fù)的歷史數(shù)據(jù)管理中解放出來,避免了與人工維護有關(guān)的成本高昂的錯誤(如,錯誤清除了歷史數(shù)據(jù))。 閃回事務(wù) 大型數(shù)據(jù)庫應(yīng)用程序依賴復(fù)雜的事務(wù)序列,以確保一組插入、更新或刪除的原子性和一致性。如果出現(xiàn)一個“問題”事務(wù),管理員必須向前追溯,了解哪些更改受該事務(wù)的影響并確定任何依賴關(guān)系(例如,“問題”事務(wù)之后修改了相同數(shù)據(jù)的事務(wù)),從而確保撤銷該事務(wù),保留原始的、好的數(shù)據(jù)狀態(tài)和任何相關(guān)數(shù)據(jù)。執(zhí)行這種事務(wù)分析可能很費力,尤其對非常復(fù)雜的應(yīng)用程序。通過閃回事務(wù),使用一個 PL/SQL 操作即可實現(xiàn)單個事務(wù)(還可以包含它依賴的所有事務(wù))的閃回,或者使用直觀的 EM 向?qū)碜R別并閃回有問題的事務(wù)。閃回事務(wù)依賴于給定事務(wù)及其相關(guān)事務(wù)的撤銷數(shù)據(jù)和存檔重做日志的可用性,以便撤銷更改。Oracle 數(shù)據(jù)庫 10g 第 2 版中的新特性恢復(fù)點 當(dāng)需要進行 Oracle 數(shù)據(jù)庫時間點恢復(fù)操作時,DBA 必須確定數(shù)據(jù)必須回滾到的時間或 SCN。Oracle 數(shù)據(jù)庫 10g 第 2 版用恢復(fù)點簡化了時間點恢復(fù)。恢復(fù)點是用戶定義的一個名稱,與閃回數(shù)據(jù)庫、閃回表和恢復(fù)管理器 (RMAN) 結(jié)合使用時可以代替 SCN 或時鐘時間,可以通過企業(yè)管理器或者用 SQL*Plus 或 RMAN 以命令行方式創(chuàng)建。使用恢復(fù)點,無需調(diào)查事務(wù)的 SCN 或時間,使用戶能夠收藏數(shù)據(jù)庫事務(wù)事件。有保證的恢復(fù)點確保了始終維護足夠的閃回日志,以便返回到恢復(fù)點。這意味著快速恢復(fù)區(qū)將不刪除閃回日志,除非當(dāng)前的保證恢復(fù)點不再需要這些日志。可在進行主要數(shù)據(jù)庫更改(如數(shù)據(jù)庫批處理作業(yè)或模式升級)之前創(chuàng)建這些特殊恢復(fù)點,從而可在需要撤銷更改時使用這些恢復(fù)點進行閃回。通過RESETLOGS 閃回數(shù)據(jù)庫 通過RESETLOGS 閃回數(shù)據(jù)庫使 RESETLOGS 操作之前創(chuàng)建的閃回日志可用于閃回數(shù)據(jù)庫操作。在 Oracle 數(shù)據(jù)庫 10g 第 2 版中,使用 RESETLOGS 打開數(shù)據(jù)庫后即保留閃回日志。如果直到執(zhí)行了 RESETLOGS 之后才發(fā)現(xiàn)長期存在的邏輯錯誤,這種情況下該特性非常有用,需要在 RESETLOGS 之前進行閃回。在 Oracle Data Guard 環(huán)境中,該功能允許物理備用數(shù)據(jù)庫以讀寫方式打開,以便稍后閃回更改并將更改轉(zhuǎn)換回物理備用數(shù)據(jù)庫。如果切換操作后發(fā)現(xiàn)邏輯錯誤,可以將主數(shù)據(jù)庫和備用數(shù)據(jù)庫閃回到切換操作前的 SCN 或時間點。Oracle 數(shù)據(jù)庫 10g 第 1 版中的新特性閃回數(shù)據(jù)庫 閃回數(shù)據(jù)庫可快速地將 Oracle 數(shù)據(jù)庫倒回至以前的某個時間,以便糾正由邏輯數(shù)據(jù)損壞或用戶錯誤造成的任何問題。閃回數(shù)據(jù)庫就像數(shù)據(jù)庫的“倒退按鈕”。它提供數(shù)據(jù)庫的時間點恢復(fù),而無需先恢復(fù)數(shù)據(jù)庫備份。當(dāng)您希望消除從磁帶恢復(fù)數(shù)據(jù)庫備份所花的時間時,數(shù)據(jù)庫時間點恢復(fù)是一種快速方法。 閃回數(shù)據(jù)庫功能(可使用 FLASHBACK DATABASE 命令從 RMAN 和 SQL*Plus 啟用)與傳統(tǒng)的時間點恢復(fù)的效果類似。它允許您將數(shù)據(jù)庫返回到其近期的狀態(tài)。若要啟用閃回數(shù)據(jù)庫功能,用 DBA 配置閃回恢復(fù)區(qū)??焖倩謴?fù)區(qū)是 Oracle 數(shù)據(jù)庫 10g 的一個新特性,它為 Oracle 數(shù)據(jù)庫中所有與恢復(fù)相關(guān)的文件和操作提供了統(tǒng)一的存儲位置。除了閃回數(shù)據(jù)庫日志外,恢復(fù)區(qū)還包含存檔重做日志和 RMAN 備份。有關(guān)快速恢復(fù)區(qū)的詳細信息,請參考 Oracle 備份和恢復(fù)文檔。 Oracle 在快速恢復(fù)區(qū)內(nèi)自動創(chuàng)建和管理閃回日志。因為快速恢復(fù)區(qū)配置了空間定額,閃回日志要受制于這些磁盤空間限制。閃回日志的大小區(qū)別很大,這取決于在給定的閃回日志間隔期間數(shù)據(jù)庫更改的讀/寫速度。舊程序塊版本的副本被寫入到閃回日志中。如果一天之內(nèi)更新了 10% 的數(shù)據(jù)庫程序塊,則 24 小時閃回日志的大小約為您數(shù)據(jù)庫大小的十分之一。如果將數(shù)據(jù)庫恢復(fù)到過去較早時期可能要求更多的磁盤空間,則 DBA 可能會動態(tài)地更改此磁盤定額。 閃回為 Data Guard 提供了易于使用的方法來糾正用戶錯誤。閃回數(shù)據(jù)庫既可用在主數(shù)據(jù)庫上又可用在備份數(shù)據(jù)庫上,可快速地將數(shù)據(jù)庫恢復(fù)到較早的時間點,從而避免用戶錯誤。同時,如果管理員決定故障切換到備用數(shù)據(jù)庫,但那些用戶錯誤已被應(yīng)用于備用數(shù)據(jù)庫(例如,由于啟用了實時應(yīng)用特性),則管理員只需將備用數(shù)據(jù)庫閃回到某個安全的時間點。啟用閃回數(shù)據(jù)庫的性能開銷不到 2%。您可能不希望犧牲任何生產(chǎn)數(shù)據(jù)庫的性能開銷,而是實現(xiàn)一種平衡。如果能在數(shù)分鐘而不是數(shù)小時內(nèi)恢復(fù)數(shù)據(jù)庫,則可避免公司上百萬美元的收益損失,您愿意將 2% 的資源用于閃回數(shù)據(jù)庫嗎?啟用閃回數(shù)據(jù)庫功能有以下幾方面好處: 免去了恢復(fù)備份的時間。當(dāng)數(shù)據(jù)庫因遇到災(zāi)難性故障而關(guān)閉時,公司因無法做生意而導(dǎo)致大量收入損失。 消除了備用數(shù)據(jù)庫重做應(yīng)用延遲。 閃回數(shù)據(jù)庫與 Data Guard 無縫集成。備用數(shù)據(jù)庫現(xiàn)在可以輕松快速閃回到過去的任意時間點,這樣在應(yīng)用重做過程中就不需要延遲。 意外錯誤糾正。 閃回數(shù)據(jù)庫提供了 Oracle 數(shù)據(jù)庫的連續(xù)快照。數(shù)據(jù)庫可以回退到 SCN 或時間戳。 閃回表 當(dāng)發(fā)生人為錯誤或應(yīng)用程序錯誤時,您可能想將一個或多個表狀態(tài)恢復(fù)至故障發(fā)生以前的時間點。使用閃回表,DBA 能夠?qū)⒁粋€或一組表快速輕松地聯(lián)機恢復(fù)到指定時間點。閃回表可在恢復(fù)表的同時自動保留其相關(guān)屬性(如當(dāng)前索引、觸發(fā)器和限制),而無需 DBA 查找和恢復(fù)應(yīng)用程序特有的屬性。閃回表緩解了執(zhí)行更為復(fù)雜的時間點恢復(fù)操作的需求。以下命令將 ORDERS 和 ORDER_ITEMS 表閃回到 7 月 7 日下午 2:33。 FLASHBACK TABLE orders, order_items TO TIMESTAMP (JUL-07-2003, 02:33:00);和閃回查詢一樣,閃回表也依靠撤銷數(shù)據(jù)來恢復(fù)表。因此撤銷數(shù)據(jù)必須可用,這樣閃回表才能成功。自動撤銷管理特性允許您使用 UNDO_RETENTION 初始化參數(shù)指定保留撤銷數(shù)據(jù)的時間。通過使用此參數(shù)并適當(dāng)?shù)匾?guī)定撤銷表空間大小,DBA 能夠控制使用閃回表的情況下可修復(fù)表的回退時間長短。 DBA 可以使用閃回表特性快速地從人為錯誤中恢復(fù),它還可以用作自助式修復(fù)工具以便從意外修改或刪除中恢復(fù)。應(yīng)用程序開發(fā)人員可以將閃回表功能合并到他們定制的應(yīng)用程序中。憑借基于時間點對象的恢復(fù)可用性、快速恢復(fù)和易用性,該工具相比于介質(zhì)恢復(fù)提供更多的好處。閃回表聯(lián)機執(zhí)行恢復(fù)操作 將指定表中的所有數(shù)據(jù)恢復(fù)到時間戳或 SCN 描述的先前的時間點。 自動恢復(fù)所有的表屬性(如索引、觸發(fā)器以及應(yīng)用程序所必需的內(nèi)容),這些應(yīng)用程序利用閃回的表才能發(fā)揮作用。 在分布式環(huán)境中維護任何遠程狀態(tài)。例如,所有應(yīng)用程序要求的表修改都被閃回。 按照約束規(guī)定保持數(shù)據(jù)完整性。Oracle 保留了所有從屬對象和參考的完整性。 即使在閃回操作以后,仍然能夠?qū)⑵浠謴?fù)到最初狀態(tài)。 閃回刪除 回收站是一個虛擬容器,所有被刪除的對象都駐留在這里。在回收站中,這些對象占據(jù)與創(chuàng)建它們時所占據(jù)的相同空間。如果在 USERS 表空間中創(chuàng)建表 EMP,那么刪除的表 EMP 保留在 USERS 表空間中。并不移動刪除的表和任一相關(guān)對象(如索引、約束、嵌套表和其他相關(guān)對象),僅對它們進行重命名,使其前綴為 BIN$$??梢岳^續(xù)訪問刪除表中的數(shù)據(jù),甚至可以依據(jù)刪除表使用閃回查詢。在刪除回收站對象前,每個用戶對回收站對象都擁有相同的權(quán)利和權(quán)限??梢酝ㄟ^查詢新回收站視圖來查看刪除表。回收站中的對象將保留在數(shù)據(jù)庫中,直到刪除對象的所有者決定使用新清除命令永久性刪除這些對象。按用戶的定額對回收站中的對象計數(shù)。但閃回刪除是一種非破壞性特性。如果發(fā)生下面的情況,將通過空間恢復(fù)過程自動清除回收站中的對象用戶創(chuàng)建新表或添加導(dǎo)致其超出定額的數(shù)據(jù)。 表空間需要擴展其文件大小,以適應(yīng)創(chuàng)建/插入操作。 錯誤刪除了表?沒問題。使用閃回刪除快速撤銷刪除。 閃回查詢 閃回查詢是隨 Oracle9i 一起引入的,它提供了查看存在于以前的數(shù)據(jù)的能力。默認情況下,數(shù)據(jù)庫上的操作使用最近提交的可用數(shù)據(jù)。如果希望查詢過去某個時間的數(shù)據(jù)庫,那么,可以使用閃回查詢特性進行此項操作。此特性可以指定時間或系統(tǒng)更改編號 (SCN),并使用提交的數(shù)據(jù)從對應(yīng)時間中進行查詢。當(dāng)使用自動撤銷管理時,閃回查詢機制最有效。 Oracle 數(shù)據(jù)庫將撤銷操作當(dāng)作第一等級的數(shù)據(jù)庫對象。撤銷操作具有持久性,可使數(shù)據(jù)庫系統(tǒng)繼續(xù)有效,也可導(dǎo)致數(shù)據(jù)庫系統(tǒng)崩潰或關(guān)閉。為獲取更佳性能,它還與其他數(shù)據(jù)庫對象分享數(shù)據(jù)庫緩沖存儲器。Oracle 數(shù)據(jù)庫使用超出事務(wù)處理提交范圍的撤銷操作,提供長期運行查詢的讀取一致性,并從邏輯損壞中恢復(fù)。 Oracle 數(shù)據(jù)庫提供了直接指定為保留而進行的撤銷數(shù)量的方法。此系統(tǒng)自動回收過期的撤銷操作,以便為新事務(wù)生成撤銷提供空間。撤銷保留值的選擇取決于長期運行查詢的長度以及邏輯損壞的恢復(fù)需求。然而,用戶可以不選擇指定的撤銷保留,以及允許系統(tǒng)為指定的撤銷空間提供最佳保留。此最佳保留考慮到長期運行查詢以及從邏輯損壞中恢復(fù)的最佳可能范圍。并不保證默認的撤銷保留。如果用盡用于現(xiàn)行事務(wù)的過期撤銷,那么,系統(tǒng)可以使用最早的未過期撤銷操作。 如果UNDO_RETENTION 設(shè)置為大于 5 天,那么,Oraclee 數(shù)據(jù)庫 10g 第 1 版中的一項新功能是可以查詢過去 5 天以前的數(shù)據(jù)。只要為撤銷表空間數(shù)據(jù)文件分配足夠的磁盤空間,那么,Oracle 將維護一段時間內(nèi)的撤消操作。下面描述了確保數(shù)據(jù)庫可以使用依賴于撤銷操作的閃回查詢和其他閃回特性所需要的步驟:確保數(shù)據(jù)庫使用一個撤銷表空間。將 UNDO_MANAGEMENT 初始化參數(shù)設(shè)置為自動指定。 將UNDO_RETENTION 初始化參數(shù)設(shè)置為一個可以使撤銷操作保留足夠時間的值,從而可以及時成功返回您的最長查詢或者從人為錯誤中恢復(fù)。 為了保證未過期的撤銷不被覆蓋,設(shè)置撤銷表空間的 RETENTION GUARANTEE 子句。 閃回查詢的一個獨有特性是可以查看過去的數(shù)據(jù),然后正確選擇如何處理此信息。您可以進行分析,然后撤銷更改,或者捕獲更改的數(shù)據(jù)以供將來處理。閃回查詢機制非常靈活,可以用于很多場合??捎糜冢翰樵冞^去存在的數(shù)據(jù)。 將當(dāng)前數(shù)據(jù)與過去的數(shù)據(jù)進行比較??梢员容^單獨行或進行更復(fù)雜的比較,如查找交集或合并。 恢復(fù)已刪除或更改的數(shù)據(jù)。 閃回版本查詢 閃回版本查詢提供了審計表行以及檢索有關(guān)更改行事務(wù)信息的方法。它檢索所有提交的行版本,這些行位于或曾經(jīng)位于發(fā)出查詢的時間和過去某一時間點之間。它利用自動撤銷管理完成此項操作。 閃回版本查詢是 SQL 的擴展,可用于檢索指定表中不同行的版本,此表存在于特定時間段內(nèi)。對于任一指定的表,每次執(zhí)行 COMMIT 語句時,都會創(chuàng)建一個新行版本。閃回版本查詢返回存在于指定時間段內(nèi)的每個行版本的行。使用 SELECT 語句的 VERSIONS BETWEEN 子句調(diào)用閃回版本查詢功能。 閃回版本查詢提供了新的附加列,這些列提供了有關(guān)行數(shù)據(jù)事務(wù)的詳細信息,此行數(shù)據(jù)允許 DBA 查明 Oracle 數(shù)據(jù)庫中數(shù)據(jù)更改的時間和方式。 VERSIONS_XID — 創(chuàng)建此行版本的事務(wù) id VERSIONS_OPERATION — 創(chuàng)建此行版本的操作(如刪除、插入和更新) VERSIONS_STARTSCN — 此行版本首次中出現(xiàn)時的 SCN VERSIONS_ENDSCN — 此行版本首次進行更改時的 SCN。 閃回版本查詢是 DBA 運行分析和回答“這是怎么發(fā)生的?”問題的強大工具。DBA 不僅可以運行手動分析,而且閃回版本查詢還是應(yīng)用程序開發(fā)人員的強大工具??梢詷?gòu)建用于審計目的的自定義應(yīng)用程序。并不是每個人都能夠真正解釋他/她的操作。 閃回事務(wù)查詢 您可能會發(fā)現(xiàn)表中的數(shù)據(jù)不知何故被不正確地更改了。為了研究該更改,可使用多個閃回查詢及時查看指定點的行數(shù)據(jù)。更高效的方法是,使用閃回版本查詢特性查看一定時間內(nèi)對行進行的所有更改以及相關(guān)的事務(wù) id。該特性允許將 VERSIONS BETWEEM 子句附加至 SELECT 語句,后者指定 SCN 或希望查看其間行值發(fā)生變化的時間戳范圍。 一旦確定錯誤事務(wù),就可使用閃回事務(wù)查詢特性識別該事務(wù)進行的其他更改,并請求撤銷 SQL 來沖銷這些更改。您可以通過 FLASHBACK_TRANSACTION_QUERY 視圖獲得事務(wù)歷史記錄和撤消 SQL。 如果需要將錯誤事務(wù)的結(jié)果倒退回去,可以手動執(zhí)行撤銷 SQL 語句,從而可以輕松地從用戶或應(yīng)用程序錯誤中恢復(fù)。閃回事務(wù)查詢可以提高對數(shù)據(jù)庫中問題的聯(lián)機診斷能力,并利于執(zhí)行事務(wù)分析和審計??偨Y(jié) 人為錯誤是導(dǎo)致系統(tǒng)故障的主要原因之一。這些錯誤很難避免,而且在沒有事先規(guī)劃和使用正確技術(shù)的情況下尤其難以恢復(fù)。“正確”技術(shù)是:Oracle 數(shù)據(jù)庫 11g。為什么犯錯誤只需幾秒,而恢復(fù)卻要花費數(shù)小時或數(shù)天?不應(yīng)如此并且現(xiàn)在也不會如此。閃回通過只在更改數(shù)據(jù)上運行引發(fā)了恢復(fù)變革。一條命令即可修復(fù)人為錯誤導(dǎo)致的損壞。閃回技術(shù)在去除了恢復(fù)的復(fù)雜性的同時,縮短了從難以預(yù)測的人為錯誤恢復(fù)的時間。
裝好oracle數(shù)據(jù)庫,我們準備用PLSQL Developer 這個軟件來連接服務(wù)器的數(shù)據(jù)庫!
下面簡單介紹設(shè)置此軟件并連接oracle數(shù)據(jù)庫的方法:
一、下載并安裝好PLSQL Developer(綠色版的也可以);
二、下載并解壓
Oracle免安裝版的客戶端:
三、建立tns配置文件。
1、在解壓的:“nstantclient-basic-nt-11.2.0.3.0”文件夾的下面建文件夾,路徑像這樣“nstantclient-basic-nt-11.2.0.3.0\neidown\admin“,其實這個倒是無所謂的,只是看起來與服務(wù)端上的更接近而已,與文章后面的環(huán)境變量要對應(yīng)。
2、拷貝服務(wù)端目錄“$ORACLE_HOME$\network\admin\tnsnames.ora”到客戶端的“nstantclient-basic-nt-11.2.0.3.0\neidown\admin“目錄,這個文件的內(nèi)容如下:(也可自行建立)
# tnsnames.ora Network Configuration File: /home/oradb/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.localdomain)
)
)
復(fù)制代碼以上的代碼 做個簡要的介紹,本例中安裝在linux中的oracle數(shù)據(jù)庫,其環(huán)境配置如下:
ORACLE_BASE=/home/oradb/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin?
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib?
LANG=C
復(fù)制代碼拷貝到客戶端后,用記事本打開它,修改如下幾個參數(shù):
# tnsnames.ora Network Configuration File: /home/oradb/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl.localdomain)
)
)
復(fù)制代碼重要:以上除了HOST是服務(wù)器ip外,其他三個紅字必須與服務(wù)端的這個文件一致,否則連接的時候?qū)?dǎo)致ORA-12514錯誤。
四、設(shè)置PLSQL Developer程序的oci庫路徑。
運行PLSQL Developer程序,在彈出的登錄框點“取消”
在菜單“工具-首選項”中的“連接”中,
找到“Oracle主目錄名”,輸入
解壓的:“nstantclient-basic-nt-11.2.0.3.0”文件夾的路徑 比如:?
"D:\PLSQL\instantclient_11_2"
找到“OCI庫”,輸入
解壓的:“nstantclient-basic-nt-11.2.0.3.0”文件夾下oci.dll文件的路徑,比如:
"D:\PLSQL\instantclient_11_2\oci.dll"
如下圖:
五、設(shè)置windows的環(huán)境變量
(右鍵“我的電腦”-屬性-高級-環(huán)境變量)
添加2個系統(tǒng)變量:
1、是指向TNS文件所在目錄的,這個目錄是Oracle的TNS文件所在目錄。TNS文件就是保存了連接信息的文件tnsnames.ora。
本例中 TNS_ADMIN??的值: D:\Program Files\PLSQL Developer\instantclient_11_2\network\admin
2、是指定數(shù)據(jù)庫使用的編碼。如果不設(shè)置成以下值,那么連接上數(shù)據(jù)庫后,你看到的所有中文的內(nèi)容將會是亂碼,都是一堆問號。
本例中 NLS_LANG??值:AMERICAN_AMERICA.AL32UTF8
如下圖:
如果服務(wù)器中的數(shù)據(jù)庫字符編碼是GBK則設(shè)置為:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
如果設(shè)置不對會亂碼。
注意:設(shè)定了環(huán)境變量之后,要注銷或者重啟電腦生效。 ? ?
reverse,如果你使用過英文財務(wù)系統(tǒng),會發(fā)現(xiàn)按鈕上都是reverse
沖銷的話用write
off,上面的reverse類似大陸的紅字沖銷,即做相反的分錄反過來沖賬
一般在國外系統(tǒng)(比如Oracle/SAP)中都是模塊化管理,例如在AR/AP中你只需要做一筆entry,只用選擇debit或credit的單獨一邊賬戶,那么另一邊一定對應(yīng)的是trade
debtors(creditors)
control,所以你按Reverse按鈕的時候,系統(tǒng)是自動生成一條負數(shù)的entry去沖銷之前的entry。而如果你要做general
ledger的時候呢,debit和credit是都需要手動指定的,這時候一般都算作是write
off,當(dāng)然GL也有reverse的功能,跟AR/AP是一樣的。
1、是帳套輸入科目編碼,不需要寫字的。
2、傳票沖銷點擊你先前的那張,然后選擇沖銷就行了。