--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;
--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;
--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;
--查看所有临时表空间大小
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(+);
--3.查看ASM磁盘空间。
select name,state,type,free_mb,total_mb,usable_file_mb from v$asm_diskgroup;
--4.查询oracle的连接数
select count(*) from v$session;
--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;--清空所有用户的回收站
--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;
--10.查询当时创建用户的语句
select dbms_metadata.get_ddl('USER','USERNAME') from dual; #USERNAME入参
select dbms_metadata.get_ddl('USER','C##ROOTUSER') from dual;
select dbms_metadata.get_ddl('USER',u.username) from dba_users u;
--11.查询普通用户语句
select username from dba_users where account_status='OPEN';
--16.查询告警日志文件位置
show parameter dump
select * from v$diag_info;
--17.创建用户
create user username identified by password default tablespace dbdbs;
create user c##testuser identified by "1qaz@09876!@#$" default tablespace YZH;
--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;
--21.查询数据库中所有用户下占用物理空间内存大小
select owner,sum(bytes)/1024/1024 MB from dba_segments group by owner;
--23.查看归档是否开启
archive log list;
select log_mode from v$database;
NO 非归档模式
归档模式
--29.查询DBLINK
select * from dba_db_links
--32.查询系统检查点SCN的命令
select CHECKPOINT_CHANGE# from v$database;
--33.查询控制文件中数据文件的SCN命令
select name,file#,checkpoint_change# from v$datafile;
--34.数据文件头部的SCN号
select name,checkpoint_change# from v$datafile_header;
--35. 控制文件中的数据文件终止scn
select name,last_change# from v$datafile;
待更新