3c7b1c153af27e60359b7675f0095c78.ppt
- Количество слайдов: 56
Nuevas características Oracle 11 g 13 de Abril del 2009 Hector Gabriel Ulloa Ligarius OCP Oracle 11 g hulloa@inmotion. cl 1
Lanzamiento en New York , USA 11 Julio 2007 2
Oracle 11 g Result Cache • SQL Query Result Cache • PL/Sql Function Result Cache 3
Oracle 11 g Result Cache : SQL Query Result Cache • Parámetro RESULT_CACHE_MODE : MANUAL o FORCE • MANUAL con hint /*+ result_cache */ • FORCE con hint /*+ no_result_cache */ • Parámetro RESULT_CACHE_MAX_RESULT • SQL Query Result Cache Shared Pool < 75% 4
Oracle 11 g Result Cache : SQL Query Result Cache • DBMS_RESULT_CACHE. MEMORY_REPORT • Restricciones : Diccionario de datos , secuencia. nextval y secuencia. currval • Invalidaciones en memoria 5
Oracle 11 g Result Cache : Pl/Sql Function Result Cache • Restricciones : Modo OUT, ni IN con BLOB , ni con REF CURSOR , tampoco bloque anónimos • Modo de trabajo : Verifica los parámetros de entrada de la función (sólo IN) • Vistas : V$RESULT_CACHE_OBJECTS 6
Oracle 11 g Result Cache : Pl/Sql Function Result Cache • Ejemplo (relies_on Tablas o vistas en que la función tiene dependencia) Create or replace function get_name (id number) return varchar 2 result_cache relies_on(emp) is v_return varchar 2(30); begin select ename into v_return from emp where empno=id; Return v_return; end; 7 /
Oracle 11 g Invisible indexes • OPTIMIZER_USE_INVISIBLE_INDEXES TRUE o FALSE • Para testing o índices temporales • Mantenidos en DML operations, no como los UNUSABLES • Nueva columna VISIBILITY 8
Oracle 11 g Invisible indexes • Ejemplo CREATE INDEX emp_ename ON emp(ename) TABLESPACE users STORAGE (INITIAL 20 K NEXT 20 k PCTINCREASE 75) INVISIBLE; ALTER INDEX index_name [VISIBLE | INVISIBLE] 9
Oracle 11 g Sequences without Select • Antes Select secuencia. nextval Into variable From dual; • Ahora variable : = secuencia. nextval; 10
Oracle 11 g Global ADDM – en RAC • Antes : Sólo vistas GV$ • Ahora : Database ADDM 11
Oracle 11 g Global ADDM – en RAC • Uso excesivo de Global Resources • Hot Blocks Database • Tráfico Interconnect • Latencias de red Instance 12
Oracle 11 g Data Recovery Advisor • Herramienta automática para detección de fallas , a nivel de bloques, pérdida de dbf , por ejemplo • Reparación manual o a través del Advisor • Repara bases de datos inactivas, montadas o abiertas • Distintas interfaces de trabajo 13
Oracle 11 g Data Recovery Advisor • Arquitecturas soportadas : Sólo single Database • Arquitecturas No soportadas : RAC , ni reparaciones sobre la Stand. By • Interfaces : Recovery Manager , Grid Control , Database Control • En RMAN : RMAN> list failure all; 14
Oracle 11 g Real Application Testing : Database Replay • Creación de ambientes de Test muy similares a producción. • Forma segura de validar , upgrades, parches, creación de índices. • El problema mas recurrente es equiparar la carga de trabajo en test. 15
Oracle 11 g Real Application Testing : Database Replay 16
Oracle 11 g Partitioning • Reference Partitioning • Transportable Tablespace Partitioning • Virtual Columns Partitioning 17
Oracle 11 g Reference Partitioning • Problemas al particionar tablas por columnas que no existen • Capacidad para particionar una tabla a través de su llave foránea 18
Oracle 11 g Reference Partitioning • Ejemplo create table customers ( cust_id number primary key, cust_name varchar 2(200), rating varchar 2(1) not null ) partition by list (rating) ( partition p. A values ('A'), partition p. B values ('B') ); create table sales ( sales_id number primary key, cust_id number not null, sales_amt number, constraint fk_sales_01 foreign key (cust_id) references customers ) partition by reference (fk_sales_01); 19
Oracle 11 g Virtual Columns Partitioning • Particionar una tabla mediante una columna calculada • Ejemplo : create table sales ( sales_id number, cust_id number, sales_amt number, sale_category varchar 2(6) generated always as Sólo por claridad ( case when sales_amt <= 10000 then 'LOW' else 'ULTRA' end ) virtual ) partition by list (sale_category) ( partition p_low values ('LOW'), partition p_ultra values ('ULTRA')) 20
Oracle 11 g Sensitive Password • Por defecto habilitado • Parámetro SEC_CASE_SENSITIVE_LOGIN • El upgrade desde 10 g, mantiene las password en 11 g • El orapwd también permite password sensitive • DBA_USERS. PASSWORD_VERSIONS 21
Oracle 11 g Hot Patching • Permite instalar parches con la base arriba • Con utilitario OPatch • OPatch detecta conflictos entre patchset • Disponible para ambientes en RAC • Restricciones : Sólo linux x 86 y Solaris SPARC 22
Oracle 11 g AMM : Automatic Memory Management • En Oracle 10 g : ASMM • En Oracle 11 g : AMM 23
Oracle 11 g AMM : Automatic Memory Management 24
Oracle 11 g Virtual columns • No consumen espacio, se calculan “on the fly” antes se calculaban con triggers • Se pueden crear índices • No soportado para IOT, EXTERNAL, CLUSTER ni TEMPORARY • Definición de la tabla en DBA_TAB_COLUMNS. DATA_DEFAULT 25
Oracle 11 g Virtual columns • Ejemplo : Create table employee ( emp_id number primary key, salary number (8, 2) not null, years_of_service number not null, curr_retirement as (salary*. 0005 * years_of_service) ); select table_name, column_name, data_default from dba_tab_columns where table_name='EMPLOYEE' and column_name='CURR_RETIREMENT'; TABLE_NAME COLUMN_NAME DATA_DEFAULT ------------------EMPLOYEE CURR_RETIREMENT "SALARY"*. 0005*"YEARS_OF_SERVICE" 26
Oracle 11 g TTE : Transparent Tablespace Encryption • TDE en Oracle 10 g • TTE en Oracle 11 g • Encriptación física • Se debe tener Wallet Open • Exp/Imp no soportado 27
Oracle 11 g TTE : Transparent Tablespace Encryption Implementación : a) Se crea el Wallet SQL> alter system set wallet open identified by “wallet 1"; b) En Oracle 10 g se encripta la columna SQL> alter table ejemplo modify campo 1 encrypt; c) En Oracle 11 g se crea un tablespace encriptado SQL> create tablespace EJEMPLO_TTE ENCRYPTION default storage (ENCRYPT) datafile ‘ruta/datafile. dbf’ size XMB; d) En Oracle 11 g se crea el segmento en este TBS 28
Oracle 11 g Recovery Manager • Data Recovery Advisor • No sólo respalda archives desde la FRA, sino también desde otras log_archive_dest_* (alternativas a posible corrupción en la FRA) • Nuevo formato de compresión : ZLIB (licenciado) en vez de BZIP 2 29
Oracle 11 g Recovery Manager • Interfile Backup Parallelism • Chequeo de consistencia • Las políticas de retención también son aplicadas a los log_archive_dest_* , no tan sólo a la FRA • Adiós UNDO (Bypass the undo committed data) sólo guarda pequeñas cantidades de UNDO (backup optimization = ON) 30
Oracle 11 g Recovery Manager : Data Recovery Advisor ERROR at line 1: ORA-01116: error in opening database file 18 ORA-01110: data file 4: '/ruta produccion/PAGOS 018. dbf' ORA-27041: unable to open file Linux Error: 2: No such file or directory Additional information: 3 RMAN> list failure; using target database control file instead of recovery catalog List of Database Failures ============= Failure ID Priority Status Time Detected Summary ------------ ------- 196 HIGH OPEN 10 -APR-09 One or more non-system datafiles are missing 31
Oracle 11 g Recovery Manager : Data Recovery Advisor RMAN> list failure 196 detail; Exacta causa del error RMAN> advise failure; Automated Repair Options ============ Option Repair Description ------------1 Restore and recover datafile 18 Strategy: The repair includes complete media recovery with no data loss Repair script: $ORACLE_BASE/app/diag/rdbms/<instancia>/<BD>/hm/reco_2342576112. hm 32
Oracle 11 g Recovery Manager : Data Recovery Advisor RMAN> repair failure preview; Muestra pasos a seguir Restore, recover, etc RMAN> repair failure; Aplica pasos 33
Oracle 11 g Recovery Manager : Chequeo Consistencia • RMAN> Validate database; • RMAN> Validate tablespace xxxxx; • RMAN> Validate datafile xxxxx block xxxx; • Se puede validar SPFILE, CONTROLFILECOPY, FRA, etc 34
Oracle 11 g Recovery Manager : Chequeo Consistencia RMAN> validate check logical datafile 2; Starting validate at 2008/11/10 09: 52: 36 using target database control file instead of recovery catalog channel ORA_DISK_1: starting validation of datafile channel ORA_DISK_1: specifying datafile(s) for validation input datafile number=00002 name=/oradata/V 11/sysaux 01. dbf channel ORA_DISK_1: validation complete, elapsed time: 00: 25 List of Datafiles ========= File Status Marked Corrupt Empty Blocks Examined High SCN -------------- ----2 OK 0 28279 104896 2885460 File Name: /oradata/V 11/sysaux 01. dbf Block Type Blocks Failing Blocks Processed --------------Data 0 21440 35
Oracle 11 g FDA : Flashback Data Archive • Flashback query en 9 i sin UNDO no hay Flash. Back • Flashback version query en 10 g sin UNDO no hay Flash. Back • Flashback Data Archive en 11 g sin UNDO , hay Flash. Back 36
Oracle 11 g FDA : Flashback Data Archive Implementación : a) Se crea usuario administrador con privilegios FLASBACK ARCHIVE ADMINISTER b) Se otorgan el privilegio flashback archive a un usuario c) Se crea área de archive SQL> create flashback archive <nombre> tablespace <nombre_tbs> retention xxx year; Mínima performance , mínimo storage (compress) b) Se otorgan privilegios sobre el área de Flash. Back Data Archive SQL> alter table <nombre tabla> flashback archive <nombre fbda>; 37
Oracle 11 g FDA : Flashback Data Archive Flujo proceso Background FBDA (Flashback Data Archive) • Se inicia con la base de datos • FBDA trabaja primero sobre el Undo en el Buffer Cache • Si el dato ya no esta en el buffer cache, lo va a buscar a los UNDO Segments • Toda la información capturada , es dejada en las tablas pertinentes en el FDA 38
Oracle 11 g FTB : Flashback Transaction Backout • Permite devolver transacciones ya comiteadas y sus dependencias • Mediante OEM • DBMS_FLASHBACK. TRANSACTION_BACKOUT • V$TRANSACTION 39
Oracle 11 g DDL Lock Timeout • Error recurrente al intentar modificar un objeto ORA-00054: resource busy • ¿Cómo saber cuando ejecutar el comando? • Parámetro DDL_LOCK_TIMEOUT de 1 a 1 millón de segundos (11, 5 horas) 40
Oracle 11 g New Alert Log • El archivo de alertas es escrito en formato XML Ubicación : $ORACLE_HOME/diag/rdbms/<instancia>/<BD>/alert • Se evitan los problemas de los grandes archivos de alertas pues se particiona el archivo de alertas • Por compatibilidad también es escrito en txt Ubicación : $ORACLE_HOME/diag/rdbms/<instancia>/<BD>/trace 41
Oracle 11 g New Alert Log Lo que se debe saber • ADR : Automatic Diagnostic Repository (Estructura de directorios): Contiene todos los trace , core files, archivos de alertas (RAC, ASM, CRS) • ADR : Ubicado en el parámetro DIAGNOSTIC_DEST • ADR : Se puede consultar la vista V$DIAG_INFO 42
Oracle 11 g New Alert Log Nombre Directorio Descripción Todo dentro del valor del parámetro DIAGNOSTIC_DEST →diag →rdbms →<Nombre de la base de datos> →<Nombre de la instancia> →alert Archivo de alertas en formato XML →cdump Equivalente al core_dump_dest →hm Para los trace del Health Monitor →incident →trace Trace de usuario y procesos background son almacenados acá al igual que el archivo de alertas en modo texto 43
Oracle 11 g New Alert Log : Utilitario ADRCI • Para ejecutar el utilitario ADRCI $ $ORACLE_HOME/bin/adrci • Para mostrar todos los HOME de las distintas instancias en el motor adrci> show homes • Para visualizar el archivo de alertas de un home en particular adrci> set homepath diag/rdbms/PROD 1 adrci> show alert –tail 50 44
Oracle 11 g Spfile and Memory values • Crear spfile desde pfile • Crear pfile desde spfile • Crear spfile | pfile desde memoria 45
Oracle 11 g Add Column with default Values • En Oracle 10 g, añadir una columna con default values podría demorar mucho y utilizaría demasiados recursos • En Oracle 11 g, añadir una columna con default values es instantáneo y sólo le asigna el default, cuando se consulta el registro 46
Oracle 11 g Tables Read Only • En Oracle 10 g, se emula el READ ONLY revocando el SELECT • En Oracle 11 g, simplemente se ejecuta SQL> ALTER TABLE <tabla> READ ONLY; • Visualizado en *_TABLE. READ_ONLY 47
Oracle 11 g Dataguard • Compresión de los archive logs, envíados a la Stand. By • Consultas en la Stand. By al mismo tiempo que se aplican los archives • Snapshots Database 48
Oracle 11 g Space Management Coordinator • Nuevo proceso Background • Autoextensiones a nivel de Tablespace • Solicita el espacio a nivel de segmentos temporales 49
Oracle 11 g Shrinking Temporary Tablespace • Siempre permanecen al 100% y creciendo • Se reutiliza el espacio por consultas o usuarios • Si deseo reutilizar espacio para reasignar a otro tablespace, debo recrear , siempre y cuando no haya operaciones de sort en curso • En Oracle 11 g se puede hacer un Shrink 50
Oracle 11 g Shrinking Temporary Tablespace SQL> alter tablespace <nombre temporal> shrink space [tempfile XXX]; SQL> alter tablespace <nombre temporal> shrink space [tempfile xxxx] keep XXXM; SQL> select * from dba_temp_free_space; 51
Oracle 11 g Rebuild online Index • En Oracle 10 g , las DML no se veían afectadas • En Oracle 11 g , las DML tampoco se ven afectadas • ¿En qué se diferencian? 52
Oracle 11 g Referencias 466931. 1 : Oracle Database 11 g Top New Features : Summary 453487. 1 : 11 g New Features : Top 5 Features In 11 g 430887. 1 : 11 g New Feature PL/SQL Function Result Cache 453567. 1 : 11 g New Feature : SQL Query Result Cache 430887. 1 : 11 g New Feature PL/SQL Function Result Cache 453295. 1 : 11 g New Feature : Invisible Index 433068. 1 : Sequences in PL/SQL Expressions 466682. 1 : Data Recovery Advisor -Reference Guide. 465946. 1 : 11 g Data Recovery Advisor: How to recover from missing datafile 452447. 1 : 11 g Partitioning Enhancements 429465. 1 : 11 g R 1 New Feature : Case Sensitive Passwords and Strong User Authentication 443746. 1 : Automatic Memory Management(AMM) on 11 g 53
Oracle 11 g Referencias 295626. 1 : How To Use Automatic Shared Memory Management (ASMM) In Oracle 10 g 432776. 1 : 11 g New Feature : Transparent Data Encryption at Tablespace Level 762339. 1 : RMAN 11 G : Data Recovery Advisor - RMAN command line example 419173. 1 : RMAN 11 G : Import Catalog 470199. 1 : 11 g feature: Flashback Data Archive Guide. 464512. 1 : 11 g Locking Enhancements 779569. 1 : DDL_LOCK_TIMEOUT Behavior in 11 G 438148. 1 : Finding alert. log file in 11 g 422893. 1 : 11 g Understanding Automatic Diagnostic Repository. 747146. 1 : 11 g New Feature: Read-Only Tables 452697. 1 : How To Shrink A Temporary Tablespace in 11 G ? 54
Preguntas 55
Muchas gracias!!! Nos vemos en Oracle 12 g 56
3c7b1c153af27e60359b7675f0095c78.ppt