oracle数据库日常保养或巡检语句实践整理汇总

发布于:2024-06-23 ⋅ 阅读:(149) ⋅ 点赞:(0)

目录

1.目的

2.操作工具

3.实践说明

 1.检查Oracle实例状态

2.检查Oracle在线日志状态

3.检查Oracle表空间状态

4.检查Oracle所有数据文件状态

5.检查Oracle数据库连接情况

6.检查Oracle表容量占用大小

7.检查Oracle备份

8.检查数据库表空间的使用情况

4.总结


1.目的

用于数据库是oracle数据库的系统,定时保养巡检过程中进行检查的oracle语句。

2.操作工具

本次语句是常用的oracle语句,实践使用的是toad工具进行对oracle数据库查询。

PS TOAD是常说的小青蛙,用于oracle数据库管理。

3.实践说明

项次

检查内容

语句

1

检查数据库基本状况

SELECT VERSION ,INSTANCE_NAME ,HOST_NAME ,STARTUP_TIME, TIME,STATUS,DATABASE STATUS

FROM V$INSTANCE

2

检查Oracle在线日志状态

SELECT GROUP#,STATUS,TYPE,MEMBER

FROM V$LOGFILE

3

检查Oracle表空间状态

SELECT TABLESPACE NAME,STATUS
FROM DBA TABLESPACES;


SELECT *
FROM DBA TABLESPACES;

4

检查Oracle所有数据文件状态

SELECT NAME ,STATUS
FROM V$DATAFILE;

SELECT *

FROM DATAFILE

5

检查Oracle连接情况

SELECT VALUE FROM V$PARAMETER

WHERE NAME ='processes'                       --MAX CON


3SELECT COUNT(*)FROM V$SESSION - -NOW CON

6

检查Oracle表容量占用大小

SELECT  OWNER,--用户
              TABLE NAME,--表名
              NUM ROWS,--表中行数

               BLOCKS*8/1024 KB--/1024 MB --表中占用的容量

FROM DBA TABLES
WHERE OWNER ='XXX' --自定义用户
ORDER BY KB DESC
--ORDER BY MB DESC

7

检查Oracle备份

liunx 系统:root 用 crontab -l 指令可以查看到备份的工作排程

8

检查数据库表空间的使用情况

select f.tablespace_name, a.total, f.free, round((f.free / a.total) * 100) "% Free Percent"
from (select tablespace_name, sum(bytes / (1024 * 1024)) total from dba_data_files 
    group by tablespace_name) a, 
(select tablespace_name, round(sum(bytes / (1024 * 1024))) free from dba_free_space
    group by tablespace_name) f
WHERE a.tablespace_name = f.tablespace_name(+)
order by "% Free Percent";

 1.检查Oracle实例状态

  1.    INSTANCE_NAME为数据库名称:XXX
  2.    VERSION为数据库的版本号:11.....
  3.    STATUS:OPEN表示数据库为开启状态
  4.    DATABASE_STATUS:Active表示数据库正常运行状
语句
SELECT VERSION ,INSTANCE NAME ,HOST NAME ,STARTUP TIME,STATUS,DATABASE STATUS

FROM V$INSTANCE
截图
  1. 2.检查Oracle在线日志状态

  2.    TYPE:ONLINE表示数据库在线运行
  3.    输出结果:>=3条记录
  4.    STATUS:应该为非“INVALID”,非“DELETED”,“STATUS”显示为空表示正常
语句
SELECT GROUP#,STATUS,TYPE,MEMBER
FROM V$LOGFILE
截图

3.检查Oracle表空间状态

   输出结果中STATUS:ONLINE表示正常

语句
SELECT TABLESPACE NAME,STATUS
FROM DBA TABLESPACES;

SELECT *
FROM DBA TABLESPACES;

截图

4.检查Oracle所有数据文件状态

   STATUS:SYSTEM表示系统文件正常,

                    ONLINE表示数据库文件正常

语句

SELECT NAME ,STATUS
FROM V$DATAFILE;

SELECT *

FROM DATAFILE

截图

5.检查Oracle数据库连接情况

   查询数据库允许的最大进程数为1500,查看当前会话连接数35,属于正常范围。

语句

SELECT VALUE FROM V$PARAMETER

WHERE NAME ='processes'


3SELECT COUNT(*)FROM V$SESSION

截图

6.检查Oracle表容量占用大小

语句

SELECT  OWNER,--用户
              TABLE NAME,--表名
              NUM ROWS,--表中行数

               BLOCKS*8/1024 KB--/1024 MB --表中占用的容量

FROM DBA TABLES
WHERE OWNER ='XXX' --自定义用户
ORDER BY KB DESC
--ORDER BY MB DESC

截图

 

文件大小:Bytes, KB, MB, GB, TB, PB, EB, ZB, YB
1 Bytes 字节 计算机数据存储的基本单位,一字节等于8位. 1B=8bit
2 KB 千字节 用于较小的文件 1KB=1024B
3 MB 兆字节 用于中等大小的文件:图片或音频文件 1MB=1024KB
4 GB 吉字节 用于较大的文件:电影或系统文件 1GB=1024MB
5 TB 太字节 用于非常大的数据集:数据库或大型服务器的存储 1TB=1024GB
6 PB 拍字节 用于极大的数据集:云存储服务或大型数据中心 1PB=1024TB
7 EB 艾字节 用于超大规模的数据集:全球范围内的互联网数据 1EB=1024PB
8 ZB 泽字节 用于表述巨大的数据集:全球范围内的所有数据 1ZB=1024EB
9 YB 尧字节 在未来的超级计算世界中使用 1YB=1024ZB

7.检查Oracle备份

语句 liunx 系统:root 用 crontab -l 指令可以查看到备份的工作排程
截图

8.检查数据库表空间的使用情况

语句 select f.tablespace_name, a.total, f.free, round((f.free / a.total) * 100) "% Free Percent"
from (select tablespace_name, sum(bytes / (1024 * 1024)) total from dba_data_files 
    group by tablespace_name) a, 
(select tablespace_name, round(sum(bytes / (1024 * 1024))) free from dba_free_space
    group by tablespace_name) f
WHERE a.tablespace_name = f.tablespace_name(+)
order by "% Free Percent";
截图

4.总结


网站公告

今日签到

点亮在社区的每一天
去签到