一线运维 DBA 五年经验常用 SQL 大全(一)

--1.查看表空间使用率。

select total.tablespace_name,round(total.MB, 2) as Total_MB,round(total.MB - free.MB, 2) as Used_MB,round((1 - free.MB / total.MB) * 100, 2) || '%' as Used_Pct 
from (select tablespace_name,sum(bytes) / 1024 / 1024 as MB from dba_free_space group by tablespace_name) free,
(select tablespace_name,sum(bytes) / 1024 / 1024 as MB from dba_data_files group by tablespace_name) total 
where free.tablespace_name = total.tablespace_name order by used_pct desc;

一线运维 DBA 五年经验常用 SQL 大全(一)_第1张图片

 --1.1查询单个表空间使用率。<上一步查询出来表空间名称传入下面>

select total.tablespace_name,
round(total.MB, 2) as Total_MB,
round(total.MB - free.MB, 2) as Used_MB,
round((1 - free.MB / total.MB) * 100, 2) || '%' as Used_Pct from
(select tablespace_name,sum(bytes) / 1024 / 1024 as MB from dba_free_space where tablespace_name='SYSTEM' group by tablespace_name) free,
(select tablespace_name,sum(bytes) / 1024 / 1024 as MB from dba_data_files where tablespace_name='SYSTEM' group by tablespace_name) total
where free.tablespace_name = total.tablespace_name order by used_pct desc;

一线运维 DBA 五年经验常用 SQL 大全(一)_第2张图片

--2.查看临时表空间数据文件位置,大小,及是否自动扩展。

select tablespace_name,file_name,bytes/1024/1024 mb ,autoextensible from dba_data_files where tablespace_name in ('') order by tablespace_name;
select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;

 一线运维 DBA 五年经验常用 SQL 大全(一)_第3张图片

--查看所有临时表空间大小

SELECT D.TABLESPACE_NAME,SPACE "SUM_SPACE(M)",BLOCKS SUM_BLOCKS, 
USED_SPACE "USED_SPACE(M)",ROUND(NVL(USED_SPACE,0)/SPACE*100,2) "USED_RATE(%)",
NVL(FREE_SPACE,0) "FREE_SPACE(M)"
FROM 
(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES)/(1024*1024),2) SPACE,SUM(BLOCKS) BLOCKS
FROM DBA_TEMP_FILES
GROUP BY TABLESPACE_NAME) D,
(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES_USED)/(1024*1024),2) USED_SPACE,
ROUND(SUM(BYTES_FREE)/(1024*1024),2) FREE_SPACE
FROM V$TEMP_SPACE_HEADER
GROUP BY TABLESPACE_NAME) F
WHERE  D.TABLESPACE_NAME = F.TABLESPACE_NAME(+);

 一线运维 DBA 五年经验常用 SQL 大全(一)_第4张图片

--3.查看ASM磁盘空间。

select name,state,type,free_mb,total_mb,usable_file_mb from v$asm_diskgroup;

 --4.查询oracle的连接数

select count(*) from v$session;

一线运维 DBA 五年经验常用 SQL 大全(一)_第5张图片

--5.查看不同用户的连接数

select username,count(username) from v$session where username is not null group by username;

 --6.查看回收站

show recyclebin

 --7.清空回收站

Purge recyclebin;--清空当前用户的回收站
Purge dba_recyclebin;--清空所有用户的回收站

一线运维 DBA 五年经验常用 SQL 大全(一)_第6张图片

--8.删除表,不进入回收站

 drop table tableName purge;

--9.查询用户下所有创建表的语句

select
'select dbms_metadata.get_ddl('||''''||'TABLE'||''''||','||''''||table_name||''''||') from dual;'||chr(10)||'select '||''''||'/'||''''|| ' from dual;' 
from user_tables;

一线运维 DBA 五年经验常用 SQL 大全(一)_第7张图片

--10.查询当时创建用户的语句

select dbms_metadata.get_ddl('USER','USERNAME') from dual; #USERNAME入参

select dbms_metadata.get_ddl('USER','C##ROOTUSER') from dual;

一线运维 DBA 五年经验常用 SQL 大全(一)_第8张图片

select dbms_metadata.get_ddl('USER',u.username) from dba_users u;

一线运维 DBA 五年经验常用 SQL 大全(一)_第9张图片

--11.查询普通用户语句

select username from dba_users where account_status='OPEN';

 一线运维 DBA 五年经验常用 SQL 大全(一)_第10张图片

 --16.查询告警日志文件位置

show parameter dump

一线运维 DBA 五年经验常用 SQL 大全(一)_第11张图片

select * from v$diag_info;

一线运维 DBA 五年经验常用 SQL 大全(一)_第12张图片

--17.创建用户

create user username identified  by password default tablespace dbdbs;

create user c##testuser  identified  by "1qaz@09876!@#$" default tablespace YZH;

一线运维 DBA 五年经验常用 SQL 大全(一)_第13张图片

 
--18.创建组 

sql代码

 groupadd -g 1000 oinstall  #oinstall组:是清单目录组(Oracle Inventory group),用于管理清单目录(Inventory)

groupadd -g 1001 dba #dba组:用于数据库管理

 shell代码 确保没有dba组和oinstall

 cat /etc/group| grep oinstall

cat /etc/group| grep dba

--19.赋权

grant connect,resource,dba to USER

grant connect,resource,dba TO c##testuser;

 一线运维 DBA 五年经验常用 SQL 大全(一)_第14张图片

--21.查询数据库中所有用户下占用物理空间内存大小

select owner,sum(bytes)/1024/1024 MB from dba_segments group by owner;

一线运维 DBA 五年经验常用 SQL 大全(一)_第15张图片

--23.查看归档是否开启

archive log list;
select log_mode from v$database;

 NO 非归档模式 

一线运维 DBA 五年经验常用 SQL 大全(一)_第16张图片

 归档模式

一线运维 DBA 五年经验常用 SQL 大全(一)_第17张图片

一线运维 DBA 五年经验常用 SQL 大全(一)_第18张图片

 --29.查询DBLINK

select * from dba_db_links

一线运维 DBA 五年经验常用 SQL 大全(一)_第19张图片

 --32.查询系统检查点SCN的命令

select CHECKPOINT_CHANGE# from v$database;

一线运维 DBA 五年经验常用 SQL 大全(一)_第20张图片

--33.查询控制文件中数据文件的SCN命令

select name,file#,checkpoint_change# from v$datafile;

一线运维 DBA 五年经验常用 SQL 大全(一)_第21张图片

--34.数据文件头部的SCN号

select name,checkpoint_change# from v$datafile_header;

 一线运维 DBA 五年经验常用 SQL 大全(一)_第22张图片

--35. 控制文件中的数据文件终止scn

select name,last_change# from v$datafile;

一线运维 DBA 五年经验常用 SQL 大全(一)_第23张图片

待更新

你可能感兴趣的:(dba,sql,数据库)