Report_oracle_inspection.sql

这是一个关于Oracle数据库的检查报告,包含了用户密码过期情况、RMAN状态、数据库基本信息、实例状态、内存状况、CPU使用、对象状态、资源使用、数据文件、回滚段状态、约束和触发器状态等多方面的详细信息。此外,还涉及到数据库性能分析,如等待事件、redo相关等待、SQL性能、系统等待事件和碎片化情况等。
摘要由CSDN通过智能技术生成
set heading off
select ' 0-0 The User Password Expiry ' from dual;
set heading on
COL USERNAME FOR A10;
COL LIMIT FOR A10;
SELECT A.USERNAME,B.LIMIT FROM DBA_USERS A ,DBA_PROFILES B WHERE A.PROFILE=B.PROFILE AND B.RESOURCE_NAME='PASSWORD_LIFE_TIME';


set heading off
select ' 0 The Rman Status' from dual;
set heading on
COL START_TIME FOR A10;
COL END_TIME FOR A10;
COL STATUS FOR A21;
COL OBJECT_TYPE FOR A10;
COL OUTPUT_DEVICE_TYPE FOR A10;
COL OPERATION FOR A14;
select START_TIME,END_TIME,STATUS,OBJECT_TYPE,OUTPUT_DEVICE_TYPE,a.OPERATION from v$rman_status a where a.STATUS  <>'COMPLETED' order by START_TIME  desc;


set heading off
select '1 Database of the basic situation' from dual;


set heading off
select ' 1 The database version' from dual;
set heading on
select * from v$version;


set heading off
select ' 2 View the basic database information' from dual;
set heading on
set linesize 500
col host_name for a20
select dbid,name,instance_name,instance_name,version,parallel rac,host_name from v$database,v$instance;




set heading off
select ' 3 Instance Status' from dual;
set heading on
select instance_number,instance_name ,status from gv$instance;




set heading off
select ' 4 Memory conditions' from dual;
set heading on
select * from v$sgainfo;




set heading off
select ' 5 Cpu situation' from dual;
set heading on
col STAT_NAME for a20
col COMMENTS for a50
select stat_name,value,comments from v$osstat where stat_name in ('NUM_CPUS','IDLE_TIME','BUSY_TIME','USER_TIME','SYS_TIME','IOWAIT_TIME');




set heading off
select '2 Check the Oracle object status' from  dual;




set heading off
select ' 1 View the location of the parameter file' from dual;
show parameter spfile




set heading off
col NAME for a50
select ' 2 View the control file' from dual;
set heading on
select status,name from v$controlfile;




set heading off
select ' 3 View online logs' from dual;
set heading on
col MEMBER for a50
select group#,status,type,member from v$logfile;




set heading off
select ' 4 Check the log switching frequency' from dual;
set heading on
select sequence#,to_char(first_time,'yyyymmdd_hh24:mi:ss') firsttime,round((first_time-lag(first_time) over(order by first_time))*24*60,2) minutes from v$log_history where first_time > sysdate - 1 order by first_time ,minutes;




set heading off
select ' 5 View the data file' from dual;
set heading on
col NAME for a50
select name,status from v$datafile;




set heading off
select ' 6 View disabled Objects' from dual;
set heading on
set linesize 500
select owner,object_name,object_type from dba_objects where status!='VALID' and owner!='SYS' and owner!='SYSTEM';




set heading off
select ' 7 View rollback segment status' from dual;
set heading on
select segment_name,status from dba_rollback_segs;




set heading off
select ' 8 Check whether the constraint is disabled' from dual;
set heading on
set linesize 1000
SELECT owner, constraint_name, table_name, constraint_type, status 
     FROM dba_constraints 
    WHERE status ='DISABLE' and constraint_type='P';




set heading off
select ' 9 Check to see if triggers are disabled' from dual;
set heading on
col owner for a10
col taigger_name for a10
col table_name for a30
col table_name for a30
 SELECT owner, trigger_name, table_name, status FROM dba_triggers WHERE status = 'DISABLED';




set heading off
select ' 10 Job Disable' from dual;
set heading on
select job,what,last_date,next_date,failures,broken from dba_jobs Where schema_user='CAIKE';




set heading off
select ' 11 Check for invalid indexes' from dual;
set heading on
select index_name,table_name,tablespace_name,status From dba_indexes Where owner='CTAIS2' And status<>'VALID';




set heading off
select '3 Check the use of Oracle-related resources' from dual;




set heading off
select ' 1 View the table space usage' from dual;
set heading on
set linesize 100
SELECT UPPER(F.TABLESPACE_NAME) "tablespace_name",    
D.TOT_GROOTTE_MB "tablesapce_size(M)",    
D.TOT_GROOTTE_MB - F.TOTAL_BYTES "used_tablespace_size(M)",    
TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') "used%",    
F.TOTAL_BYTES "free_size(M)",    
F.MAX_BYTES "max_byte(M)"   
FROM (SELECT TABLESPACE_NAME,    
ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,    
ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES    
FROM SYS.DBA_FREE_SPACE    
GROUP BY TABLESPACE_NAME) F,    
(SELECT DD.TABLESPACE_NAME,    
ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB    
FROM SYS.DBA_DATA_FILES DD    
GROUP BY DD.TABLESPACE_NAME) D    
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME    
ORDER BY 4 DESC; 


select name, total_mb / 1024 as TOTAL_G
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
SELECT bs.sample_id, bs.item_id, bs.report_id, bs.order_no, bs.order_id, bs.order_business_type, bs.commission_date, bs.customer_name, bs.applicant, bs.phone, bs.receive_user_name, bs.contract_no, bs.special_requirements, bs.report_org_name, bs.report_org_address, bs.sample_name, bs.standard_instrument_name, bs.complete_day, bs.sample_remark AS remark, bs.standard_instrument_id, bs.sample_no, bs.factory_number, bs.item_name, /*bs.item_quantity,*/ bs.inspection_type, bs.mandatory_flag, bs.test_quantity, bs.sample_state, bs.current_site, bs.plan_complete_date, bs.affix, bs.ranges, bs.grade, bs.factory, bs.calibrat_point, bs.apply_dept, bs.specification, bs.final_fee, bs.service_type, CASE WHEN bs.actual_complete_date IS NOT NULL THEN DATEDIFF( bs.plan_complete_date, bs.actual_complete_date ) ELSE datediff( bs.plan_complete_date, now()) END AS surplus_days, bs.report_no, bs.is_report_back, bs.back_reason AS report_back_reason, bs.is_just_certificate, bs.report_state, bs.temper, bs.humidity, bs.test_result, bs.test_date, bs.next_test_date, bs.test_cycle, bs.test_address, bs.generate_time, bs.point_report_id, bs.is_merge, bs.circulation_flag, bs.item_proposal_fee AS proposal_fee, bs.change_price_reason, bs.test_user_name, bs.group_id, bs.group_name, bs.charging_num, bs.other_fee, bs.receivable_fee, bs.affix_quantity, bs.test_org, bs.out_org_order_no, bs.out_org_sample_no, bs.business_user_name, bs.pdf_path, bs.settlement_state, bs.result_describe, bsa.attach_id FROM view_sample_info bs JOIN bus_sample_report bsr ON bs.report_id = bsr.id JOIN bus_sample sa ON bsr.sample_id = sa.id JOIN bus_sample_attr bsa ON sa.id = bsa.id 根据bs.commission_date 进行排序最近的排上面 bs.commission_date
07-15
你可以使用 `ORDER BY` 子句根据 `bs.commission_date` 字段进行排序,以将最近的日期排在前面。以下是示例代码: ```sql SELECT bs.sample_id, bs.item_id, bs.report_id, bs.order_no, bs.order_id, bs.order_business_type, bs.commission_date, bs.customer_name, bs.applicant, bs.phone, bs.receive_user_name, bs.contract_no, bs.special_requirements, bs.report_org_name, bs.report_org_address, bs.sample_name, bs.standard_instrument_name, bs.complete_day, bs.sample_remark AS remark, bs.standard_instrument_id, bs.sample_no, bs.factory_number, bs.item_name, /*bs.item_quantity,*/ bs.inspection_type, bs.mandatory_flag, bs.test_quantity, bs.sample_state, bs.current_site, bs.plan_complete_date, bs.affix, bs.ranges, bs.grade, bs.factory, bs.calibrat_point, bs.apply_dept, bs.specification, bs.final_fee, bs.service_type, CASE WHEN bs.actual_complete_date IS NOT NULL THEN DATEDIFF(bs.plan_complete_date, bs.actual_complete_date) ELSE DATEDIFF(bs.plan_complete_date, now()) END AS surplus_days, bs.report_no, bs.is_report_back, bs.back_reason AS report_back_reason, bs.is_just_certificate, bs.report_state, bs.temper, bs.humidity, bs.test_result, bs.test_date, bs.next_test_date, bs.test_cycle, bs.test_address, bs.generate_time, bs.point_report_id, bs.is_merge, bs.circulation_flag, bs.item_proposal_fee AS proposal_fee, bs.change_price_reason, bs.test_user_name, bs.group_id, bs.group_name, bs.charging_num, bs.other_fee, bs.receivable_fee, bs.affix_quantity, bs.test_org, bs.out_org_order_no, bs.out_org_sample_no, bs.business_user_name, bs.pdf_path, bs.settlement_state, bs.result_describe, bsa.attach_id FROM view_sample_info bs JOIN bus_sample_report bsr ON bs.report_id = bsr.id JOIN bus_sample sa ON bsr.sample_id = sa.id JOIN bus_sample_attr bsa ON sa.id = bsa.id ORDER BY bs.commission_date DESC; ``` 在上述 SQL 查询中,我们添加了 `ORDER BY` 子句,并使用 `bs.commission_date DESC` 来按照 `bs.commission_date` 字段降序排列结果。这将把最近的日期放在前面。如果你想升序排列,可以使用 `ASC` 关键字,如 `bs.commission_date ASC`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值