11gR2 sin sorpresas
Ing. Nelson Calero, OCP
[email protected]
JIAP 2011
Montevideo
17 Agosto 2011
Organización independiente sin fines de lucro, creada por
profesionales en Dic/2009.
Ámbito donde se promueve el intercambio de conocimiento
entre usuarios de tecnología Oracle, en áreas de aplicaciones
y tecnología (BD) .
Organizar eventos técnicos en el país en forma periódica.
Acercar referentes internacionales a eventos locales.
250 afiliados (agosto 2011)
http://www.uyoug.org.uy
Junio/2010: 4 oradores locales
60 asistentes
Octubre/2010: 5 oradores internacionales
5 oradores locales
80 asistentes
Julio/2011: 8 oradores internacionales
3 oradores locales
120 asistentes
Noviembre/2011: ?
Agenda
1 – ¿Qué hay de nuevo en 11gR2?
2 – Algunas funcionalidades
3 – Consideraciones al actualizar
Historia reciente
● Oracle version 1: 1978
…
● Oracle version 9i: 2001
● Oracle version 9iR2: 2002
● Oracle version 10g: 2003
● Oracle version 10gR2: 2005
● Oracle version 11gR1: 2007
● Oracle version 11gR2: 2009
● Patchset 1 (11.2.0.2): 2010
● PSU 11.2.0.2.3: Ago/2011
Algunas características nuevas
● Adaptive Cursor Sharing
● ADDM Enhancements (RAC)
● Automated Maintenance Tasks
● Automatic Memory Management
● Automatic SQL Tuning
● Automatic Storage Manager (ASM)
Enhancements
● AWR Baseline Enhancements
● Case Sensitive Passwords
● Data Recovery Advisor
● Database Resident Connection Pool
● Database Replay
● DDL With the WAIT Option
(DDL_LOCK_TIMEOUT)
● Diagnostics Repository
● Direct NFS
● Edition based redefinition
● Fine-Grained Access to
Network Services
● Finer Grained Dependency
Management
● Flashback Data Archive
● Flashback Transaction
● Function Result Cache
● Health Monitor
● Install Oracle Database 11g
● Invisible Indexes
● Logminer in EM
● Online Table Redefinition
● Partitioning interval
● Query Result Cache
● Read-Only Tables
● Resource Manager Enhancements
● RMAN Enhancements
● Scheduler Enhancements
● SecureFiles
● SQL Access Advisor
● SQL Performance Analyzer
● SQL Plan Management
● Statistics Collection Enhancements
● Table Compression Enhancements
● Temporary Tablespace
Enhancements
● Tablespace Encryption
….
Nuevas características
11.2.0.1 = 147
11.2.0.2 = 47
http://download.oracle.com/docs/cd/E11882_01/server.112/e17128/chapter1.html
http://download.oracle.com/docs/cd/E11882_01/server.112/e17128/chapter1_2.html
Nuevas características
Existen muchas charlas de “Best 10 features...”
Además de los manuales, la mejor guía hasta ahora :
– "Oracle Database 11g: The Top Features for
DBAs and Developers" de Arup Nanda.
http://www.oracle.com/technetwork/articles/sql/index-099021.html
Nuevos parámetros
11.2
● DEFERRED_SEGMENT_CREATION
● DST_UPGRADE_INSERT_CONV
● LISTENER_NETWORKS
● PARALLEL_DEGREE_LIMIT
● PARALLEL_DEGREE_POLICY
● PARALLEL_FORCE_LOCAL
● PARALLEL_MIN_TIME_THRESHOLD
● PARALLEL_SERVERS_TARGET
11.1
OPTIMIZER_USE_PENDING_STATISTICS
● OPTIMIZER_USE_SQL_PLAN_BASELINES
● PARALLEL_IO_CAP_ENABLED
● PLSCOPE_SETTINGS
● REDO_TRANSPORT_USER
● RESOURCE_MANAGER_CPU_ALLOCATION
● RESULT_CACHE_MAX_RESULT
● RESULT_CACHE_MAX_SIZE
● RESULT_CACHE_MODE
● RESULT_CACHE_REMOTE_EXPIRATION
● SEC_CASE_SENSITIVE_LOGON
● SEC_MAX_FAILED_LOGIN_ATTEMPTS
● SEC_PROTOCOL_ERROR_FURTHER_ACTION
● SEC_PROTOCOL_ERROR_TRACE_ACTION
● SEC_RETURN_SERVER_RELEASE_BANNER
● XML_DB_EVENTS
● ASM_PREFERRED_READ_FAILURE_GROUPS
● CLIENT_RESULT_CACHE_LAG
● CLIENT_RESULT_CACHE_SIZE
● COMMIT_LOGGING
● COMMIT_WAIT
● CONTROL_MANAGEMENT_PACK_ACCESS
● DB_LOST_WRITE_PROTECT
● DB_SECUREFILE
● DB_ULTRA_SAFE
● DDL_LOCK_TIMEOUT
● DIAGNOSTIC_DEST
● GLOBAL_TXN_PROCESSES
● JAVA_JIT_ENABLED
● LDAP_DIRECTORY_SYSAUTH
● MEMORY_MAX_TARGET
● MEMORY_TARGET
● OPTIMIZER_CAPTURE_SQL_PLAN_BASELINES
● OPTIMIZER_USE_INVISIBLE_INDEXES
Nuevas vistas DBA_*
11.2
● DBA_APPLY_CHANGE_HANDLERS
● DBA_HIST_DISPATCHER
● DBA_HIST_DYN_REMASTER_STATS
● DBA_HIST_IOSTAT_DETAIL
● DBA_HIST_SHARED_SERVER_SUMMARY
● DBA_HIST_SQLCOMMAND_NAME
● DBA_HIST_TOPLEVELCALL_NAME
● DBA_PARALLEL_EXECUTE_CHUNKS
● DBA_PARALLEL_EXECUTE_TASKS
● DBA_RECOVERABLE_SCRIPT_HIST
● DBA_SCHEDULER_DB_DESTS
● DBA_SCHEDULER_DESTS
● DBA_SCHEDULER_EXTERNAL_DESTS
● DBA_SCHEDULER_FILE_WATCHERS
● DBA_SCHEDULER_GROUP_MEMBERS
● DBA_SCHEDULER_GROUPS
● DBA_SCHEDULER_JOB_DESTS
● DBA_SCHEDULER_NOTIFICATIONS
● DBA_STREAMS_KEEP_COLUMNS
● DBA_STREAMS_SPLIT_MERGE
● DBA_STREAMS_SPLIT_MERGE_HIST
● DBA_STREAMS_STMT_HANDLERS
● DBA_STREAMS_STMTS
● DBA_TSTZ_TAB_COLS
● DBA_TSTZ_TABLES
● DBA_WALLET_ACLS
11.1
DBA_ADDM_FDG_BREAKDOWN
● DBA_ADDM_FINDINGS
● DBA_ADDM_INSTANCES
● DBA_ADDM_SYSTEM_DIRECTIV
● DBA_ADDM_TASK_DIRECTIVES
● DBA_ADDM_TASKS
● DBA_ADVISOR_DIR_DEFINITI
● DBA_ADVISOR_DIR_INSTANCE
● DBA_ADVISOR_DIR_TASK_INS
● DBA_ADVISOR_EXEC_PARAMET
● DBA_ADVISOR_EXECUTION_TY
● DBA_ADVISOR_EXECUTIONS
● DBA_ADVISOR_FDG_BREAKDOW
● DBA_ADVISOR_FINDING_NAME
● DBA_ADVISOR_SQLA_COLVOL
● DBA_ADVISOR_SQLA_TABLES
● DBA_ADVISOR_SQLA_TABVOL
● DBA_ADVISOR_SQLA_WK_SUM
● DBA_ADVISOR_SQLPLANS
● DBA_ADVISOR_SQLSTATS
● DBA_ARGUMENTS
● ….
137 en total !
Procesos Background
11.2.0.1 = 88
11.2.0.2 = 91
GCR - Global Conflict Resolution Slave Process
XDMG - Exadata Automation Manager
XDWK - Exadata Automation Manager
http://download.oracle.com/docs/cd/E14072_01/server.112/e10820/bgprocesses.htm
http://download.oracle.com/docs/cd/E11882_01/server.112/e17110/bgprocesses.htm
Parches para 11.2.0.2.0
Bugs corregidos y controlables
SQL> select optimizer_feature_enable, count(*)
from v$system_fix_control
group by optimizer_feature_enable
order by 1 desc;
OPTIMIZER_FEATURE_ENABLE COUNT(*)
------------------------- ----------
37
9.2.0.8 3
9.2.0 8
8.1.7 2
8.1.6 1
8.0.0 52
11.2.0.2 105
11.2.0.1 65
11.1.0.7 19
11.1.0.6 39
10.2.0.5 111
10.2.0.4 73
10.2.0.3 11
10.2.0.2 12
10.2.0.1 7
10.1.0.5 2
10.1.0.3 1
10.1.0 3
18 rows selected.
Algunos cambios
• Upgrade de Clusterware y ASM es out-of-place (nuevo home)
• Mejoras en algoritmos de estadísticas
– AUTO_SAMPLE_SIZE es 5x más rápido
– Puede combinar columnas y usar expresiones (extendidas)
• Cambio en horarios de ventanas de mantenimiento
– días de semana eran de 22 a 6hs, ahora son de 22 a 2hs y cada día
separado
– fin de semana era todo el día, ahora de 6 a 2hs
• Tuning automático de SQL (tuning advisor)
– puede implementar automáticamente SQL Profiles
• Gestión automática de memoria (SGA+PGA)
– MEMORY_TARGET
• Auditoría básica habilitada por defecto (SYS.AUD$) en la BD
Para destacar
Desde 11.2.0.2 patchsets son instalaciones completas
Infraestuctura de RAC para single instance (GI y Oracle Restart)
HA a nivel de SO : RAC One Node
Nuevas funcionalidades son para Enterprise Edition, y algunas son
options.
Tuning Pack se habilita con parámetro :
CONTROL_MANAGEMENT_PACK_ACCESS
Agenda
1 – ¿Qué hay de nuevo en 11gR2?
2 – Algunas funcionalidades
3 – Consideraciones al actualizar
Funcionalidades
Hay muchas ..
Algunas imprescindibles:
● Edition Based Redefinition
● SQL Plan Management
● Adaptive Cursor Sharing
● Real Application Testing
Edition Based Redefinition
Versionado de objetos dentro de la base de datos
– Vistas, sinónimos, objetos PL/SQL
– Tablas no es un objeto edicionable
Nuevos conceptos : editioning views y crossedition triggers
Nueva columna EDITION_NAME en DBA_OBJECTS
Ejemplo : actualizar aplicación mientras está en uso
create edition e1 as child of e0;
alter database default edition = e0;
alter session set edition = e1;
http://www.oracle.com/technetwork/database/features/availability/edition-based-redefinition-1-133045.pdf
SQL Plan Management
• Control de evolución de planes de ejecución usando Plan Baselines
• Se mantiene historia de ejecuciones y solo se usan planes que tienen mejor tiempo
de respuesta, considerando binds, outlines y entorno, que fueron aceptados.
• Parámetro OPTIMIZER_USE_SQL_PLAN_BASELINES. TRUE por defecto
• Para cargar los Plan Baselines:
– Capturando carga actual: OPTIMIZER_CAPTURE_SQL_PLAN_BASELINES
• Cuidado: genera overhead importante
– Manualmente usando DBMS_SPM
• Desde STS : LOAD_PLANS_FROM_SQLSET
• Desde Cursor caché : LOAD_PLANS_FROM_CURSOR_CACHE
• Desde Outlines : MIGRATE_STORED_OUTLINE
• El SQL Management Base (SMB) se almacena en SYSAUX
Adaptive Cursor Sharing
Mejora para evitar los problemas de bind peeking.
Uso de cursores inteligentes para sentencias que usan variables bind e histogramas :
• detecta de forma automática cuando usar nuevo plan de ejecución, considerando
tiempo de ejecución, IO, y binds
limita al mínimo la cantidad de cursores (childs)
•
• no se puede deshabilitar
No se usa en sentencias que:
• usan Parallel query
•
• usan Outlines
•
tienen más de 14 binds
tiene Hints
Nuevas columnas en V$SQL :
•
•
IS_BIND_SENSITIVE : sentencia usa bind y columnas con histogramas
IS_BIND_AWARE : estadísticas de ejecución cambian
Si se usan Plan Baselines (SPM), tener presente que si no se usa captura automática se
deben aceptar los nuevos planes.
Real Application testing
SQL Performance Analyzer
– Evaluar impacto de cambios en sistema (BD, hardware, OS).
– Captura workload en SGA= sentencias SQL + plan + estadísticas.
– Repite ejecución de forma serial.
– Compara ejecucione
Comentarios de: 11gR2 sin sorpresas (0)
No hay comentarios