Oracle维护常用SQL语句是
1、查看表空间的名称及大小
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;
2、查看表空间物理文件的名称及大小
select tablespace_name, file_id, file_name,
round(bytes/(1024*1024),0) total_space
f...全部
1、查看表空间的名称及大小
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;
2、查看表空间物理文件的名称及大小
select tablespace_name, file_id, file_name,
round(bytes/(1024*1024),0) total_space
from dba_data_files
order by tablespace_name;
3、查看回滚段名称及大小
select segment_name, tablespace_name, r。
status,
(initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent,
max_extents, v。curext CurExtent
From dba_rollback_segs r, v$rollstat v
Where r。
segment_id = v。usn(+)
order by segment_name ;
4、查看控制文件
select name from v$controlfile;
5、查看日志文件
select member from v$logfile;
6、查看表空间的使用情况
select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space
group by tablespace_name;
SELECT A。
TABLESPACE_NAME,A。BYTES TOTAL,B。BYTES USED, C。BYTES FREE,
(B。BYTES*100)/A。BYTES "% USED",(C。BYTES*100)/A。
BYTES "% FREE"
FROM SYS。SM$TS_AVAIL A,SYS。SM$TS_USED B,SYS。SM$TS_FREE C
WHERE A。TABLESPACE_NAME=B。
TABLESPACE_NAME AND A。TABLESPACE_NAME=C。TABLESPACE_NAME;
7、查看数据库库对象
select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status;
8、查看数据库的版本
Select version FROM Product_component_version
Where SUBSTR(PRODUCT,1,6)='Oracle';
9、查看数据库的创建日期和归档方式
Select Created, Log_Mode, Log_Mode From V$Database;
10、如何远程判断Oracle数据库的安装平台
select * from v$version;
1
1、查看数据表的参数信息
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
1
2、查看还没提交的事务
select * from v$locked_object;
select * from v$transaction;
1
4、回滚段查看
select rownum, sys。
dba_rollback_segs。segment_name Name, v$rollstat。extents
Extents, v$rollstat。rssize Size_in_Bytes, v$rollstat。
xacts XActs,
v$rollstat。gets Gets, v$rollstat。waits Waits, v$rollstat。writes Writes,
sys。dba_rollback_segs。
status status from v$rollstat, sys。dba_rollback_segs,
v$rollname where v$rollname。name(+) = sys。
dba_rollback_segs。segment_name and
v$rollstat。usn (+) = v$rollname。usn order by rownum
1
5、捕捉运行很久的SQL
column username format a12
column opname format a16
column progress format a8
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
/
16。
查看数据表的参数信息
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
17。
查找object为哪些进程所用
select
p。spid,
s。sid,
s。serial# serial_num,
s。username user_name,
a。type object_type,
s。
osuser os_user_name,
a。owner,
a。object object_name,
decode(sign(48 - command),
1,
to_char(command), 'Action Code #' || to_char(command) ) action,
p。
program oracle_process,
s。terminal terminal,
s。program program,
s。status session_status
from v$session s, v$access a, v$process p
where s。
paddr = p。addr and
s。type = 'USER' and
a。sid = s。sid and
a。object='SUBSCRIBER_ATTR'
order by s。username, s。
osuser
18。耗资源的进程(top session)
select s。schemaname schema_name, decode(sign(48 - command), 1,
to_char(command), 'Action Code #' || to_char(command) ) action, status
session_status, s。
osuser os_user_name, s。sid, p。spid , s。serial# serial_num,
nvl(s。username, '[Oracle process]') user_name, s。
terminal terminal,
s。program program, st。value criteria_value from v$sesstat st, v$session s , v$process p
where st。
sid = s。sid and st。statistic# = to_number('38') and ('ALL' = 'ALL'
or s。status = 'ALL') and p。addr = s。
paddr order by st。value desc, p。spid asc, s。username asc, s。osuser asc
19。查看锁(lock)情况
select /*+ RULE */ ls。
osuser os_user_name, ls。username user_name,
decode(ls。type, 'RW', 'Row wait enqueue lock', 'TM', 'DML enqueue lock', 'TX',
'Transaction enqueue lock', 'UL', 'User supplied lock') lock_type,
o。
object_name object, decode(ls。lmode, 1, null, 2, 'Row Share', 3,
'Row Exclusive', 4, 'Share', 5, 'Share Row Exclusive', 6, 'Exclusive', null)
lock_mode, o。
owner, ls。sid, ls。serial# serial_num, ls。id1, ls。id2
from sys。dba_objects o, ( select s。osuser, s。
username, l。type,
l。lmode, s。sid, s。serial#, l。id1, l。id2 from v$session s,
v$lock l where s。sid = l。
sid ) ls where o。object_id = ls。id1 and o。owner
'SYS' order by o。owner, o。
object_name
根据sid查是哪台电脑的链接
column osuser format a15
column username format a10
column machine format a30
select osuser,machine,username,sid,serial# from v$session where sid='128';
根据sid查对应的sql
select SID,SQL_TEXT from v$open_cursor where SID='128';。收起