设置AWR收集频率
begin
dbms_workload_repository.modify_snapshot_settings(retention => 14*24*60,
interval => 15
);
end;
/
10. 关闭DRM和一些新特性
在Oracle 11gR2中,使用以下参数关闭DRM
alter system set "_gc_policy_time" = 0 scope = spfile;
Oracle 11gR2中建议关闭新功能
alter system set event= '10949 trace name context forever, level 1' scope = spfile;
alter system set event= '28401 trace name context forever, level 1' scope = spfile;
关闭审计
alter system set audit_trail = none scope = spfile;
truncate table SYS.AUD$;
禁用直接路径读 DIRECT PATH READ
alter system set "_serial_direct_read" = never;
禁用11g的新密码策略
alter system set sec_case_sensitive_logon = false;
禁用密码延迟验证
alter system set EVENT="28401 TRACE NAME CONTEXT FOREVER, LEVEL 1" scope=spfile;
禁用SQL优化器自动任务 SQL TUNING ADVISOR
BEGIN
dbms_auto_task_admin.disable(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL);
END;
/
禁用11g自动任务中的自动分段顾问
BEGIN
dbms_auto_task_admin.disable(
client_name => 'auto space advisor',
operation => NULL,
window_name => NULL);
END;
/
查看自动任务的开启情况,状态应该都为FALSE
--select * from dba_autotask_client;
--select * from dba_autotask_window_clients;
11. 大页内存设置
大页内存单位为2M,所以数值为 SGA / 2M
vm.nr_hugepages = (128M + 48G * 1024) / 2M = 24576,再取个整数24700
# vi /etc/sysctl.conf
vm.nr_hugepages = 24700
# vi /etc/security/limits.conf
oracle - memlock unlimited
# sysctl -p
# cat /proc/meminfo | grep Huge
alter system set lock_sga = true scope = spfile;
重启DB
12. 关闭OCM功能
如果报以下错误,关闭这个功能
Errors in file /u02/app/oracle/diag/rdbms/bdcadb/bdcadb1/trace/bdcadb1_j001_31131.trc:
ORA-12012: error on auto execute of job "ORACLE_OCM"."MGMT_CONFIG_JOB_2_1"
ORA-29280: invalid directory path
ORA-06512: at "ORACLE_OCM.MGMT_DB_LL_METRICS", line 2436
ORA-06512: at line 1
exec dbms_scheduler.disable('ORACLE_OCM.MGMT_CONFIG_JOB');
exec dbms_scheduler.disable('ORACLE_OCM.MGMT_STATS_CONFIG_JOB');
13. 其他
禁用direct path read
alter system set "_serial_direct_read" = never;
解决11g一致性读问题
alter system set "_row_cr" = false scope = spfile;
禁用SQL优化器自动任务(SQL TUNING ADVISOR)
BEGIN
dbms_auto_task_admin.disable(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL);
END;
/
十、 升级PSU
升级GI和DB到版本11.2.0.4.2,需要打PSU(18139609)
可以下载下面两个补丁号的patch(11.2.0.4.2),一个是GI的,一个是DB的,根据你们的需要决定,建议直接安装GI的PSU,因GI的PUS包括了DB的PSU
安装任何补丁时一定要仔细阅读补丁对应的 readme 文件,因为每个补丁的安装步骤可能有所不同
使用opatch auto 就可以把GI和数据库的PSU都安装上,使用opatch auto 的好处是完全的自动化,不需要手工停止/启动GI,建议把DB关闭
安装完成后,在GI和DB的ORACLE_HOME会分别安装了GI和DB的PSU,也就是每个ORACLE_HOME下都有两个PSU,一个是GI的,一个是DB的。
推荐这种安装方法,因为有的Bug既需要在GI中修复,又需要在DB中修复。
安装PSU的过程是滚动的,依次在每个节点执行
1. 安装前的检查版本是
由于我们是使用11.2.0.4的oracle软件直接来安装的,grid,oracle默认的
$ ./opatch version
OPatch Version: 11.2.0.3.4
OPatch succeeded.
通过PSU的readme.html中,我们可以看到这样的话
You must use the OPatch utility version 11.2.0.3.6 or later to apply this patch. Oracle recommends that you use the latest released OPatch version for 11.2, which is available for download from My Oracle Support patch 6880880 by selecting the 11.2.0.0.0 release.
升级所需要的最低的版本是11.2.0.3.6,显然我们安装的软件是达不到最低的升级标准的,所以我们需要一个另外的PATCH来更新opatch的版本Oracle 提供了这样的一个补丁包p6880880_112000_Linux-x86-64.zip
用来把OPATCH提成到最新的版本
2. 安装的准备工作
备份GRID_HOME和DB_HOME的ORACLE_HOME/OPatch
GI的ORACLE_HOME
# cd $ORACLE_HOME
# tar zcvf OPatch_11.2.0.1.7.tar.gz OPatch
# rm -fr $ORACLE_HOME/OPatch
DB的$ORACLE_HOME
$ jdb
$ cd $ORACLE_HOME
$ tar zcvf OPatch_11.2.0.1.7.tar.gz OPatch
$ rm -fr $ORACLE_HOME/OPatch
解压缩Opatch
GI的ORACLE_HOME
# unzip p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME
# chown -R oracle:oinstall $ORACLE_HOME/OPatch
DB的ORACLE_HOME
$ jdb
$ unzip p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME
查看版本
$ ./opatch version
OPatch Version: 11.2.0.3.6
OPatch succeeded.
如果没有配置OCM,按照下面的步骤执行:
运行后在当前目录生成ocm.rsp文件,一般在/home/oracle目录
$ jgrid
$ $ORACLE_HOME/OPatch/ocm/bin/emocmrsp
检查
$ jgrid
$ $GRID_HOME/OPatch/opatch lsinventory -detail -oh $GRID_HOME
$ jdb
$ $ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME