1---整理的一些oracle常用的脚本

本文提供了Oracle数据库管理中常用的SQL查询技巧,包括查看当前用户的SID、角色权限、表空间使用情况等13个实用示例。
1.如何查看当前 SQL*PLUS 用户的 sid 和 serial#?
在 SQL*PLUS 下,运行:
select sid, serial#, status from v$session --当前所有的会话信息

where audsid=userenv('sessionid');

       SID    SERIAL# STATUS
---------- ---------- --------
       985      35289 ACTIVE


2.如何查看当前数据库的字符集?
在 SQL*PLUS 下,运行:
select userenv('language') from dual;
或:select userenv('lang') from dual; 

USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK


3.查看当前用户的缺省表空间

select username,default_tablespace from user_users; 

USERNAME                 DEFAULT_TABLESPACE
------------------------------ ------------------------------
SYS                              SYSTEM

4.查看当前用户的角色 

select * from user_role_privs;
USERNAME                       GRANTED_ROLE                  ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
SYS                            ADM_PARALLEL_EXECUTE_TASK   YES YES NO
SYS                            APEX_ADMINISTRATOR_ROLE       YES YES NO
。。。
SYS                            XDB_WEBSERVICES_OVER_HTTP      YES YES NO
SYS                            XDB_WEBSERVICES_WITH_PUBLIC    YES YES NO


5.查看当前用户的系统权限和表级权限

select * from user_sys_privs;
select * from user_tab_privs;

6.查看控制文件

select name from v$controlfile; 


7.查看日志文件
select member from v$logfile;

8.查看表空间使用情况

select sum(bytes)/(1024*1024) as free_space,tablespace_name from dba_free_space
group by tablespace_name;


9.查看数据库库对象
select owner, object_type, status, count(*) count# from all_objects group by owner,
object_type, status;


10.查看数据库的版本

Select version FROM Product_component_version
Where SUBSTR(PRODUCT,1,6)='Oracle';


11.查看数据库创建日期和归档方式

Select Created,  Log_Mode From V$Database; 


12.捕捉运行很久的SQL

select username,sid,opname, round(sofar*100 / totalwork,0) || '%' as progress,
time_remaining,sql_text
from v$session_longops , v$sql
where time_remaining <> 0
and sql_address = address
and sql_hash_value = hash_value
;


13.查看数据表的参数信息

SELECT partition_name, high_value, high_value_length, tablespace_name,
pct_free, pct_used, ini_trans, max_trans, initial_extent,
next_extent, min_extent, max_extent, pct_increase, FREELISTS,
freelist_groups, LOGGING, BUFFER_POOL, num_rows, blocks,
empty_blocks, avg_space, chain_cnt, avg_row_len, sample_size,
last_analyzed
FROM dba_tab_partitions
--WHERE table_name = :tname AND table_owner = :towner
ORDER BY partition_position
 


14.查看表空间的名称及大小

select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size 

from dba_tablespaces t, dba_data_files d where t.tablespace_name =

d.tablespace_name group by t.tablespace_name; 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值