本文档风哥主要介绍Oracle SR(Service Request)创建相关知识,包括SR的概念、SR组成、SR使用、SR配置、SR监控、SR故障处理等内容,由风哥教程参考Oracle官方文档Troubleshooting内容编写,适合DBA人员在学习和测试中使用,如果要应用于生产环境则需要自行确认。
Part01-基础概念与理论知识
1.1 SR的概念
Oracle SR(Service Request)是Oracle Support提供的技术支持请求机制,用于向Oracle技术支持团队报告问题和获取帮助。SR是Oracle客户获取技术支持的主要渠道,通过SR可以报告产品缺陷、获取补丁、解决技术问题等。SR管理是DBA日常工作的重要组成部分。更多视频教程www.fgedu.net.cn
- 官方支持:获取Oracle官方技术支持
- 问题跟踪:全程跟踪问题处理进度
- 专业团队:由Oracle专业工程师处理
- 补丁获取:获取官方补丁和修复
- 知识积累:积累问题解决经验
1.2 SR组成
Oracle SR组成:
- SR编号:唯一的SR标识号
- 问题描述:详细的问题描述
- 环境信息:数据库版本、操作系统等
- 诊断文件:事件打包文件、日志等
- 优先级:SR的紧急程度
1. SR编号
– 唯一的SR标识号
– 格式:SR号码(如:3-12345678901)
– 用于跟踪和查询
2. 问题描述
– 详细的问题描述
– 问题发生时间
– 问题影响范围
– 复现步骤
3. 环境信息
– 数据库版本
– 操作系统版本
– 硬件配置
– 补丁级别
4. 诊断文件
– 事件打包文件
– 跟踪文件
– 告警日志
– AWR报告
5. 优先级
– 1级:严重问题,系统宕机
– 2级:重要问题,功能受限
– 3级:一般问题,有临时解决方案
– 4级:低优先级,咨询问题
1.3 SR使用
Oracle SR使用:
- 问题报告:报告产品缺陷和问题
- 补丁请求:请求特定补丁
- 技术咨询:技术咨询和指导
- 功能请求:请求新功能
- 文档问题:报告文档错误
Part02-生产环境规划与建议
2.1 SR规划
Oracle SR规划要点:
– 创建时机:确定何时需要创建SR
– 信息准备:准备必要的环境和诊断信息
– 优先级设置:合理设置SR优先级
– 跟踪管理:跟踪SR处理进度
# 创建时机规划
– 严重错误:ORA-00600、ORA-07445等
– 数据损坏:数据块损坏等问题
– 性能问题:严重的性能问题
– 补丁需求:需要特定补丁
# 信息准备规划
– 环境信息:数据库版本、操作系统
– 问题描述:详细的问题描述
– 诊断文件:事件打包文件
– 复现步骤:问题复现步骤
# 优先级设置规划
– 1级:生产系统宕机
– 2级:重要功能不可用
– 3级:一般问题
– 4级:咨询问题
# 跟踪管理规划
– 定期检查:定期检查SR状态
– 及时响应:及时响应Oracle工程师的问题
– 记录归档:记录解决方案并归档
2.2 SR场景
Oracle SR场景:
- ORA错误:ORA-00600、ORA-07445等内部错误
- 数据损坏:数据块损坏、数据丢失
- 性能问题:严重的性能问题
- 补丁请求:请求特定补丁
- 功能咨询:功能使用咨询
1. ORA错误
– ORA-00600内部错误
– ORA-07445异常错误
– ORA-01555快照太旧
– 其他ORA错误
2. 数据损坏
– 数据块损坏
– 索引损坏
– 控制文件损坏
– 日志文件损坏
3. 性能问题
– 严重的性能下降
– 资源争用问题
– 并发问题
– 内存问题
4. 补丁请求
– Bug修复补丁
– 安全补丁
– 功能补丁
– 合并补丁
5. 功能咨询
– 功能使用咨询
– 最佳实践咨询
– 架构设计咨询
– 升级迁移咨询
2.3 SR最佳实践
Oracle SR最佳实践:
- 准确描述:准确描述问题现象和影响
- 完整信息:提供完整的环境和诊断信息
- 合理优先级:合理设置SR优先级
- 及时响应:及时响应Oracle工程师的问题
- 记录归档:记录解决方案并归档
Part03-生产环境项目实施方案
3.1 SR配置
3.1.1 准备SR创建信息
SQL> select * from v$version;
BANNER
——————————————————————————–
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production
PL/SQL Release 19.0.0.0.0 – Production
CORE 19.0.0.0.0 Production
TNS for Linux: Version 19.0.0.0.0 – Production
NLSRTL Version 19.0.0.0.0 – Production
# 2. 收集数据库信息
SQL> select name, open_mode, database_role from v$database;
NAME OPEN_MODE DATABASE_ROLE
——— ——————– —————-
FGEDUDB READ WRITE PRIMARY
# 3. 收集操作系统信息
$ uname -a
Linux db01 5.4.17-2102.200.13.el8uek.x86_64 #2 SMP Fri Jun 24 13:15:15 PDT 2026 x86_64 x86_64 x86_64 GNU/Linux
# 4. 收集补丁信息
$ $ORACLE_HOME/OPatch/opatch lsinventory
Oracle Interim Patch Installer version 13.9.4.2.6
Copyright (c) 2026, Oracle Corporation. All rights reserved.
Oracle Home : /oracle/app/oracle/product/19c/dbhome_1
Central Inventory : /oracle/app/oraInventory
from : /oracle/app/oracle/product/19c/dbhome_1/oraInst.loc
OPatch version : 13.9.4.2.6
OUI version : 13.9.4.0.0
# 5. 收集初始化参数
SQL> show parameter spfile;
NAME TYPE VALUE
———————————— ———– ——————————
spfile string /oracle/app/oracle/product/19c/dbhome_1/dbs/spfileFGEDUDB.ora
# 6. 收集内存配置
SQL> show sga;
Total System Global Area 4294967296 bytes
Fixed Size 8904768 bytes
Variable Size 1191182336 bytes
Database Buffers 3087007744 bytes
Redo Buffers 7872512 bytes
# 7. 创建信息收集脚本
$ vi /home/oracle/scripts/collect_sr_info.sh
#!/bin/bash
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# SR信息收集脚本
export ORACLE_HOME=/oracle/app/oracle/product/19c/dbhome_1
export ORACLE_SID=FGEDUDB
export PATH=$ORACLE_HOME/bin:$PATH
INFO_DIR=”/home/oracle/sr_info”
mkdir -p $INFO_DIR
echo “Collecting SR information…” > $INFO_DIR/sr_info.txt
echo “========================================” >> $INFO_DIR/sr_info.txt
# 收集数据库版本
echo “” >> $INFO_DIR/sr_info.txt
echo “Database Version:” >> $INFO_DIR/sr_info.txt
sqlplus -s / as sysdba <
set heading off
select * from v\$version;
exit
EOF
# 收集数据库状态
echo “” >> $INFO_DIR/sr_info.txt
echo “Database Status:” >> $INFO_DIR/sr_info.txt
sqlplus -s / as sysdba <
set heading off
select name, open_mode, database_role from v\$database;
exit
EOF
# 收集操作系统信息
echo “” >> $INFO_DIR/sr_info.txt
echo “Operating System:” >> $INFO_DIR/sr_info.txt
uname -a >> $INFO_DIR/sr_info.txt
# 收集补丁信息
echo “” >> $INFO_DIR/sr_info.txt
echo “Patch Information:” >> $INFO_DIR/sr_info.txt
$ORACLE_HOME/OPatch/opatch lsinventory >> $INFO_DIR/sr_info.txt 2>&1
# 收集内存信息
echo “” >> $INFO_DIR/sr_info.txt
echo “Memory Configuration:” >> $INFO_DIR/sr_info.txt
sqlplus -s / as sysdba <
set heading off
show sga;
exit
EOF
echo “SR information collected in $INFO_DIR/sr_info.txt”
# 8. 执行信息收集脚本
$ chmod +x /home/oracle/scripts/collect_sr_info.sh
$ /home/oracle/scripts/collect_sr_info.sh
3.1.2 创建事件打包
$ adrci
ADRCI: Release 19.0.0.0.0 – Production on Tue Mar 31 10:00:00 2026
adrci> set homepath diag/rdbms/fgedudb/FGEDUDB
adrci> show problem
ADR Home = /oracle/app/oracle/diag/rdbms/fgedudb/FGEDUDB:
*************************************************************************
PROBLEM_ID PROBLEM_KEY LAST_INCIDENT LASTINC_TIME
——————– ———————————————————– ——————– ————————————–
1 ORA 600 [1234] 12345 2026-03-31 10:00:00.123456 +08:00
2 ORA 7445 [ksasnd] 12346 2026-03-31 09:00:00.123456 +08:00
2 rows fetched
# 2. 创建事件打包
adrci> ips create package problem 1
Created package 1 based on problem id 1, correlation level typical
# 3. 添加相关文件
adrci> ips add file /oracle/app/oracle/diag/rdbms/fgedudb/FGEDUDB/trace/alert_FGEDUDB.log into package 1
Added file /oracle/app/oracle/diag/rdbms/fgedudb/FGEDUDB/trace/alert_FGEDUDB.log into package 1
# 4. 生成打包文件
adrci> ips generate package 1 in /home/oracle
Generated package 1 in file /home/oracle/ORA600_20260331100000_COM_1.zip, mode complete
# 5. 验证打包文件
$ ls -lh /home/oracle/ORA600_20260331100000_COM_1.zip
-rw-r–r– 1 oracle dba 1.2M Mar 31 10:00 /home/oracle/ORA600_20260331100000_COM_1.zip
# 6. 创建打包自动化脚本
$ vi /home/oracle/scripts/create_package.sh
#!/bin/bash
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# 创建事件打包脚本
export ORACLE_HOME=/oracle/app/oracle/product/19c/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
PROBLEM_ID=$1
OUTPUT_DIR=”/home/oracle/incident_packages”
mkdir -p $OUTPUT_DIR
if [ -z “$PROBLEM_ID” ]; then
echo “Usage: $0
exit 1
fi
echo “Creating package for problem $PROBLEM_ID…”
# 创建打包 #!/bin/bash SR_NUMBER=$1 if [ -z “$SR_NUMBER” ]; then echo “$(date): Tracking SR $SR_NUMBER” > $LOG_DIR/sr_$SR_NUMBER.log # 提示用户手动检查SR状态 echo “$(date): SR tracking completed” >> $LOG_DIR/sr_$SR_NUMBER.log # 2. 设置脚本权限 # 3. 执行跟踪脚本 # 4. 创建SR状态检查脚本 #!/bin/bash LOG_DIR=”/home/oracle/sr_tracking” echo “$(date): Checking SR status…” > $LOG_DIR/sr_status.log # 列出所有SR跟踪文件 echo “” >> $LOG_DIR/sr_status.log cat $LOG_DIR/sr_status.log # 5. 设置脚本权限 # 6. 执行状态检查脚本 # 7. 设置定期检查 # 每天早上9点检查SR状态 #!/bin/bash LOG_DIR=”/home/oracle/sr_management” echo “$(date): Managing SR responses…” > $LOG_DIR/management.log # 检查待响应的SR # 提示用户 echo “” >> $LOG_DIR/management.log cat $LOG_DIR/management.log # 2. 设置脚本权限 # 3. 执行响应管理脚本 # 4. 创建SR文档模板 ======================================== SR Number: [To be assigned] 1. Problem Description: 2. Environment Information: 3. Steps to Reproduce: 4. Error Messages: 5. Diagnostic Files: 6. Workaround (if any): 7. Business Impact: ======================================== # 5. 使用模板创建SR文档 # SR创建步骤 # 1. 收集环境信息 # 2. 创建事件打包 # 3. 准备SR文档 ======================================== SR Number: [To be assigned] 1. Problem Description: 2. Environment Information: 3. Steps to Reproduce: 4. Error Messages: 5. Diagnostic Files: 6. Workaround (if any): 7. Business Impact: ======================================== # 4. 登录Oracle Support创建SR # 5. 跟踪SR状态 # 6. 响应Oracle工程师的问题 Current Instance DB Id DB Name Inst Num Instance Specify the Report Type Type Specified: html Instances in this Workload Repository schema DB Id Inst Num DB Name Instance Host Database Id and Instance Number for the AWR Report Using 1234567890 for Database Id Specify the number of days of snapshots to choose from Enter value for num_days: 1 Listing the last day’s Completed Snapshots Snap Specify the Begin and End Snapshot Ids Enter value for end_snap: 126 Specify the Report Name Enter value for report_name: /home/oracle/awr_report.html Report written to /home/oracle/awr_report.html # 2. 创建性能问题打包 adrci> set homepath diag/rdbms/fgedudb/FGEDUDB adrci> ips create package Created package 2 adrci> ips add file /home/oracle/awr_report.html into package 2 adrci> ips add file /oracle/app/oracle/diag/rdbms/fgedudb/FGEDUDB/trace/alert_FGEDUDB.log into package 2 adrci> ips generate package 2 in /home/oracle # 3. 准备SR文档 ======================================== SR Number: [To be assigned] 1. Problem Description: 2. Environment Information: 3. Performance Metrics: 4. Changes: 5. Diagnostic Files: 6. Business Impact: ========================================
在生产环境中使用SR的完整案例: 某企业生产数据库出现ORA-00600错误,需要创建SR获取Oracle技术支持。 #!/bin/bash export ORACLE_HOME=/oracle/app/oracle/product/19c/dbhome_1 SR_TYPE=$1 if [ -z “$SR_TYPE” ]; then echo “$(date): Creating SR for $SR_TYPE” > $LOG_DIR/sr_creation.log # 收集环境信息 # 创建事件打包 if [ ! -z “$PROBLEM_ID” ]; then # 准备SR文档 echo “” >> $LOG_DIR/sr_creation.log cat $LOG_DIR/sr_creation.log # 2. 设置脚本权限 # 3. 测试脚本 在SR故障处理过程中的方法和技巧: # 1. 问题识别 # 2. 信息收集 # 3. SR创建 # 4. 跟踪响应 # 5. 问题关闭 # 示例:SR故障处理 # 1. 问题识别 优化SR管理配置的最佳实践: — 可以扩展为记录到表中 Procedure created. # 2. 执行管理存储过程 — SR Management — PL/SQL procedure successfully completed. # 3. 创建SR历史表 Table created. SQL> create sequence sr_history_seq; Sequence created. # 4. 记录SR历史 1 row created. SQL> commit; Commit complete. # 5. 查看SR历史 SR_NUMBER CREATE_DATE PROBLEM_TYPE PRIORITY STATUS Oracle SR是获取Oracle官方技术支持的重要渠道,具有以下特点: Oracle SR检查清单: Oracle SR工具推荐: 本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
PACKAGE_ID=$(adrci <3.2 SR监控
3.2.1 配置SR跟踪脚本
$ vi /home/oracle/scripts/track_sr.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# SR跟踪脚本
LOG_DIR=”/home/oracle/sr_tracking”
mkdir -p $LOG_DIR
echo “Usage: $0
exit 1
fi
echo “Please check SR status at:”
echo “https://support.oracle.com/epmos/faces/SrDetail?srNumber=$SR_NUMBER”
$ chmod +x /home/oracle/scripts/track_sr.sh
$ /home/oracle/scripts/track_sr.sh 3-12345678901
$ vi /home/oracle/scripts/check_sr_status.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# SR状态检查脚本
mkdir -p $LOG_DIR
echo “Active SRs:” >> $LOG_DIR/sr_status.log
ls -1 $LOG_DIR/sr_*.log 2>/dev/null >> $LOG_DIR/sr_status.log
echo “Please check SR status at Oracle Support website:” >> $LOG_DIR/sr_status.log
echo “https://support.oracle.com” >> $LOG_DIR/sr_status.log
$ chmod +x /home/oracle/scripts/check_sr_status.sh
$ /home/oracle/scripts/check_sr_status.sh
$ crontab -e
0 9 * * * /home/oracle/scripts/check_sr_status.sh >> /home/oracle/sr_tracking/status.log 2>&1
3.2.2 配置SR响应管理
$ vi /home/oracle/scripts/manage_sr_response.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# SR响应管理脚本
mkdir -p $LOG_DIR
echo “Checking for SRs requiring response…” >> $LOG_DIR/management.log
echo “Please check the following:”
echo “1. Oracle Support website for SR updates”
echo “2. Email notifications from Oracle Support”
echo “3. SR dashboard for pending actions”
echo “SR Response Checklist:” >> $LOG_DIR/management.log
echo “1. Review Oracle engineer’s questions” >> $LOG_DIR/management.log
echo “2. Provide requested information” >> $LOG_DIR/management.log
echo “3. Upload requested files” >> $LOG_DIR/management.log
echo “4. Test provided solutions” >> $LOG_DIR/management.log
echo “5. Update SR with test results” >> $LOG_DIR/management.log
$ chmod +x /home/oracle/scripts/manage_sr_response.sh
$ /home/oracle/scripts/manage_sr_response.sh
$ vi /home/oracle/templates/sr_template.txt
Oracle Service Request Template
========================================
Date Created: [Date]
Priority: [1/2/3/4]
– What is the problem?
– When did it start?
– What is the impact?
– Database Version:
– Operating System:
– Hardware:
– Patch Level:
– Step 1:
– Step 2:
– Step 3:
– Error code:
– Error message:
– Stack trace:
– Incident package:
– Alert log:
– Trace files:
– Temporary solution:
– System availability:
– User impact:
– Data impact:
$ cp /home/oracle/templates/sr_template.txt /home/oracle/sr_docs/SR_$(date +%Y%m%d).txt
3.3 SR故障处理
3.3.1 ORA-00600错误SR创建
SQL> select * from scott.emp where empno = 7369;
select * from scott.emp where empno = 7369
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [1234], [1], [2], [3], [4], [5], [6], [7]
$ /home/oracle/scripts/collect_sr_info.sh
$ /home/oracle/scripts/create_package.sh 1
$ vi /home/oracle/sr_docs/SR_ORA600_20260331.txt
Oracle Service Request
========================================
Date Created: 2026-03-31
Priority: 2
– ORA-00600 internal error when querying EMP table
– Error started on 2026-03-31 10:00:00
– Impact: Unable to query employee data
– Database Version: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0
– Operating System: Linux 5.4.17-2102.200.13.el8uek.x86_64
– Hardware: x86_64, 64GB RAM
– Patch Level: 19.15.0.0.0
– Step 1: Connect to database as SCOTT user
– Step 2: Execute: select * from emp where empno = 7369
– Step 3: ORA-00600 error occurs
– Error code: ORA-00600
– Error message: internal error code, arguments: [1234], [1], [2], [3], [4], [5], [6], [7]
– Incident ID: 12345
– Incident package: ORA600_20260331100000_COM_1.zip
– Alert log: included in package
– Trace files: included in package
– None available
– System availability: System is up but query fails
– User impact: HR users cannot access employee data
– Data impact: No data loss
# 访问:https://support.oracle.com
# 点击:Create Service Request
# 填写SR信息
# 上传事件打包文件
$ /home/oracle/scripts/track_sr.sh 3-12345678901
# 及时回复Oracle工程师的问题
# 提供请求的额外信息
# 测试提供的解决方案
3.3.2 性能问题SR创建
SQL> @?/rdbms/admin/awrrpt.sql
~~~~~~~~~~~~~~~~
———- ———— ——– ————
1234567890 FGEDUDB 1 FGEDUDB
~~~~~~~~~~~~~~~~~~~~~~~
Would you like an HTML Report, or a plain text report?
Enter ‘html’ for an HTML report, or ‘text’ for plain text
Defaults to ‘html’
Enter value for report_type: html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
———- ——– ———— ———— ————
* 1234567890 1 FGEDUDB FGEDUDB db01
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Using 1 for Instance Number
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Entering the number of days (n) will result in the most recent
(n) days of snapshots being listed. Pressing
specifying a number lists all completed snapshots.
Instance DB Name Snap Id Snap Started Level
———— ———— ———- —————— —–
FGEDUDB FGEDUDB 123 31 Mar 2026 00:00 1
124 31 Mar 2026 01:00 1
125 31 Mar 2026 02:00 1
126 31 Mar 2026 03:00 1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 123
Begin Snapshot Id specified: 123
End Snapshot Id specified: 126
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is awrrpt_1_123_126.html. To use this name,
press
$ adrci
$ vi /home/oracle/sr_docs/SR_PERF_20260331.txt
Oracle Service Request – Performance Issue
========================================
Date Created: 2026-03-31
Priority: 3
– Severe performance degradation since 2026-03-30
– Query response time increased from 1 second to 30 seconds
– Impact: All users experiencing slow performance
– Database Version: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0
– Operating System: Linux 5.4.17-2102.200.13.el8uek.x86_64
– Hardware: x86_64, 64GB RAM
– Patch Level: 19.15.0.0.0
– Before: Query response time ~1 second
– After: Query response time ~30 seconds
– AWR report attached
– No recent changes to database
– No recent data load
– No configuration changes
– AWR report: awr_report.html
– Alert log: included in package
– System availability: System is up but slow
– User impact: All users affected
– Data impact: No data lossPart04-生产案例与实战讲解
4.1 SR分析案例
4.1.1 场景描述
4.1.2 分析步骤
$ vi /home/oracle/scripts/create_sr.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: http://www.fgedu.net.cn
# SR创建自动化脚本
export ORACLE_SID=FGEDUDB
export PATH=$ORACLE_HOME/bin:$PATH
LOG_DIR=”/home/oracle/sr_creation”
mkdir -p $LOG_DIR
echo “Usage: $0
echo “SR Types: ora600, ora7445, performance, corruption”
exit 1
fi
echo “Collecting environment information…” >> $LOG_DIR/sr_creation.log
/home/oracle/scripts/collect_sr_info.sh >> $LOG_DIR/sr_creation.log 2>&1
echo “Creating incident package…” >> $LOG_DIR/sr_creation.log
case $SR_TYPE in
ora600)
PROBLEM_ID=$(adrci <
PROBLEM_ID=$(adrci <
echo “Unknown SR type: $SR_TYPE” >> $LOG_DIR/sr_creation.log
exit 1
;;
esac
/home/oracle/scripts/create_package.sh $PROBLEM_ID >> $LOG_DIR/sr_creation.log 2>&1
fi
echo “Preparing SR document…” >> $LOG_DIR/sr_creation.log
cp /home/oracle/templates/sr_template.txt $LOG_DIR/SR_${SR_TYPE}_$(date +%Y%m%d).txt
echo “SR preparation completed!” >> $LOG_DIR/sr_creation.log
echo “Please create SR at: https://support.oracle.com” >> $LOG_DIR/sr_creation.log
$ chmod +x /home/oracle/scripts/create_sr.sh
$ /home/oracle/scripts/create_sr.sh ora600
4.2 SR故障处理
4.2.1 故障处理流程
# – 识别问题类型
# – 评估问题影响
# – 确定优先级
# – 收集环境信息
# – 收集诊断文件
# – 准备问题描述
# – 登录Oracle Support
# – 创建SR
# – 上传诊断文件
# – 跟踪SR状态
# – 响应工程师问题
# – 测试解决方案
# – 验证解决方案
# – 关闭SR
# – 归档文档
$ adrci <4.3 SR优化
4.3.1 优化SR管理
SQL> create or replace procedure manage_sr(
p_sr_number in varchar2,
p_status in varchar2,
p_notes in varchar2
) as
begin
dbms_output.put_line(‘— SR Management —‘);
dbms_output.put_line(‘SR Number: ‘ || p_sr_number);
dbms_output.put_line(‘Status: ‘ || p_status);
dbms_output.put_line(‘Notes: ‘ || p_notes);
end manage_sr;
/
SQL> set serveroutput on
SQL> exec manage_sr(‘3-12345678901’, ‘Open’, ‘ORA-00600 error reported’);
SR Number: 3-12345678901
Status: Open
Notes: ORA-00600 error reported
SQL> create table sr_history (
id number primary key,
sr_number varchar2(20),
create_date date,
close_date date,
problem_type varchar2(50),
priority number,
status varchar2(20),
resolution clob
);
SQL> insert into sr_history values (
sr_history_seq.nextval,
‘3-12345678901’,
sysdate,
null,
‘ORA-00600’,
2,
‘Open’,
‘Pending Oracle Support response’
);
SQL> column sr_number format a20
SQL> column problem_type format a15
SQL> column status format a10
SQL> select sr_number, create_date, problem_type, priority, status
from sr_history
order by create_date desc;
——————– ——————- ————— ———- ———-
3-12345678901 2026-03-31 10:00:00 ORA-00600 2 Open
Part05-风哥经验总结与分享
5.1 SR总结
5.2 SR检查清单
5.3 SR工具推荐
