程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle數據庫查看sql如何正常運行?

Oracle數據庫查看sql如何正常運行?

編輯:Oracle數據庫基礎

以下的文章主要描述的是Oracle數據庫查看sql的正確操作方案,下面就是文章的具體內容的講述,如果你也對Oracle數據庫查看sql的操作很感性的話,你就可以點擊此文章對其進行了解,以下就是文章的具體內容描述。

查詢表狀態:

  1. select uo.OBJECT_NAME,uo.OBJECT_ID,lo.Oracle_USERNAME,lo.LOCKED_MODE from  
  2. user_objects uo,v$locked_object lo where uo.OBJECT_ID=lo.OBJECT_ID;  

Oracle數據庫查看數據庫字符集

  1. select * from nls_database_parameters; 

查看表創建,修改時間

  1. select * from ALL_OBJECTS where object_name =upper('tname'); 

每個表所占空間

  1. select Segment_Name, round(Sum(bytes)/1024/1024,0) "MBytes"  
  2. From User_Extents Group By Segment_Name order by "MBytes" desc;  

查詢正在執行的存儲過程

  1. select * from dba_ddl_locks where owner='USERNAME'

Oracle數據庫查看表空間的使用情況

  1. select a.tablespace_name,round(a.bytes/(1024*1024),2) "Total MB",round(b.bytes/(1024*1024),2) "Used MB",  
  2. round(c.bytes/(1024*1024),2) "Free MB",round((b.bytes*100)/a.bytes,2)||'%' "% Used",  
  3. round((c.bytes*100)/a.bytes,2)||'%' "% Free"  
  4. from sys.sm$ts_avail a,sys.sm$ts_used b,sys.sm$ts_free c  
  5. where a.tablespace_name=b.tablespace_name and a.tablespace_name=c.tablespace_name;  

加\解鎖:

  1. lock table dept in share mode; 

仍然解不了,用以下方法:

  1. SELECT sid, serial#, username, osuser FROM v$session;  
  2. ALTER SYSTEM KILL SESSION 'sid,serial';  
  3. example:  
  4. ALTER SYSTEM KILL SESSION '131, 33574';  

如果對象被鎖住了,用Oracle的ALTER SYSTEM KILL SESSION 'SID,SERIAL#'不一定會將SESSION KILL掉,會報

  1. SQL> alter system kill session '200,18325'  
  2. *  
  3. ERROR at line 1:  
  4. ORA-00031: session marked for kill  

這樣的錯誤,所以可以在操作系統級上KILL掉進程

  1. select 'kill -9 '||a.spid "xxx" from v$process a,v$session b where a.addr=b.paddr and b.status='KILLED'

查找出被標志為KILLED的SESSION的操作系統進程號。

增加表空間,文件

  1. ALTER TABLESPACE bgtablespace01  
  2. ADD DATAFILE '/opt/Oracle/oradata/orcl/bgtablespace01/bgtablespace0190.dbf' SIZE 5120M ;  

更改用戶表空間

  1. alter user user modify default tablespace bgtablespace01; 

Oracle數據庫查看sql中針對大表增加有默認值的字段的操作方法

  1. ALTER TABLE tab_large add col_new Number(9) Default 1; 

該語句會對所有記錄進行填值操作,對於現場tab_large中存在3000W條左右數據,該步驟需要執行數小時。

可以將該語句改為為 

  1. ALTER TABLE tab_large add col_new Number(9);  
  2. ALTER TABLE tab_large modify col_new number(9) default 1;  

該語句只會對新增的記錄進行填值操作,只需要數秒。

如果需要對原來的值進行操作,可以在升級後進行update操作,這樣能夠節省大量的升級時間。

增加數據庫用戶

  1. create user sjzq identifIEd by sjzq123 default tablespace 
    BGTABLESPACE01 Temporary TABLESPACE Temp;  
  2. grant connect to sjzq;  
  3. grant select on abc.tname to sjzq;   

上述的相關內容就是對Oracle數據庫查看sql的描述,希望會給你帶來一些幫助在此方面。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved