Time of Update: 2018-12-07
1、查出被鎖的表。SELECT lpad(' ',decode(l.xidusn ,0,3,0))||l.oracle_username User_name, o.owner,o.object_name,o.object_type,s.sid,s.serial# FROM v$locked_object l,dba_objects o,v$session s WHERE l.object_id=o.object_id AND l.session_id=s.sid ORDER BY
Time of Update: 2018-12-07
儘管Oracle系統本身已經提供了若干種對系統效能進行調節的技術,但是,假如資料庫設計本身就有問題特別是在結構上設計得尤其糟糕,那你縱有天大的本事又能奈何?因此,Oracle資料庫的設計者完全有必要弄清楚(從項目著手設計開始)該如何建立穩固的Oracle資料結構,在保證可維護性和可擴充性的同時以最快的速度從資料庫中擷取資訊。 讓我們把籠罩在資料庫技術外圍的複雜理論和存心不讓人明白的技術行話扔一邊去,其實,說白了你就只需要記住一點,這也是牽扯到資料庫效能的最重要最簡單因素:磁碟I/O。磁碟I/O
Time of Update: 2018-12-07
在MS Sql Server下,寫sql寫習慣了,突然需要在Oracle下寫sql,說實話原則上沒多大區別,可是有些Oracle內帶函數如果不瞭解,不去用,有時候還挺麻煩。我接下來準備寫個小總結,把做項目中涉及到的一些Oracle函數列舉出來,一方面為了自己以後尋找方便(本人年紀大了,腦袋不好用了,呵呵);另一方面也希望給大家一個方便,通過討論可以互相學習,汲取各種經驗。開始了:1.NULLIF()SELECT ename, NULLIF (comm, 0) COMM FROM
Time of Update: 2018-12-07
多表聯集查詢 通過串連可以建立多表查詢,多表查詢的資料可以來自多個表,但是表之間必須有適當的串連條件。為了從多張表中查詢,必須識別串連多張表的公用列。一般是在WHERE子句中用比較子指明串連的條件。 忘記說明表的串連條件是常見的一種錯誤,這時查詢將會產生表串連的笛卡爾積(即一個表中的每條記錄與另一個表中的每條記錄作串連產生的結果)。一般N個表進行串連,需要至少N-1個串連條件,才能夠正確串連。兩個表串連是最常見的情況,只需要說明一個串連條件。 兩個表的串連有四種串連方式: * 相等串連。 *
Time of Update: 2018-12-07
許可權分類1、系統許可權:系統規定使用者使用資料庫的許可權,即具備該許可權的使用者可在資料庫中執行特定操作(系統許可權是對使用者而言)。2、對象許可權:對象許可權允許使用者對特定對象(如表、視圖、序列、過程、函數或程式包)執行特定的操作。系統許可權管理系統許可權分類: DBA:
Time of Update: 2018-12-07
由於oracle10佔用很大的系統資源,如果在平時不用的時候一直處於啟動狀態是對系統資源的極大浪費。所以我們可以通過“管理工具”中的“服務”將所有oracle10的服務改為手動,當需要使用oracle時通過批次檔來啟動服務即可或者直接在“服務”中一個個啟動也可。10g啟動 1: @echo off 2: net start OracleCSService 3: net start OracleJobSchedulerZHPT 4: net start
Time of Update: 2018-12-07
需要操作一下Oracle的表,因為沒有安裝PL/SQL,所以想用一下Oralce的Database Control這個工具,但是開啟時,IE開啟的結果是無法顯示。 檢查一下系統服務,發現OracleDBConsole[sid]沒有啟動起來,嘗試手工啟動,提示無法啟動,查看日誌也沒有任何有意義的資訊。 嘗試使用命令列的方式啟動服務,在命令列下:emctl start
Time of Update: 2018-12-07
一、 Oracle資料庫設定預設資料表空間問題 DBA們經常會遇到一個這樣令人頭疼的問題:不知道誰在Oracle上建立了一個使用者,建立時,沒有給這個使用者指定預設資料表空間,所以這個使用者就會採用預設的資料表空間——system資料表空間。導致系統資料表空間迅速被使用者資料佔滿,直至宕機。在10G中,DBA有辦法避免這種問題了——線上指定系統預設資料表空間:ALTER DATABASE DEFAULT TABLESPACE
Time of Update: 2018-12-07
簡單的說:1、找(可在安裝oracle用戶端的機子)oci.dll 和 oraociei10.dll tnsnames.ora這三個檔案,放在你的應用程式目錄下即可2、還得有個 tnsnames.ora 檔案可用記事本開啟 編輯3、如果提示 不能載入 oci.DLL 檔案,說明你的電腦系統老,沒有 msvcr71.DLL 檔案,同樣放在你的程式目錄下 或放在系統檔案目錄下4、如果看到表的資料中 中文是亂碼(中文顯示'???'),你就在你的系統的註冊表中 註冊一個值 即可 詳情
Time of Update: 2018-12-07
create or replace procedure p_rebuild_all_index (tablespace_name in varchar2)as sqlt varchar(200);begin for idx in (select index_name, tablespace_name, status from user_indexes where tablespace_name=tablespace_name and status='VALID' and tempo
Time of Update: 2018-12-07
我項目中用ssis在兩個oralce之間匯入資料,由於資料量比較大,有70多萬的資料,結果導到8萬多的時候就報錯了,出錯代碼為ROW-00060 ,試了幾次都是一樣,到網上找了半天,也沒有發現有好的解決辦法,最終只好放棄這個方案,後面發現oracle可以在兩個oracle之間建立資料庫連接,我建立串連後,再導資料,70多萬資料幾秒中就搞定了.看樣子ssis問題還是比較多的,在同構資料庫之間還是多找找他們自己的資料匯入方案.
Time of Update: 2018-12-07
下面總結出MySQL轉換Oracle的幾點注意事項,希望對大家有所協助。 1.自動成長的資料類型處理 MySQL有自動成長的資料類型,插入記錄時不用操作此欄位,會自動獲得資料值。Oracle沒有自動成長的資料類型,需要建立一個自動成長的序號,插入記錄時要把序號的下一個值賦於此欄位。 CREATE SEQUENCE 序號的名稱 (最好是表名 序號標記) INCREMENT BY 1 START WITH 1 MAXVALUE 99999 CYCLE NOCACHE; 其中最大的值按欄位的長度來定,
Time of Update: 2018-12-07
需求:資料庫裡面有兩張表,結構不完全相同,需要即時同步兩張表的部分欄位實現方案:兩張表上分別建立觸發器進行同步,但是這樣操作會有個問題,就會導致觸發器迴圈觸發。那麼就需要在觸發器進行觸發前,進行一個判斷,如果操作是由觸發器引發的,那麼就不做操作,反之,執行觸發器定義的操作。想要實現這個,我開始考慮過在觸發器a裡面暫時使觸發器b失效,但是發現alter trigger
Time of Update: 2018-12-07
--利用拼接操作符“||”或者 CONCAT('','')函數,將不同列的值 拼接成一個 字串-- 方法一:推薦SELECT S.TEAM ||'**'|| S.NAME ||'**'|| S.JOB_NUMBER FROM STAFF S WHERE S.PASS ='123456' AND S.TEAM ='南方'--方法二:繁瑣。SELECT CONCAT( CONCAT( CONCAT( CONCAT(S.TEAM,'**' ),S.NAME) ,'**') ,
Time of Update: 2018-12-07
在過去的十年中, Oracle 已經成為世界上最專業的資料庫之一。對於 IT 專家來說,就是要確保利用 Oracle 的強大特性來提高他們公司的生產力。最有效方法之一是通過 Oracle 調優。它有大量的調整參數和技術來改進你的 Oracle 資料庫的效能。 Oracle 調優是一個複雜的主題。關於調優可以寫整整一本書,不過,為了改善 Oracle 資料庫的效能,有一些基本的概念是每個 Oracle DBA 都應該遵從的。 在這篇簡介中,我們將簡要地介紹以下的 Oracle
Time of Update: 2018-12-07
查看使用者串連斷掉某一串連查看串連iporacle中查看使用者串連select username,sid,serial#,status from v$session where username <>'1'; select sid,ses.serial#,ses.username,pro.username,pro.spid,status from v$session ses,v$process pro where ses.username='PRODUCT' and
Time of Update: 2018-12-07
導讀: 一、 引言: 復原段是資料庫的一部分,它記錄資料庫變更的資訊。使用這些資訊實現資料庫的讀一致性及其恢複。若復原段出現故障,則資料庫不能正常啟動,導致資料庫癱瘓,使用者無法讀寫資料。若能將復原段的故障排除,則不會影響使用者的實際資料。筆者最近在實際工作中遇到一個問題:使用者將復原段資料表空間(rbs)的資料庫檔案(rbs01.dbf)錯誤刪除,以致使資料庫無法正常運行,下面上筆者排除該方法的處理步驟。 二、 步驟: 1、
Time of Update: 2018-12-07
導讀: 前幾天都是用Package來完成streams的配置,但在管理上用OEM會感覺更為直觀,當然對所有相關的Package很瞭解的話,也就都差不多了。在9i的OEM中看上去對streams的功能還不是很強。只是簡單的一些應用。下面有時間就要搞10gR2,想跳過10gR1的。下面帖一個在OEM建立單表複製的過程指令碼。 來源資料庫: GATES 目標資料庫: CLONE 1.設定作業 - Turn on supplemental logging and switch
Time of Update: 2018-12-07
應用程式層: 應用程式層就是指RAC資料庫了,這一層有若干資源群組成,每個資源都是一個進程或者一組進程組成的完整服務,這一層的管理和維護都是圍繞這些資源進行的。有如下命令: onsctl,srvctl,crs_stat三個命令。命令:onsctl 這個命令用於管理配置ONS(Oracle Notification Service). ONS是Oracle Clusterware實現FAN Event
Time of Update: 2018-12-07
說明:下文中的一些說明和範例程式碼摘自CSDN,恕不一一指明出處,在此一併對相關作者表示感謝! 如果作者有異議,請來信說明 1 文法 在Oracle中,可以建立以下兩種暫存資料表: 1) 會話特有的暫存資料表 CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification> ) ON COMMIT PRESERVE ROWS; 2) 事務特有的暫存資料表 CREATE GLOBAL TEMPORARY