软件说明
该软件是惜分飞(https://www.xifenfei.com)开发,仅用来查看和修改Oracle数据库SCN(System Change Number),主要使用在数据库因为某种原因导致无法正常启动的情况下使用该工具进行解决.特别是Oracle新版本中使用隐含参数,event,oradebug等方法无法推进Oracle SCN的情况下,使用该工具能够快速修改SCN,实现数据库启动成功.
不同.NET Framework对应exe版本说明
Patch_SCN_Net2.exe 为.NET Framework 2.0,3.0,3.5版本支持(比如2008及其以前版本)
Patch_SCN_Net4.exe 为.NET Framework 4.0及其以后版本支持(比如2012及其以后版本)
Linux平台直接使用Patch_SCN工具进行修改使用参照:软件使用(for Linux)
下载地址:Patch_SCN下载
说明说明:Patch_SCN使用说明
支持数据库版本
oracle 9i到oracle 21C
官网说明
修改oracle scn小工具(patch scn)
软件版本
惜分飞(www.xifenfei.com)所有
联系作者
QQ:107644445
邮箱:dba@xifenfei.com
微信/电话:17813235971
软件使用(for Window)
检索Oracle进程
通过点击“检索oracle进程”,可以获取到该服务器上运行的所有oracle进程等信息
选择Oracle进程
通过点击“检索oracle进程”获取的结果,可以查看对应的进程需要修改Oracle SCN的地址,
绝大部分情况下,软件可以自动获取到地址,如果软件自动获取地址不对,请联系惜分飞进行处理
查看Oracle SCN值
通过点击“查看SCN值”,即可查看到实时状态的Oracle SCN的情况
软件注册
在修改SCN值之前,需要对该软件进行注册,不然无法使用修改SCN值功能。
在“机器码”框中右键然后选择“全选”,粘贴机器码内容发给我(QQ:107644445,微信/电话:+8617813235971,E-mail:dba@xifenfei.com),生成注册码之后,并且进行注册,注册成功即可进行SCN值修改操作
修改Oracle SCN值
填写正确的需要修改是SCN值,然后进行修改(需要确保16进制输入框记录正确)
证明修改Oracle SCN成功
基于控制文件方式修改SCN
选择控制文件,输入修改修改的scn值,然后点击修改控制文件scn值即可
软件使用(for Linux)
该工具演示修改SCN的实际情况
- 查询当前数据库SCN
SQL> startup mount
ORACLE instance started.
Total System Global Area 551165952 bytes
Fixed Size 2255112 bytes
Variable Size 369100536 bytes
Database Buffers 171966464 bytes
Redo Buffers 7843840 bytes
Database mounted.
SQL> alter database open;
Database altered.
SQL> select dbms_flashback.get_system_change_number a from dual;
A
----------
248118193
- 关闭数据库,启动到mount,为修改SCN做准备(为了模拟真实环境,只让程序在mount情况下修改scn,open情况下可以修改但是无实际意义)
SQL> startup mount;
ORACLE instance started.
Total System Global Area 551165952 bytes
Fixed Size 2255112 bytes
Variable Size 369100536 bytes
Database Buffers 171966464 bytes
Redo Buffers 7843840 bytes
Database mounted.
SQL> select spid from v$process where addr =
2 (select paddr from v$session where sid=
3 (select sid from v$mystat where rownum=1));
SPID
------------------------
21019
- 进行SCN修改
[oracle@iZbp11c0qyuuo1gr7j98upZ tmp]$ ./Patch_SCN 21019(会话进程号) 300000000(期望修改SCN值)
Machine Code:W0UY-SV09-71CY-IEWA
Please input Key:42FB4ADAB72BB4AD ß----需要联系软件作者惜分飞获取
Confirm modification, please input [Y]...
Y
Modify the Oracle SCN value to:11E1A300:300000000
- 启动数据库,查询scn
SQL> ALTER DATABASE OPEN;
Database altered.
SQL> select dbms_flashback.get_system_change_number a from dual;
A
----------
300000244 ---由于数据库启动之后,scn稍微增加,属于正常情况
通过上述测试,证明Patch_SCN可以完美实现linux平台Oracle 数据库的SCN调整工作
补充说明
- Oracle数据库在mount状态下oradebug查看SCN值为0
- 该软件需要使用管理员权限进行运行