前言
近期需要实施oracle 11.2.0.1迁移数据库至11.2.0.4,涉及数据库的time zone时区概念,数据库迁移升级涉及概念及组件诸多,且复杂多变,必须整合全面,才能制订科学
高效的数据库迁移技术方案,减少数据库停机时间及相关故障。
参考资料
oracle upgrade guide
结论
1,v$timezone_file可以查询数据库的时区版本
2,11.2.0.1与11.2.0.4之数据库时区逻辑相同
3,11g数据库时区文件路径在ORACLE_HOME/oracore/zoneinfo
4,ORACLE_HOME/oracore/zoneinfo与ORACLE_HOME/oracore/zoneinfo/big和ORACLE_HOME/oracore/zoneinfo/little的内容相同
5,其所属内容又分为2种类型,一则为timezlrg_version.dat,二则为timezone_version.dat
6,数据库的时区文件千万不能删除,否则重启数据库会报错ora-600错误
SQL> startup
ORACLE instance started.
Total System Global Area 2137886720 bytes
Fixed Size 2254952 bytes
Variable Size 2080376728 bytes
Database Buffers 50331648 bytes
Redo Buffers 4923392 bytes
Database mounted.
ORA-00600: internal error code, arguments: [opiodr: call 2], [], [], [], [],
[], [], [], [], [], [], []
ORA-00600: internal error code, arguments: [qcisSetPlsqlCtx:tzi init], [], [],
[], [], [], [], [], [], [], [], []
7,如果删除了数据库当前使用的时区文件,数据库仍可以正常登陆且DML 时区相关的表
测试明细
1,数据库版本
SQL> select * from v$version where rownum=1;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
2,11.2.0.4数据库的时区版本
SQL> select filename,version from v$timezone_file;
FILENAME VERSION
-------------------- ----------
timezlrg_14.dat 14
3, 11.2.0.4数据库的时区文件
[oracle@mygirl ~]$ locate timezlrg_14.dat
/oracle/product/11.2.0/db_1/oracore/zoneinfo/timezlrg_14.dat
/oracle/product/11.2.0/db_1/oracore/zoneinfo/big/timezlrg_14.dat
/oracle/product/11.2.0/db_1/oracore/zoneinfo/little/timezlrg_14.dat
4,11.2.0.4数据库的时区文件所在路径,总结如下:
1,ORACLE_HOME/oracore/zoneinfo与ORACLE_HOME/oracore/zoneinfo/big和ORACLE_HOME/oracore/zoneinfo/little的内容相同
2, 其所属内容又分为2种类型,一则为timezlrg_version.dat,二则为timezone_version.dat
[oracle@mygirl zoneinfo]$ pwd
/oracle/product/11.2.0/db_1/oracore/zoneinfo
[oracle@mygirl zoneinfo]$ ll
total 13340
drwxr-xr-x. 2 oracle oinstall 4096 May 4 23:47 big
drwxr-xr-x. 2 oracle oinstall 4096 May 4 23:47 little
-rw-r--r--. 1 oracle oinstall 6068 Jun 7 2010 readme.txt
-rw-r--r--. 1 oracle oinstall 31525 Jun 7 2010 timezdif.csv
-rw-r--r--. 1 oracle oinstall 792894 Jul 16 2013 timezlrg_10.dat
-rw-r--r--. 1 oracle oinstall 787272 Jul 16 2013 timezlrg_11.dat
-rw-r--r--. 1 oracle oinstall 785621 Jul 16 2013 timezlrg_12.dat
-rw-r--r--. 1 oracle oinstall 782475 Jul 16 2013 timezlrg_13.dat
-rw-r--r--. 1 oracle oinstall 791430 Jul 16 2013 timezlrg_14.dat
-rw-r--r--. 1 oracle oinstall 493675 Jul 16 2013 timezlrg_1.dat
-rw-r--r--. 1 oracle oinstall 507957 Jul 16 2013 timezlrg_2.dat
-rw-r--r--. 1 oracle oinstall 527717 Jul 16 2013 timezlrg_3.dat
-rw-r--r--. 1 oracle oinstall 531137 Jul 16 2013 timezlrg_4.dat
-rw-r--r--. 1 oracle oinstall 587487 Jul 16 2013 timezlrg_5.dat
-rw-r--r--. 1 oracle oinstall 586750 Jul 16 2013 timezlrg_6.dat
-rw-r--r--. 1 oracle oinstall 601242 Jul 16 2013 timezlrg_7.dat
-rw-r--r--. 1 oracle oinstall 616723 Jul 16 2013 timezlrg_8.dat
-rw-r--r--. 1 oracle oinstall 801410 Jul 16 2013 timezlrg_9.dat
-rw-r--r--. 1 oracle oinstall 345637 Jul 16 2013 timezone_10.dat
-rw-r--r--. 1 oracle oinstall 345356 Jul 16 2013 timezone_11.dat
-rw-r--r--. 1 oracle oinstall 345024 Jul 16 2013 timezone_12.dat
-rw-r--r--. 1 oracle oinstall 344425 Jul 16 2013 timezone_13.dat
-rw-r--r--. 1 oracle oinstall 344448 Jul 16 2013 timezone_14.dat
-rw-r--r--. 1 oracle oinstall 274427 Jul 16 2013 timezone_1.dat
-rw-r--r--. 1 oracle oinstall 274900 Jul 16 2013 timezone_2.dat
-rw-r--r--. 1 oracle oinstall 286651 Jul 16 2013 timezone_3.dat
-rw-r--r--. 1 oracle oinstall 286264 Jul 16 2013 timezone_4.dat
-rw-r--r--. 1 oracle oinstall 286310 Jul 16 2013 timezone_5.dat
-rw-r--r--. 1 oracle oinstall 286217 Jul 16 2013 timezone_6.dat
-rw-r--r--. 1 oracle oinstall 286815 Jul 16 2013 timezone_7.dat
-rw-r--r--. 1 oracle oinstall 302100 Jul 16 2013 timezone_8.dat
-rw-r--r--. 1 oracle oinstall 351525 Jul 16 2013 timezone_9.dat
[oracle@mygirl zoneinfo]$
[oracle@mygirl zoneinfo]$ cd big
[oracle@mygirl big]$ ll
total 13292
-rw-r--r--. 1 oracle oinstall 792894 May 26 2009 timezlrg_10.dat
-rw-r--r--. 1 oracle oinstall 787272 Jun 12 2009 timezlrg_11.dat
-rw-r--r--. 1 oracle oinstall 785621 Sep 17 2009 timezlrg_12.dat
-rw-r--r--. 1 oracle oinstall 782475 Nov 30 2009 timezlrg_13.dat
-rw-r--r--. 1 oracle oinstall 791430 Jun 7 2010 timezlrg_14.dat
-rw-r--r--. 1 oracle oinstall 493675 Apr 29 2008 timezlrg_1.dat
-rw-r--r--. 1 oracle oinstall 507957 Apr 29 2008 timezlrg_2.dat
-rw-r--r--. 1 oracle oinstall 527717 Jan 30 2009 timezlrg_3.dat
-rw-r--r--. 1 oracle oinstall 531137 Apr 29 2008 timezlrg_4.dat
-rw-r--r--. 1 oracle oinstall 587487 Apr 29 2008 timezlrg_5.dat
-rw-r--r--. 1 oracle oinstall 586750 Apr 29 2008 timezlrg_6.dat
-rw-r--r--. 1 oracle oinstall 601242 Apr 29 2008 timezlrg_7.dat
-rw-r--r--. 1 oracle oinstall 616723 Apr 29 2008 timezlrg_8.dat
-rw-r--r--. 1 oracle oinstall 801410 May 23 2009 timezlrg_9.dat
-rw-r--r--. 1 oracle oinstall 345637 May 26 2009 timezone_10.da