《Oracle数据库安装及运维工作指南.docx》由会员分享,可在线阅读,更多相关《Oracle数据库安装及运维工作指南.docx(9页珍藏版)》请在金锄头文库上搜索。
1、 Oracle数据库安装及运维工作指南金蝶软件(中国)有限公司K3 CLOUD 基础系统部2017-04-10张华福本文主要强调 ORACLE 数据库服务器环境的安装软件及版本,以及安装完成后的后续完善工作。以确保数据库以比较完善的状态投入生产,尽可能避免已知的问题影响生产库的运营。文章不涉及到软件的安装方法步骤。 1 服务器系统软件,数据库版本安装推荐:1 数据库服务器的操作系统,推荐使用 ORACLE LINUX6.8。2 数据库软件版本,要求安装11204,单节点或RAC环境均可,推荐使用RAC。2 数据库安装创建完毕后,需要进行下列的完善工作,1 打上最新的补丁集,如:ORACLE 1
2、1204,截止至 2017年4月,ORACLE11204 数据库, 当前最新版本的补丁集为 20161018 日发布的, p24436338_112040_Linux-x86-64_GI_20161018.zip -rac 版本, p24006111_112040_Linux-x86-64_DB_20161018.zip -纯数据库版。 请按照补丁集上的 readme.html,把补丁集打到GI, 数据库上。 2 初始化参数,下面的参数值,只是通常情况下的设置(或可根据服务器的硬件条件自行修改配置),要想系统效率最优,得依据数据库实际的运行情况逐步作微调(注意,下面的命令,在RAC和单节点环境
3、下,稍有不同)。 alter profile default LIMIT PASSWORD_LIFE_TIME UNLIMITED; alter system set processes=500 scope=spfile sid=*; alter system set control_file_record_keep_time=21 scope=spfile sid=*; alter system set open_cursors=300 scope=spfile sid=*; alter system set session_cached_cursors=300 scope=spfile s
4、id=*; alter system set audit_trail=NONE scope=spfile sid=*; alter system set recyclebin=off scope=spfile sid=*; alter system set log_archive_dest_1=location=use_db_recovery_file_dest scope=both sid=*; alter system set fast_start_mttr_target = 30 scope=both sid=*; alter system set streams_pool_size=1
5、00m scope=spfile sid=*; alter system set archive_lag_target = 1200; alter system set _optimizer_use_feedback= false scope=spfile sid=*; alter system set _optimizer_invalidation_period=60 scope=both sid=*; 修改结束后,需重启数据库,才能确保上述修改生效。 3 将数据库设置成归档模式,并开启最小附加日志. 3.1 启用 db_reocvery_file_dest 参数,设置好归档日志存放路径,
6、SYSk3db1show parameter db_recovery NAME TYPE VALUE - - - db_recovery_file_dest string db_recovery_file_dest_size big integer 0 SYSk3db1alter system set db_recovery_file_dest_size=50g; - 此参数值按实际情况设置。 System altered. Elapsed: 00:00:00.04 SYSk3db1alter system set db_recovery_file_dest=+FLASH; - 此参数值按实际
7、情况设置。 System altered. Elapsed: 00:00:00.03 alter system set log_archive_dest_1=location=use_db_recovery_file_dest scope=both sid=*; 同时在两节点上执行:关闭数据库,设置归档模式,都设置了归档模式后,再打开数据库。 2节点1,节点2上。 Shutdown immediate; 3 节点1,节点2上。 Startup mount; 4 节点1,节点2上。 Alter database archivelog; Alter database add supplementa
8、l log data; - 开启最小附加日志 alter database add supplemental log data; 5 节点1,节点2上。 Alter database open;3 制定作业,定时采集系统表,业务表的统计信息, 3.1 以 sys 身份,使用 sqlplus 工具,登录生产库,创建定时作业,采集系统表,每周日早上7点开始运行。 create procedure pro_analyze_dict as begin dbms_stats.gather_dictionary_stats(); dbms_stats.gather_fixed_objects_stats(
9、);end pro_analyze_dict;/begin dbms_scheduler.create_schedule (schedule_name = SCHEDULE_SUNDAY_AT_0700, start_date = TO_DATE(2016-08-04 00:00:00,YYYY-MM-DD HH24:MI:SS), end_date = NULL, repeat_interval = FREQ=WEEKLY;BYDAY=SUN;BYHOUR=07; BYMINUTE=00; BYSECOND=0, comments = );end;/exec dbms_scheduler.d
10、rop_program(program_name= PROC_ANALYZE_DICT);begin dbms_scheduler.create_program (program_name = PROC_ANALYZE_DICT, program_type = PLSQL_BLOCK, program_action = BEGIN pro_analyze_dict; END;, number_of_arguments = 0, enabled = TRUE, comments = 2016-08-07 07:00:00);end;/begin dbms_scheduler.create_job
11、 (job_name = JOB_ANALYZE_DICT, program_name = PROC_ANALYZE_DICT, schedule_name = SCHEDULE_SUNDAY_AT_0700, enabled = TRUE, comments = zhang.huafu, analyze sys tables stats and fixed objects stats);end;/ 3.2 关闭系统自带的统计信息等功能。exec dbms_auto_task_admin.disable(client_name = auto space advisor, operation =
12、 NULL, window_name = null); exec dbms_auto_task_admin.disable(client_name = sql tuning advisor,operation = null, window_name = null);exec dbms_auto_task_admin.disable(client_name = auto optimizer stats collection, operation = NULL, window_name = NULL);3.3 以 sys 身份,用 sqlplus 工具,登录生产库,创建一个常用的管理账户,并授予合
13、适的权限:create user manager identified by 20160803;grant dba to manager;grant drop any table to manager;grant delete any table to manager;grant select any table to manager;grant select on dba_tables to manager;grant select on dba_objects to manager;grant select on dba_recyclebin to manager;grant select on dba_mview_logs to manager;grant analyze any to manager;grant update(failure_count) on sys.scheduler$_job to manager;-3.3.1 以 manager 身份登录,创建采集业务表的定时作业,每天早上5点运行。create or replace procedure manager.pro_analyze_stats asbegin for i in (select owner, table_name from dba_tables a