Oracle 12c 부터 session-specific GTT(Global Temporary table)에 대해 세션 개별의 통계정보 수집이 가능합니다. 

GTT의 경우 성능이슈로 permanent table을 만들어 drop 하는 등의 작업을 많이 했는데 

12c의 경우 session-private statistic 수집으로 이러한 이슈들이 해결되지 않을까 기대해 봅니다. 


SQL> exec dbms_stats.gather_table_stats(ownname=>'SH', tabname=>'TEMP_GTT');


but, Parallel DML (update, delete, merge)에 대한 제약은 여전히 11g와 동일하네요..


Session-Private Statistics for Global Temporary Tables

Traditionally, global temporary tables had only one set of statistics that were shared among all sessions even though the table could contain different data in different sessions. In Oracle Database 12c Release 1 (12.1), global temporary tables now have session-private statistics. That is a different set of statistics for each session. Queries issued against the global temporary table use the statistics from their own session.

Session-private statistics for global temporary tables improves the performance and manageability of temporary tables. Users no longer need to manually set statistics for the global temporary table on a per session basis or rely on dynamic sampling. This reduces the possibility of errors in the cardinality estimates for global temporary tables and ensures that the optimizer has the data to identify optimal execution plans.

See Also:

Oracle Database SQL Tuning Guide for details



메뉴얼 내용에 따르면 Update 사전 check 기능 강화과 사후 작업 자동화가 추가되었습니다.

한번 돌려봐서 확인은 해봐야 겠지만 upgrade를 위해 이것저것 챙겨야할 부분이 자동화되면 upgrade 단계에서의 사고는 확실히 줄 수 있겠네요.

가장 반길만 한 부분은 parallel upgrade 부분입니다. 

upgrade 단계에서 내부 object upgrade 부분은 serial 하게 수행되어 일정 downtime이 요구되었죠.. 

하나 Parallel upgrade로 수행된다 해도 ADG, OGG 등의 제품이 없다면 zero-downtime으로 upgrade 되지 않는건 마찬가지..  

뭐.. Oracle 13c 정도면 zero-downtime upgrade 가 지원되지 않을까.. 하고 기대합니다.  


Enhanced Upgrade Automation

Database upgrade has been enhanced for better ease-of-use by improving the amount of automation applied to the upgrade process. Additional validation steps have been added to the pre-upgrade phase in both the command-line pre-upgrade script and the Database Upgrade Assistant (DBUA). In addition, the pre-upgrade validation steps have been enhanced with the ability to generate a fix-up script to resolve most issues that may be identified before the upgrade.

Post-upgrade steps have also been enhanced to reduce the amount of manual work required for a database upgrade. The post-upgrade status script gives more explicit guidance about the success of the upgrade on a component-by-component basis. Post-upgrade fix-up scripts are also generated to automate tasks that must be performed after the upgrade.

See Also:

Oracle Database Upgrade Guide for details

2.12.1.2 Parallel Upgrade

The database upgrade scripts can now take advantage of multiple CPU cores by using parallel processing to speed up the upgrade process. This results in less downtime due to a database upgrade, and thus improved database availability.

See Also:

Oracle Database Upgrade Guide for details




Oracle 12c부터는 DBMS_QOPATCh package를 통해서 sqlplus 상에서 patch 정보를 확인할 수 있답니다..

Database node가 많은 RAC 환경에서는 편할 수 있겠네요.. 


Queryable Patch Inventory

Using DBMS_QOPATCH, Oracle Database 12c provides a PL/SQL or SQL interface to view the database patches that are installed. The interface provides all the patch information available as part of the OPatch lsinventory -xml command. The package accesses the Oracle Universal Installer (OUI) patch inventory in real time to provide patch and patch meta information.

Using this feature, users can:

  • Query what patches are installed from SQL*Plus.

  • Write wrapper programs to create reports and do validation checks across multiple environments.

  • Check patches installed on Oracle RAC nodes from a single location instead of having to log onto each one in turn.


+ Recent posts