ORACLE解鎖

-----1、ORACLE解鎖record is locked by another user -------
在操作ORACLE數據庫的時候,由於執行完,沒有COMMIT,直接把PL/SQL關閉掉,後來導致那張表被鎖住,當編輯時就會出現這個信息,
record is locked by another user! 
當出現這種情況的時候,只要操作下面幾個步驟就可以解鎖了。 
1、查看鎖 
select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid ; 
2、Kill 
--alter system kill session 'sid,serial#'; 
alter system kill session '151,14678


------------------------------------------
--------2、oracle initialization or shutdown in progress解決方法 -------------------------
今兒一直在測試服務器的遷移問題,不斷地創建表空間、創建數據庫、創建用戶。後來感覺創建這麼多東西太佔用磁盤空間,
心想刪除一下吧,於是,我們執行了dbca命令,將沒用的數據庫統統刪除,將dbf和dmp文件也統統刪除了,再後來發現服務無法啓動了,
連接時會提示oracle initialization or shutdown in progress,後來經過查詢發現,原來這些dbf和dmp不是說刪除就能刪除的
(當時我們明明發現有的不允許刪除,我還是故意停停掉oracle服務,然後將其刪除滴),最終導致數據庫實例無法啓動。
我的解決過程如下:
Microsoft Windows [版本 5.2.3790]
(C) 版權所有 1985-2003 Microsoft Corp.


C:\Documents and Settings\Administrator>sqlplus /nolog


SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 3月 4 18:40:13 2011


Copyright (c) 1982, 2005, Oracle.  All rights reserved.


SQL> connect system/hope;
ERROR:
ORA-01033: ORACLE initialization or shutdown in progress【就是這個錯誤】


【解決方法】


SQL> connect sys/hope as sysdba
已連接。
SQL> shutdown normal
ORA-01109: 數據庫未打開




已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> start mount
SP2-0310: 無法打開文件 "mount.sql"
SQL> startup mount
ORACLE 例程已經啓動。


Total System Global Area  612368384 bytes
Fixed Size                  1332348 bytes
Variable Size             183151492 bytes
Database Buffers          423624704 bytes
Redo Buffers                4259840 bytes
數據庫裝載完畢。
SQL> alter database open;
alter database open
*
第 1 行出現錯誤:
ORA-01157: 無法標識/鎖定數據文件 5 - 請參閱 DBWR 跟蹤文件
ORA-01110: 數據文件 5: 'C:\TYKM.DBF'




SQL> alter database datafile 5 offline drop;【5是數據文件中的5】


數據庫已更改。


SQL> alter database open;【我們一直循環這個語句,直至不再提示錯誤】


數據庫已更改。


SQL> shutdown normal
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> startup
ORACLE 例程已經啓動。


Total System Global Area  612368384 bytes
Fixed Size                  1332348 bytes
Variable Size             187345796 bytes
Database Buffers          419430400 bytes
Redo Buffers                4259840 bytes
數據庫裝載完畢。
數據庫已經打開。
這樣就解決啦~~~哈哈哈~~~~~~~~~~~~~~~~~~~~
-------------------------------------------------------
3.oracle union查詢中BLOB字段出錯問題,ora-00932:數據類型不一致:應爲 -,但卻獲得BLOB:


select blobf from table1


union


select blobf from table2


出錯:ora-00932:數據類型不一致:應爲 -,但卻獲得BLOB
因爲:union會對字段類型進行比較(相等和不等判斷),oracle不支持對大數據類型的比較操作。 


解決辦法:使用union all就可以了。union all不涉及比較。


---------------------------------------------------------
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章