Oracle 12.2 来了,DBA 们准备好了吗? 杭州美创科技有限公司 周亮
自我介绍
C ONTENT 目录 01 为什么要升级到 12c 02 Oracle 12c 新特性 03 Oracle 12c 升级与迁移 04 一些关于 12c 的数据库参数
12c 技术研究项目
关于升级到 12c 的疑虑? 为什么要升级到 12c? 新版本对应用软件兼容性如何? 升级 12c 能带来什么益处? 升级后是否会导致应用性能下降? 升级时如何保证停机时间最短? 如何使用 12c 新特性? 万一 12c 升级失败, 怎么办? 12c 需要对系统运维工作进行哪些调整?
但 12c 已经蓄势待发! Platform 12.2.0.1 12.1.0.211 12.1.0.1 2,12 11.2.0.4 10 11.2.0.3 11.2.0.2 11.2.0.12 11.1.0.7 1 10.2.0.5 3 10.2.0.4 4 10.1.0.5 Linux x86 Not planned Not planned Not planned 28-Aug-13 23-Sep-11 13-Sep-10 1-Sep-09 18-Sep-08 30-Apr-10 22-Feb-08 30-Jan-06 Linux x86-64 1-Mar-17 22-Jul-14 25-Jun-13 27-Aug-13 23-Sep-11 13-Sep-10 1-Sep-09 18-Sep-08 30-Apr-10 17-Mar-08 24-Feb-06 Oracle Solaris SPARC (64- bit) Oracle Solaris x86-64 (64- bit) Microsoft Windows x64 (64-bit) 1-Mar-17 22-Jul-14 25-Jun-13 29-Aug-13 1-Oct-11 24-Sep-10 6-Nov-09 6-Oct-08 ###### 30-Apr-08 5-Feb-06 1-Mar-17 22-Jul-14 25-Jun-13 29-Aug-13 1-Oct-11 24-Sep-10 ###### Not planned ###### ###### Not planned 16-Mar-17 25-Sep-14 9-Jul-13 25-Oct-13 ###### 15-Dec-10 2-Apr-10 ###### 27-Jul-10 ###### Not planned HP-UX Itanium9 Q2CY2017 ###### 9-Jan-14 10-Oct-13 29-Oct-11 19-Oct-10 22-Dec-09 6-Oct-08 3-Jun-10 30-Apr-08 7-Jun-06 HP-UX PA- RISC (64-bit) See footnote 8 below IBM AIX on POWER Systems IBM Linux on System z Platform desupported 8 Platform desupported 8 Platform desupported 8 2-Jan-14 16-Feb-12 15-Mar-11 ###### ###### 15-Dec-10 2-Jun-08 5-Feb-06 Q2CY2017 ###### 9-Jan-14 10-Oct-13 29-Oct-11 19-Oct-10 22-Dec-09 6-Oct-08 3-Jun-10 ###### 5-Feb-06 Q2CY2017 ###### 9-Jan-14 9-Jan-14 1-Dec-11 30-Mar-11 Not planned Not planned 3-Jan-11 16-Dec-08 26-Aug-06 Microsoft Not planned Not planned Not planned 25-Oct-13 ###### 15-Dec-10 5-Apr-10 10-Oct-08 19-Jul-10 17-Mar-08 13-Feb-06 Windows (32- bit)
Oracle 数据库版本支持列表 过期后的服务支持范围降低, 运维成本提高
Direct Upgrade to Oracle 12.2 Oracle 9.2.0.8 Oracle 10.1.0.5 Oracle 10.2.0.5 Oracle 11.1.0.7 Oracle 11.2.0.3/4 Oracle 12.1.0.1/2 Oracle 12.2.0.1 Oracle 9.2 (GA: Jul 2002) 9.2.0.8 11.2.0.4 Oracle 10.1 (GA: Jan 2004) 10.1.0.5 11.2.0.4 Oracle 10.2 (GA: Jul 2005) 10.2.0.5 12.1.0.2 Oracle 11.1 (GA: Aug 2007) 11.1.0.7 12.1.0.2 Oracle 11.2 (GA: Sep 2009) 11.2.0.3/4 DIRECT Oracle 12.1 (GA: Jun 2013) 12.1.0.1/2 DIRECT
C ONTENT 目录 01 为什么要升级到 12c 02 Oracle 12c 新特性 03 Oracle 12c 升级与迁移 04 一些关于 12c 的数据库参数
12c 新特性概述 Enterprise Manager CDB and PDBs ADO and Storage Security HA Manageability Performance Miscellaneous Enterprise Manager Cloud Control Basics CDB and PDB Creation CDB and PDB Mgt Tablespaces and Users Unified Audit RMAN DB Operations SQL Tuning Partitioning Real-Time ADDM Privilege Analysis SQL Enterprise Manager Database Express Heat Map and Automatic Data Optimization In-Database Archiving and Temporal Validity Schema Change Plans Compare Period ADDM Data Pump, SQL*Loader & External Tables B&R and Flashback Data Redaction Resource Mgr Other tools Online Datafile Move Temporal History Data Comparisons Other topics in referenced courses Index, Table, ADR
几个重要的新特性 CDB/PDB 主要用于整合数据库, 节省主机资源 In Memory Option 列存储的格式, 在内存缓存表 / 表分区, 提供数倍的压缩, 提高数据分析性能 Sharding 提供了应用横向扩展的可能性 CDB/PDB Shareding In Memory Option
PDB/CDB: 为 PDB 设置内存参数 ( 一 )
PDB/CDB: 为 PDB 设置内存参数 ( 二 )
PDB/CDB:LOCAL UNDO TABLESPACE
PDB/CDB: 最佳实践 n 确保 redolog file 放在 I/O 性能较好的存储中,LGWR 进程可能会存在性能瓶颈
In Memory Option
In Memory Option: 如何加快访问速度?( 一 ) Buffer Cache SELECT COL4 FROM MYTABLE; X X X X X RESULT Row Format 17
In Memory Option: 如何加快访问速度?( 二 ) IM Column Store SELECT COL4 FROM MYTABLE; Column Format X X X X X RESULT 18
In Memory Option: 存储索引 ID 列的 (IMCU) 存储索引 ID ID ID ID IMCU_Addr 30 400 IMCU_Addr 410 600 IMCU_Addr 10 300 Min : 80 410 10 XXX Max: 400 600 300 YYY 以 ID 列为例,Oracle 将 ID 列的每个 IMCU 中最小 ID 值和最大 ID 值, 保存到一块专门的内存区域, 这个内存区就是存储索引 对于非全扫描类操作,Oracle 将先查找存储索引, 过滤掉不需要扫描的 IMCU, 然后再进行扫描操作 比如查询条件是 ID>20 and ID<=100 的列值, 图中第二个 IMCU 中,ID 值的范围是 410~600, 它就将被过滤掉 存储索引不同以传统的 B 树索引, 和 HASH 也不一样, 它只是为了帮助跳过一部分 IMCU, 对于结果集很小的查询操作, 它对于性能的帮助比传统索引差很多
In Memory Option: 参数配置最佳实践 n InMemory 选项默认不开启 n INMEMORY_SIZE 设置必须大于 100M n SGA_TARGET=Existing SGA_TARGET+INMEMORY_SIZE( 单实例 ) n SGA_TARGET=(Existing SGA_TARGET+INMEMORY_SIZE)*1.1(RAC) n PGA_TARGET=PARALLEL_MAX_SERVERS+2GB n Set _smm_auto_max_io_size =1024
Sharding: 架构 Oracle Database 12c Release 2 Offers Choice Oracle RAC Oracle Sharding N Physical Databases A single physical database A single logical database
Sharding: 最佳实践 n 需要应用配合, 设定分区键, 设定具有主外键关系的一组表 (table family) n 12.2.0.1, 一个 shared DB 只支持一个 table family 无法应对复杂应用场景 n 12.2.0.1, 目前只支持 hash 分区,range 和 list 分区会在未来版本中支持
C ONTENT 目录 01 为什么要升级到 12c 02 Oracle 12c 新特性 03 Oracle 12c 升级与迁移 04 一些关于 12c 的数据库参数
Oracle 12c 升级与迁移 升级通常与容量无关 迁移通常与容量相关
多种升级 / 迁移 / 回退方案比较 方案跨平台升级时间环境要求技术复杂性可回退性应用关联性适用场景 数据逻辑迁移 支持 数小时 一套额外存储 和主机 较简单 良好 与应用相关 数据量不大, 停机时间窗口较长 的系统 原地升级 N/A 2-3 小时 无 较简单 良好 与应用无关 数据量大, 停机时间窗口在 2-3 小时左右的系统 表空间传输 支持 数小时 一套额外存储 和主机 较简单 良好 与应用相关 数据量不大, 停机时间窗口较长 的系统 Data Guard 方案 不支持 2-3 小时 一套额外存储 和主机 复杂 良好 与应用无关 数据量大, 停机时间窗口在 2-3 小时左右的系统 增量 RMAN+TTS 方案 Golden Gate 方案 支持 几乎零停机 一套额外存储 和主机 支持 几乎零停机 一套额外存储 和主机 复杂 良好 与应用无关 数据量大, 停机时间窗口要求最 短的系统 最复杂 良好 与应用无关 数据量大, 停机时间窗口要求最 短的系统
性能保障整体流程 升级前采集执行计划 升级前后 AWR 数据比较 通过 SPA 验证 SQL 语句 若出现性能衰减, 采用 SQL Plan Management SQL Tuning Advisor 等工具 通过 Database Replay 验证功能和性能
C ONTENT 目录 01 为什么要升级到 12c 02 Oracle 12c 新特性 03 Oracle 12c 升级与迁移 04 一些关于 12c 的数据库参数
12.2 新增加的参数 Oracle Database 12.2.0.1 ADG_IMC_ENABLED ALLOW_GLOBAL_DBLINKS ALLOW_GROUP_ACCESS_TO_SGA APPROX_FOR_AGGREGATION APPROX_FOR_COUNT_DISTINCT APPROX_FOR_PERCENTILE ASM_IO_PROCESSES CDB_CLUSTER CDB_CLUSTER_NAME CLONEDB_DIR CONTAINERS_PARALLEL_DEGREE CURSOR_INVALIDATION DATA_GUARD_SYNC_LATENCY DATA_TRANSFER_CACHE_SIZE DEFAULT_SHARING DISABLE_PDB_FEATURE ENABLE_DNFS_DISPATCHER ENABLED_PDBS_ON_STANDBY ENCRYPT_NEW_TABLESPACES EXTERNAL_KEYSTORE_CREDENTIAL_LOCATION INMEMORY_EXPRESSIONS_USAGE INMEMORY_VIRTUAL_COLUMNS INSTANCE_ABORT_DELAY_TIME INSTANCE_MODE LONG_MODULE_ACTION MAX_IDLE_TIME MAX_IOPS MAX_MBPS MAX_PDBS OFS_THREADS ONE_STEP_PLUGIN_FOR_PDB_WITH_TDE OPTIMIZER_ADAPTIVE_PLANS OPTIMIZER_ADAPTIVE_STATISTICS OUTBOUND_DBLINK_PROTOCOLS REMOTE_RECOVERY_FILE_DEST RESOURCE_MANAGE_GOLDENGATE SEC_PROTOCOL_ALLOW_DEPRECATED_RPCS SGA_MIN_SIZE SHRD_DUPL_TABLE_REFRESH_RATE STANDBY_DB_PRESERVE_STATES TARGET_PDBS UNIFORM_LOG_TIMESTAMP_FORMAT
12.2 废弃和过时的参数 Oracle Database 12.2.0.1 Deprecated: O7_DICTIONARY_ACCESSIBILITY ASM_PREFERRED_READ_FAILURE_GROUPS DB_BLOCK_BUFFERS PARALLEL_ADAPTIVE_MULTI_USER UNIFIED_AUDIT_SGA_QUEUE_SIZE UTL_FILE_DIR Obsolete: _DATA_TRANSFER_CACHE_SIZE _DTREE_BINTEST_ID _DTREE_COMPRESSBMP_ENABLED _EVOLVE_PLAN_BASELINE_REPORT_LEVEL _FIC_MAX_LENGTH _FIC_OUTOFMEM_CANDIDATES _IDL_CONVENTIONAL_INDEX_MAINTENANCE _KKS_FREE_CURSOR_STAT_PCT _MAX_LOG_WRITE_IO_PARALLELISM Oracle Database 12.2.0.1 Obsolete: _MODULE_ACTION_OLD_LENGTH _OPTIMIZER_ADAPTIVE_PLANS _PLAN_VERIFY_LOCAL_TIME_LIMIT _PX_ASYNC_GETGRANULE _PX_SLAVES_SHARE_CURSORS _SPR_USE_HASH_TABLE _SQLEXEC_PROGRESSION_COST _USE_HIDDEN_PARTITIONS _VERY_LARGE_PARTITIONED_TABLE EXCLUDE_SEED_CDB_VIEW OPTIMIZER_ADAPTIVE_FEATURES PARALLEL_AUTOMATIC_TUNING PARALLEL_DEGREE_LEVEL PARALLEL_IO_CAP_ENABLED PARALLEL_SERVER PARALLEL_SERVER_INSTANCES USE_INDIRECT_DATA_BUFFERS
一些最佳实践参数列表 alter system set "_optimizer_aggr_groupby_elim"=false; alter system set "_drop_stat_segment"=1; alter system set "_common_data_view_enabled"=false; alter system set "_optimizer_dsdir_usage_control"=0; alter system set optimizer_adaptive_features=false; alter system set "_optimizer_adaptive_plans"=false; alter system set "_optimizer_gather_feedback"=false; alter system set "_optimizer_enable_extended_stats"=false; alter system set "_optimizer_ads_use_result_cache"=false; alter system set "_use_single_log_writer"=true scope=spfile; 注意 : 修改以上参数需谨慎!
THANK YOU! 杭州美创科技有限公司总部 服务热线 :400-711-8011 官网 :http://www.mchz.com.cn 电话 :0571-28236100 地址 : 杭州市拱墅区丰潭路 508 号天行国际中心 7 号楼 12 层