ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle 常用sql(轉)

oracle 常用sql(轉)

原创 Linux操作系统 作者:ma_vicky 时间:2011-03-24 11:24:56 0 删除 编辑
--oracle 常用的sql
F_7NH*V7["b wp:W$L25530136
(@7r(uK*|~25530136查看Oracle的所有连接:ITPUB个人空间$Q!t&|/} nd"p
select * from v$session where username is not null
"al!CD;e E25530136
n O-Z6v0[ `Qdm7Ll25530136查看不同用户的连接数量:ITPUB个人空间.X(Ea2n8N*T M
select username,count(username) from v$session where username is not null group by usernameITPUB个人空间|S"E5x:ij)F"R(w t
ITPUB个人空间L)A.af!^!R
查看哪个过程被锁:
2g(J4f m-sPR;l Q o_25530136SELECT * FROM V$DB_OBJECT_CACHE WHERE WNER='过程的所属用户' AND LOCKS!='0';ITPUB个人空间$E)]#?Wp;W
ITPUB个人空间 S0h*fbz
查看锁定数据库的用户:
B R m-M:T8Z1\FfV%cv25530136select * from v$locked_object;
+jJ WqW-rk8h25530136ITPUB个人空间B!^.`LV3]%O+Mg3V
查看没有提交的事务:ITPUB个人空间C*x2s5N tJ
select * from v$transaction;--从这句也可以查看锁定数据库的用户ITPUB个人空间#L` qz5M/R

X*gvs,cS|4G W25530136获得当前数据库的session数及数据库启动以来最大的session数ITPUB个人空间wb'N;Q5]2K
select sum(sessions_current) cur_sessions,sum(sessions_highwater) high_sessions from V$LICENSE;ITPUB个人空间 t{p2j6eT
ITPUB个人空间/xp~*[,hv
查看某个表所在的表空间名:
;[5I@ eGK4f:h+A25530136select tablespace_name from user_tables where table_name='BILL_ORG'--说明:表名必须大写
d9[:I?.A,o25530136ITPUB个人空间ty`8R4FMS `
查看数据文件存放的路径:ITPUB个人空间t0B5H-Ib
select tablespace_name,file_id,bytes/1024/1024,file_nameITPUB个人空间HE~2EC5G M#J-r:R
     from dba_data_files  order by file_idITPUB个人空间;j.MuONH1dh

9P ks~.N|'GF25530136查看当前用户下的所有表:ITPUB个人空间sE4pvW!KskAa
select * from all_tables where wner='YSPJ'
G!Q&L%D5Z/f c25530136
;zd@ y _"XiylE25530136查看运行过的SQL语句:ITPUB个人空间(tqa1MAaF%q
SELECT SQL_TEXT FROM V$SQL
zt#]n L;t25530136
;R~"TFI8d25530136查看客户端机器名、IP地址、登录客户端的用户:
#R_&?u Y8JW$@Z25530136ITPUB个人空间G6?b ]/s+S
SELECT
_ HE#P V0`m25530136SYS_CONTEXT('USERENV','TERMINAL') TERMINAL,
7y3o \t|\25530136SYS_CONTEXT('USERENV','HOST') HOST,ITPUB个人空间p B jZ;OD
SYS_CONTEXT('USERENV','OS_USER') OS_USER,ITPUB个人空间nc8zgu
SYS_CONTEXT('USERENV','IP_ADDRESS') IP_ADDRESS
x }1q(tTd25530136FROM DUAL
B I/r Ub3j25530136
2\T+L_5e5v+r;~ ~25530136查看某个SID执行的SQL语句的运行情况:ITPUB个人空间4WwZ;PSy
select command_type,sql_text,sharable_mem,persistent_mem,runtime_mem,ITPUB个人空间} w2[2G$az@
sorts,version_count,loaded_versions,open_versions,users_opening,executions,users_executing,loads,ITPUB个人空间-_L lQ;Rf
first_load_time,invalidations,parse_calls,disk_reads,buffer_gets,rows_processed,sysdate start_time,
D2Qm#\+w ^;M25530136sysdate finish_time,'>' || address sql_address,'N' status
sf6h'Dm.ho](I1zI25530136from v$sqlareaITPUB个人空间(qL&R W M,F_
where address = (select sql_address from v$session where sid =11)ITPUB个人空间"r2@HX j6h

Ct1G:Fw_!t_C jd25530136查看某个表所占用的空间的大小:ITPUB个人空间"O4d wlQ D'e#w
select sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper('BILL_MAIN');ITPUB个人空间2mH GI TbzT0y8e:y
ITPUB个人空间C w|A m?w
ITPUB个人空间P6GD3@o }g
查看某个存储过程的源代码ITPUB个人空间qHx`Y8m$s2e
select text from all_source where wner=user and name=upper('month_BenYueJieYu_2');
SF V:vsOy25530136
+{IJ)O&D P25530136查看当前数据徊的用户的SID:
k i`4{/RpI*e1^P25530136select username,sid,serial# from v$session;ITPUB个人空间-u5T4B%py
ITPUB个人空间&w*Sb,isP
将当前某个用户的连接杀死:比如杀死YSPJ用户的连接:
},[Av*g(EE RuS0Dc25530136先执行alter system kill session 'sid,serial#';ITPUB个人空间+{$M)xb0l6P ?_T
根据返回的SID和serial,执行下面的语句:ITPUB个人空间(kr_|YYR
alter system kill session 'sid,serial#';--其中SID和serial为上面的SQL语句返回的值。
3i6p`CX$Z1PL#U25530136ITPUB个人空间zp@5tQu"n
授予权限:
cj)[r [}9S6IM[25530136GRANT CONNECT, RESOURCE TO 用户名;
Tq @QZ3? Py25530136GRANT SELECT ON 表名 TO 用户名;
)e0W zq4yu iV25530136GRANT SELECT, INSERT, DELETE ON表名 TO 用户名1, 用户名2;ITPUB个人空间E'}*qbF4F#s)u&Cc

;is E [IQ!^{25530136回收权限ITPUB个人空间 ]$@ M*V3V&SQ|4v
REVOKE CONNECT, RESOURCE FROM 用户名;
X5W+t~jz,K.b&GZ25530136REVOKE SELECT ON 表名 FROM 用户名;ITPUB个人空间 g4y i(ky#`\
REVOKE SELECT, INSERT, DELETE ON表名 FROM 用户名1, 用户名2;
X,T hL X V25530136
;aw5VDW25530136修改数据库的系统日期:
&e2|Sl;w/T25530136alter session set nls_date_format='yyyymmddhh24miss';ITPUB个人空间f6P-n/rubb-z/m_%Sf

Fi8a)G(k/jkX*?w ^25530136查看日志文件的存放路径:
9zFr2~"` X25530136select member from v$logfile
W/W\3Y9~^/S"L25530136ITPUB个人空间n.YPMh$DZ/l
查看表空间的使用情况:ITPUB个人空间o.\im)|,i3N$B5U
select sum(bytes)/(1024*1024) as free_space,tablespace_name
&zR/Yp/~)CV%nv25530136  from dba_free_space
+|g_u#NG.T C6X25530136  group by tablespace_name;
,Q*@+vq*nx/w9t:g25530136
o[;z@j.Q25530136查看数据库的大小和表空间的使用情况:
p1K3u(Na6V25530136select b.file_id  文件ID,
y.Sb0yz25530136  b.tablespace_name  表空间,
iw-i5g"@25530136  b.file_name     物理文件名,
lR&?g*u z25530136  b.bytes       总字节数,
,I \nNs3j l25530136   (b.bytes-sum(nvl(a.bytes,0)))   已使用,ITPUB个人空间tX.vh%^q,C
  sum(nvl(a.bytes,0))        剩余,
;d4K{3Xrc(jc25530136  sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比
ji"N5D3i-bCvD.H25530136  from dba_free_space a,dba_data_files bITPUB个人空间p1v#{*AzD h#F%X
  where a.file_id=b.file_id
&Hmn,Zi5h|m25530136  group by b.tablespace_name,b.file_name,b.file_id,b.bytes
O#e(a7j9a:q/t"M uq25530136  order by b.tablespace_nameITPUB个人空间|&h3k)vy] c)a7u)W"UI

d'j a!~ U ~#v,j25530136查看连接池中的SQL语句:ITPUB个人空间y!]"FdL"ns
select sql_text from v$sqlarea
GH-J0A:fN$s5pe25530136ITPUB个人空间tZUDVP w&@(^
查看Oracle的版本:ITPUB个人空间SWi2c"Mj5s.oE
select * from v$versionITPUB个人空间/Y8ox W\(I8~"Z w
ITPUB个人空间_@ X7js
监控是哪个用户在运行SQL语句:
1k E,iS1P%r x25530136SELECT osuser, username, sql_text from v$session a, v$sqltext b
:Z[p Kn*Wk}'t4e25530136where a.sql_address =b.address order by address, piece;
nfKb C25530136
;s8rT9f'IF S#e2q5SR25530136查看ORACLE所使用的字符集:
SO9GjI0c25530136select * from sys.props$ where name='NLS_CHARACTERSET';
-d$Q3qJ1Y8?-Y R25530136ITPUB个人空间 ?}(td8D$W
改数据库全局名称,建公共的数据库链接。
AwcmpzM"~25530136  ①、用system身份登录ying数据库
F(N w$B$zQ\5x#Q25530136  alter database rename global_name to ying.test.com.cnITPUB个人空间G!x%t/^n,J,CFA
  用system身份登录orcl数据库:
/X `Vk5s:JpWZ25530136   alter database rename global_name to orcl.test.com.cn 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25530136/viewspace-690333/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-03-14

  • 博文量
    7
  • 访问量
    5257