在从Oracle 10g升级到Oracle 11g后,就需要对Oracle 11g的新特性进行了解,这些特性可能会对应用及性能产生影响,需要调整。
1. Oracle11g密码过期策略
oracle11g中默认在default概要文件中设置了PASSWORD_LIFE_TIME=180天后过期,到期后会自动改密码, 会影响应用的应用。
SQL> alter profile default limit password_life_time unlimited;
2. Oracle11g对用户名密码大小写敏感
Oracle11g中默认用户名和密码大小写敏感,oracle10g就是没有这个问题。
SQL> alter system set sec_case_sensitive_logon=false scope=spfile;
3. Oracle11g空表不会立即创建segment,默认是true. 在oracle11.2.0.1这样就会产生一些问题,最大的问题就是exp导出时,空表不会导出数据。对于使用oracle11.2.0.1 exp客户端导入11.2.0.2以上版本数据库时会出现EXP-00001错误。
SQL> alter system set deferred_segment_creation = false scope=spfile;
对于已经是空表问题的解决方式如下,找到表空,并立即分配空间:
SQL> select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 ;
'ALTERTABLE'||TABLE_NAME||'ALLOCATEEXTENT;'
-----------------------------------------------------------
alter table C allocate extent;
alter table B allocate extent;
alter table A allocate extent;
alter table ABC allocate extent;
alter table TEST_LOCK allocate extent;
4. Oracle11g默认是开启审记功能的,开启审记功能是会对性能产生影响的,可以考虑关闭。
SQL> alter system set audit_trail=none scope=spfile;
在CentOS 6.4下安装Oracle 11gR2(x64)