1.操作系统
由于Oracle12c官方文档指出,不再支持Linux6以下版本,因此如果之前是在Linux5及更早版本上安装数据库,在升级前需要更新操作系统,升级操作系统为6以上版本,或将数据库迁移至支持的操作系统版本(注意:Oracle11g不能在Linux9.x以上版本运行)
2.11.2.0.1不能直接升级为12.1.0.1,必须先升级为11.2.0.4或其他支持版本
3.在升级过程中可能遇到的报错及解决方法:
11.2.0.1升级11.2.0.4:
Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0.4/dbhome_1/sysman/lib/ins_emagent.mk'. See '/u01/app/oraInventory/logs/installActions2025-03-12_02-00-02PM.log' for details. 解决方法:
[root@alluse ~]# cd /u01/app/oracle/product/11.2.0.4/dbhome_1/ [root@alluse dbhome_1]# cd sysman/lib/ [root@alluse lib]# vim ins_emagent.mk 修改参数: # line176 $(SYSMANBIN)emdctl: $(MK_EMAGENT_NMECTL) -lnnz11
#保存退出,点击retry
11.2.0.4升级12.1.0.1:
Error in invoking target 'links proc gen_pcscfg procob' of makefile '/u01/app/oracle/product/12.1/dbhome_1/precomp/lib/ins_precomp.mk'. See '/u01/app/oraInventory/logs/installActions2025-03-12_03-00-01PM.log' for details.
解决方法:
# rm -rf rm -rf /u01/app/oracle/product/12.1/dbhome_1/lib/stubs/*
# cp /u01/app/oracle/product/12.1/dbhome_1/rdbms/lib/env_rdbms.mk /u01/app/oracle/product/12.1/dbhome_1/rdbms/lib/env_rdbms.mk.orig # vim /u01/app/oracle/product/12.1/dbhome_1/rdbms/lib/env_rdbms.mk 修改参数: # Line 176 LINKTTLIBS=$(LLIBCLNTSH) $(ORACLETTLIBS) $(LINKLDLIBS) -lons
# Line 279-280 LINK=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS) $(COMPSOBJS) -Wl,--no-as-needed LINK32=$(FORT_CMD) $(PURECMDS) $(ORALD) $(LDFLAGS32) $(COMPSOBJS) -Wl,--no-as-needed
# Line 3041-3042 TG4PWD_LINKLINE= $(LINK) $(OPT) $(TG4PWDMAI) \ $(LLIBTHREAD) $(LLIBCLNTSH) $(LINKLDLIBS) -lnnz12
保存退出,点击retry
4.每次在升级完成之后需要在oracle用户家目录下的.bash_profile文件中修改对应的环境变量: 如图:
# source .bash_profile
5.如果在查询表数据时有乱码问题,可通过在oracle用户下设置环境变量解决:
$ export NLS_LANG=american_america.al32utf8
或 $ export NLS_LANG=american_america.zhs16gbk 具体可通过查看数据库语言环境变量选择: SQL> select userenv('language') from dual;
|