1. 首页 > Oracle教程 > 正文

Oracle教程FG441-SR创建

本文档风哥主要介绍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 SR的特点:

  • 官方支持:获取Oracle官方技术支持
  • 问题跟踪:全程跟踪问题处理进度
  • 专业团队:由Oracle专业工程师处理
  • 补丁获取:获取官方补丁和修复
  • 知识积累:积累问题解决经验

1.2 SR组成

Oracle SR组成:

  • SR编号:唯一的SR标识号
  • 问题描述:详细的问题描述
  • 环境信息:数据库版本、操作系统等
  • 诊断文件:事件打包文件、日志等
  • 优先级:SR的紧急程度
# SR组成说明

1. SR编号
– 唯一的SR标识号
– 格式:SR号码(如:3-12345678901)
– 用于跟踪和查询

2. 问题描述
– 详细的问题描述
– 问题发生时间
– 问题影响范围
– 复现步骤

3. 环境信息
– 数据库版本
– 操作系统版本
– 硬件配置
– 补丁级别

4. 诊断文件
– 事件打包文件
– 跟踪文件
– 告警日志
– AWR报告

5. 优先级
– 1级:严重问题,系统宕机
– 2级:重要问题,功能受限
– 3级:一般问题,有临时解决方案
– 4级:低优先级,咨询问题

1.3 SR使用

Oracle SR使用:

  • 问题报告:报告产品缺陷和问题
  • 补丁请求:请求特定补丁
  • 技术咨询:技术咨询和指导
  • 功能请求:请求新功能
  • 文档问题:报告文档错误
风哥提示:SR是获取Oracle官方技术支持的重要渠道,建议掌握SR创建和管理方法。

Part02-生产环境规划与建议

2.1 SR规划

Oracle SR规划要点:

# SR规划
– 创建时机:确定何时需要创建SR
– 信息准备:准备必要的环境和诊断信息
– 优先级设置:合理设置SR优先级
– 跟踪管理:跟踪SR处理进度

# 创建时机规划
– 严重错误:ORA-00600、ORA-07445等
– 数据损坏:数据块损坏等问题
– 性能问题:严重的性能问题
– 补丁需求:需要特定补丁

# 信息准备规划
– 环境信息:数据库版本、操作系统
– 问题描述:详细的问题描述
– 诊断文件:事件打包文件
– 复现步骤:问题复现步骤

# 优先级设置规划
– 1级:生产系统宕机
– 2级:重要功能不可用
– 3级:一般问题
– 4级:咨询问题

# 跟踪管理规划
– 定期检查:定期检查SR状态
– 及时响应:及时响应Oracle工程师的问题
– 记录归档:记录解决方案并归档

2.2 SR场景

Oracle SR场景:

  • ORA错误:ORA-00600、ORA-07445等内部错误
  • 数据损坏:数据块损坏、数据丢失
  • 性能问题:严重的性能问题
  • 补丁请求:请求特定补丁
  • 功能咨询:功能使用咨询
# SR场景

1. ORA错误
– ORA-00600内部错误
– ORA-07445异常错误
– ORA-01555快照太旧
– 其他ORA错误

2. 数据损坏
– 数据块损坏
– 索引损坏
– 控制文件损坏
– 日志文件损坏

3. 性能问题
– 严重的性能下降
– 资源争用问题
– 并发问题
– 内存问题

4. 补丁请求
– Bug修复补丁
– 安全补丁
– 功能补丁
– 合并补丁

5. 功能咨询
– 功能使用咨询
– 最佳实践咨询
– 架构设计咨询
– 升级迁移咨询

2.3 SR最佳实践

Oracle SR最佳实践:

  • 准确描述:准确描述问题现象和影响
  • 完整信息:提供完整的环境和诊断信息
  • 合理优先级:合理设置SR优先级
  • 及时响应:及时响应Oracle工程师的问题
  • 记录归档:记录解决方案并归档
生产环境建议:SR创建需要建立完善的流程,建议准确描述、完整信息、合理优先级。学习交流加群风哥微信: itpux-com

Part03-生产环境项目实施方案

3.1 SR配置

3.1.1 准备SR创建信息

# 1. 收集环境信息
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 <> $INFO_DIR/sr_info.txt
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 <> $INFO_DIR/sr_info.txt
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 <> $INFO_DIR/sr_info.txt
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 创建事件打包

# 1. 查看问题列表
$ 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…”

# 创建打包
PACKAGE_ID=$(adrci <

3.2 SR监控

3.2.1 配置SR跟踪脚本

# 1. 创建SR跟踪脚本
$ vi /home/oracle/scripts/track_sr.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跟踪脚本

SR_NUMBER=$1
LOG_DIR=”/home/oracle/sr_tracking”
mkdir -p $LOG_DIR

if [ -z “$SR_NUMBER” ]; then
echo “Usage: $0
exit 1
fi

echo “$(date): Tracking SR $SR_NUMBER” > $LOG_DIR/sr_$SR_NUMBER.log

# 提示用户手动检查SR状态
echo “Please check SR status at:”
echo “https://support.oracle.com/epmos/faces/SrDetail?srNumber=$SR_NUMBER”

echo “$(date): SR tracking completed” >> $LOG_DIR/sr_$SR_NUMBER.log

# 2. 设置脚本权限
$ chmod +x /home/oracle/scripts/track_sr.sh

# 3. 执行跟踪脚本
$ /home/oracle/scripts/track_sr.sh 3-12345678901

# 4. 创建SR状态检查脚本
$ vi /home/oracle/scripts/check_sr_status.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状态检查脚本

LOG_DIR=”/home/oracle/sr_tracking”
mkdir -p $LOG_DIR

echo “$(date): Checking SR status…” > $LOG_DIR/sr_status.log

# 列出所有SR跟踪文件
echo “Active SRs:” >> $LOG_DIR/sr_status.log
ls -1 $LOG_DIR/sr_*.log 2>/dev/null >> $LOG_DIR/sr_status.log

echo “” >> $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

cat $LOG_DIR/sr_status.log

# 5. 设置脚本权限
$ chmod +x /home/oracle/scripts/check_sr_status.sh

# 6. 执行状态检查脚本
$ /home/oracle/scripts/check_sr_status.sh

# 7. 设置定期检查
$ crontab -e

# 每天早上9点检查SR状态
0 9 * * * /home/oracle/scripts/check_sr_status.sh >> /home/oracle/sr_tracking/status.log 2>&1

3.2.2 配置SR响应管理

# 1. 创建SR响应管理脚本
$ vi /home/oracle/scripts/manage_sr_response.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响应管理脚本

LOG_DIR=”/home/oracle/sr_management”
mkdir -p $LOG_DIR

echo “$(date): Managing SR responses…” > $LOG_DIR/management.log

# 检查待响应的SR
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 “” >> $LOG_DIR/management.log
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

cat $LOG_DIR/management.log

# 2. 设置脚本权限
$ chmod +x /home/oracle/scripts/manage_sr_response.sh

# 3. 执行响应管理脚本
$ /home/oracle/scripts/manage_sr_response.sh

# 4. 创建SR文档模板
$ vi /home/oracle/templates/sr_template.txt

========================================
Oracle Service Request Template
========================================

SR Number: [To be assigned]
Date Created: [Date]
Priority: [1/2/3/4]

1. Problem Description:
– What is the problem?
– When did it start?
– What is the impact?

2. Environment Information:
– Database Version:
– Operating System:
– Hardware:
– Patch Level:

3. Steps to Reproduce:
– Step 1:
– Step 2:
– Step 3:

4. Error Messages:
– Error code:
– Error message:
– Stack trace:

5. Diagnostic Files:
– Incident package:
– Alert log:
– Trace files:

6. Workaround (if any):
– Temporary solution:

7. Business Impact:
– System availability:
– User impact:
– Data impact:

========================================

# 5. 使用模板创建SR文档
$ 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]

# SR创建步骤

# 1. 收集环境信息
$ /home/oracle/scripts/collect_sr_info.sh

# 2. 创建事件打包
$ /home/oracle/scripts/create_package.sh 1

# 3. 准备SR文档
$ vi /home/oracle/sr_docs/SR_ORA600_20260331.txt

========================================
Oracle Service Request
========================================

SR Number: [To be assigned]
Date Created: 2026-03-31
Priority: 2

1. Problem Description:
– ORA-00600 internal error when querying EMP table
– Error started on 2026-03-31 10:00:00
– Impact: Unable to query employee data

2. Environment Information:
– 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

3. Steps to Reproduce:
– Step 1: Connect to database as SCOTT user
– Step 2: Execute: select * from emp where empno = 7369
– Step 3: ORA-00600 error occurs

4. Error Messages:
– Error code: ORA-00600
– Error message: internal error code, arguments: [1234], [1], [2], [3], [4], [5], [6], [7]
– Incident ID: 12345

5. Diagnostic Files:
– Incident package: ORA600_20260331100000_COM_1.zip
– Alert log: included in package
– Trace files: included in package

6. Workaround (if any):
– None available

7. Business Impact:
– System availability: System is up but query fails
– User impact: HR users cannot access employee data
– Data impact: No data loss

========================================

# 4. 登录Oracle Support创建SR
# 访问:https://support.oracle.com
# 点击:Create Service Request
# 填写SR信息
# 上传事件打包文件

# 5. 跟踪SR状态
$ /home/oracle/scripts/track_sr.sh 3-12345678901

# 6. 响应Oracle工程师的问题
# 及时回复Oracle工程师的问题
# 提供请求的额外信息
# 测试提供的解决方案

3.3.2 性能问题SR创建

# 1. 收集性能诊断信息
SQL> @?/rdbms/admin/awrrpt.sql

Current Instance
~~~~~~~~~~~~~~~~

DB Id DB Name Inst Num Instance
———- ———— ——– ————
1234567890 FGEDUDB 1 FGEDUDB

Specify the Report Type
~~~~~~~~~~~~~~~~~~~~~~~
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

Type Specified: html

Instances in this Workload Repository schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

DB Id Inst Num DB Name Instance Host
———- ——– ———— ———— ————
* 1234567890 1 FGEDUDB FGEDUDB db01

Database Id and Instance Number for the AWR Report
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using 1234567890 for Database Id
Using 1 for Instance Number

Specify the number of days of snapshots to choose from
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Entering the number of days (n) will result in the most recent
(n) days of snapshots being listed. Pressing without
specifying a number lists all completed snapshots.

Enter value for num_days: 1

Listing the last day’s Completed Snapshots

Snap
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

Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 123
Begin Snapshot Id specified: 123

Enter value for end_snap: 126
End Snapshot Id specified: 126

Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is awrrpt_1_123_126.html. To use this name,
press to continue, otherwise enter an alternative.

Enter value for report_name: /home/oracle/awr_report.html

Report written to /home/oracle/awr_report.html

# 2. 创建性能问题打包
$ adrci

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文档
$ vi /home/oracle/sr_docs/SR_PERF_20260331.txt

========================================
Oracle Service Request – Performance Issue
========================================

SR Number: [To be assigned]
Date Created: 2026-03-31
Priority: 3

1. Problem Description:
– Severe performance degradation since 2026-03-30
– Query response time increased from 1 second to 30 seconds
– Impact: All users experiencing slow performance

2. Environment Information:
– 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

3. Performance Metrics:
– Before: Query response time ~1 second
– After: Query response time ~30 seconds
– AWR report attached

4. Changes:
– No recent changes to database
– No recent data load
– No configuration changes

5. Diagnostic Files:
– AWR report: awr_report.html
– Alert log: included in package

6. Business Impact:
– System availability: System is up but slow
– User impact: All users affected
– Data impact: No data loss

========================================

风哥提示:SR是获取Oracle官方技术支持的重要渠道,建议掌握SR创建和管理方法。学习交流加群风哥QQ113257174

Part04-生产案例与实战讲解

4.1 SR分析案例

在生产环境中使用SR的完整案例:

4.1.1 场景描述

某企业生产数据库出现ORA-00600错误,需要创建SR获取Oracle技术支持。

4.1.2 分析步骤

# 1. 创建SR创建自动化脚本
$ vi /home/oracle/scripts/create_sr.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

SR_TYPE=$1
LOG_DIR=”/home/oracle/sr_creation”
mkdir -p $LOG_DIR

if [ -z “$SR_TYPE” ]; then
echo “Usage: $0
echo “SR Types: ora600, ora7445, performance, corruption”
exit 1
fi

echo “$(date): Creating SR for $SR_TYPE” > $LOG_DIR/sr_creation.log

# 收集环境信息
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 < ora7445)
PROBLEM_ID=$(adrci < *)
echo “Unknown SR type: $SR_TYPE” >> $LOG_DIR/sr_creation.log
exit 1
;;
esac

if [ ! -z “$PROBLEM_ID” ]; then
/home/oracle/scripts/create_package.sh $PROBLEM_ID >> $LOG_DIR/sr_creation.log 2>&1
fi

# 准备SR文档
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 “” >> $LOG_DIR/sr_creation.log
echo “SR preparation completed!” >> $LOG_DIR/sr_creation.log
echo “Please create SR at: https://support.oracle.com” >> $LOG_DIR/sr_creation.log

cat $LOG_DIR/sr_creation.log

# 2. 设置脚本权限
$ chmod +x /home/oracle/scripts/create_sr.sh

# 3. 测试脚本
$ /home/oracle/scripts/create_sr.sh ora600

4.2 SR故障处理

在SR故障处理过程中的方法和技巧:

4.2.1 故障处理流程

# SR故障处理流程

# 1. 问题识别
# – 识别问题类型
# – 评估问题影响
# – 确定优先级

# 2. 信息收集
# – 收集环境信息
# – 收集诊断文件
# – 准备问题描述

# 3. SR创建
# – 登录Oracle Support
# – 创建SR
# – 上传诊断文件

# 4. 跟踪响应
# – 跟踪SR状态
# – 响应工程师问题
# – 测试解决方案

# 5. 问题关闭
# – 验证解决方案
# – 关闭SR
# – 归档文档

# 示例:SR故障处理

# 1. 问题识别
$ adrci <

4.3 SR优化

优化SR管理配置的最佳实践:

4.3.1 优化SR管理

# 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;
/

Procedure created.

# 2. 执行管理存储过程
SQL> set serveroutput on
SQL> exec manage_sr(‘3-12345678901’, ‘Open’, ‘ORA-00600 error reported’);

— SR Management —
SR Number: 3-12345678901
Status: Open
Notes: ORA-00600 error reported

PL/SQL procedure successfully completed.

# 3. 创建SR历史表
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
);

Table created.

SQL> create sequence sr_history_seq;

Sequence created.

# 4. 记录SR历史
SQL> insert into sr_history values (
sr_history_seq.nextval,
‘3-12345678901’,
sysdate,
null,
‘ORA-00600’,
2,
‘Open’,
‘Pending Oracle Support response’
);

1 row created.

SQL> commit;

Commit complete.

# 5. 查看SR历史
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;

SR_NUMBER CREATE_DATE PROBLEM_TYPE PRIORITY STATUS
——————– ——————- ————— ———- ———-
3-12345678901 2026-03-31 10:00:00 ORA-00600 2 Open

生产环境建议:SR优化需要建立完善的管理流程,建议及时响应、记录归档、知识积累。更多学习教程公众号风哥教程itpux_com

Part05-风哥经验总结与分享

5.1 SR总结

Oracle SR是获取Oracle官方技术支持的重要渠道,具有以下特点:

  • 官方支持:获取Oracle官方技术支持
  • 问题跟踪:全程跟踪问题处理进度
  • 专业团队:由Oracle专业工程师处理
  • 补丁获取:获取官方补丁和修复
  • 知识积累:积累问题解决经验

5.2 SR检查清单

Oracle SR检查清单:

  • 问题描述:准确描述问题现象和影响
  • 环境信息:提供完整的环境信息
  • 诊断文件:提供完整的诊断文件
  • 优先级设置:合理设置SR优先级
  • 及时响应:及时响应Oracle工程师的问题
  • 记录归档:记录解决方案并归档

5.3 SR工具推荐

Oracle SR工具推荐:

  • Oracle Support:Oracle官方支持网站
  • ADRCI:诊断信息收集工具
  • IPS:事件打包服务
  • AWR报告:性能诊断报告
  • Shell脚本:自动化SR创建过程
风哥提示:SR是获取Oracle官方技术支持的重要渠道,建议掌握SR创建和管理方法。from:www.itpux.com www.fgedu.net.cn

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息