PRACTICAS TEMA 4. NUEVAS FUNCIONALIDADES DE MONITORIZACIÓN Y AJUSTE.
|
|
- Rosa María Rojas Martín
- hace 2 años
- Vistas:
Transcripción
1 PRACTICAS TEMA 4. NUEVAS FUNCIONALIDADES DE MONITORIZACIÓN Y AJUSTE Ver las filas de las vistas: V$OSSTAT, V$SYS_TIME_MODEL, V$SES_TIME_MODEL, V$SYSMETRIC, V$SESSMETRIC, V$FILEMETRIC, V$EVENTMETRIC, V$SYSTEM_WAIT_CLASS, V$SESSION_WAIT_CLASS, V$WAITCLASSMETRIC Pruebas con AWR. Sacar un snapshot explícitamente y, desde el usuario SCOTT, crear una tabla EMP2 a partir de EMP, generando E/S. Volver a sacar otro snapshot. Generar el infome AWR, en formato HTML, entre los dos snapshots anteriores Pruebas ASH. Vamos a generar un informe ASH, en formato HTML, tomando como comienzo el primer snapshot anterior (comprueba su fecha y hora para calcular el tiempo atrás q tienes q indicarle al informe ASH) Pruebas ADDM. Vamos a generar un informe ADDM ($ORACLE_HOME/rdbms/admin/addmrpt.sql) entre los dos snapshots anteriores Probar SQL TUNNING. Vamos a hacerlo con la sentencia select count(*) from scott.emp, scott.emp, scott.emp, scott.emp. Generaremos la tarea, y después la lanzaremos, para poder generar el informe. Finalmente obtendremos un script con las recomendaciones del informe Probar SEGMENT ADVISOR. Vamos a hacerlo con la tabla SCOTT.EMP2 (creada a partir de SCOTT.EMP y generando muchas filas insertando sobre ella misma, para finalmente borrar al menos la mitad de las filas para que quede espacio libre). Generaremos la tarea, y después la lanzaremos, para poder generar el informe Probar UNDO ADVISOR. Vamos a probar las funciones q proporciona el paquete DBMS_UNDO_ADV, tanto para ver el estado actual del UNDO en nuestra BD, como para obtener estimaciones de qué tamaño debería tener nuestro tablespace de UNDO para el valor de undo_retention actual; y tb, en función de la query q más ha tardado, q undo_retention necesitariamos. Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 1
2 4.1. Consultar las principales vistas dinámicas de la 10g relacionadas con el AWR: V$OSSTAT, V$SYS_TIME_MODEL, V$SES_TIME_MODEL, V$SYSMETRIC, V$SESSMETRIC, V$FILEMETRIC, V$EVENTMETRIC, V$SYSTEM_WAIT_CLASS, V$SESSION_WAIT_CLASS, V$WAITCLASSMETRIC. Probar AWR, ASH, ADDM, SQL TUNING y SEGMENT ADVISOR, según se va proponiendo en la resolución. Solución: SQL> set pagesize 37 SQL> set pause on SQL> set linesize 100 SQL> select * from V$OSSTAT; STAT_NAME VALUE OSSTAT_ID NUM_CPUS 2 0 IDLE_TIME BUSY_TIME USER_TIME SYS_TIME IOWAIT_TIME NICE_TIME RSRC_MGR_CPU_WAIT_TIME 0 14 LOAD NUM_CPU_SOCKETS 1 17 PHYSICAL_MEMORY_BYTES SQL> select STAT_NAME,VALUE from V$SYS_TIME_MODEL ORDER BY VALUE DESC; STAT_NAME VALUE sql execute elapsed time DB time background elapsed time background cpu time parse time elapsed hard parse elapsed time DB CPU PL/SQL execution elapsed time PL/SQL compilation elapsed time repeated bind elapsed time connection management call elapsed time hard parse (sharing criteria) elapsed time sequence load elapsed time hard parse (bind mismatch) elapsed time failed parse elapsed time 5984 RMAN cpu time (backup/restore) 0 Java execution elapsed time 0 failed parse (out of shared memory) elapsed time 0 inbound PL/SQL rpc elapsed time 0 SQL> select SID,STAT_NAME,VALUE from V$SESS_TIME_MODEL ORDER BY VALUE DESC; SID STAT_NAME VALUE 33 background elapsed time background elapsed time background cpu time DB time sql execute elapsed time DB CPU parse time elapsed Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 2
3 14 hard parse elapsed time (Los datos de cada sesión, como el nombre de usuario, se pueden sacar de v$session por sid) SQL> select METRIC_NAME,VALUE from V$SYSMETRIC where metric_name like '%Ratio%'; METRIC_NAME VALUE Buffer Cache Hit Ratio 100 Memory Sorts Ratio 100 Soft Parse Ratio 40 User Calls Ratio Row Cache Hit Ratio 100 Row Cache Miss Ratio 0 Library Cache Hit Ratio Library Cache Miss Ratio SQL> select SESSION_ID, CPU, PGA_MEMORY, HARD_PARSES, SOFT_PARSES, PHYSICAL_READ_PCT, LOGICAL_READ_PCT from V$SESSMETRIC; SESSION_ID CPU PGA_MEMORY HARD_PARSES SOFT_PARSES PHYSICAL_READ_PCT LOGICAL_READ_PCT SQL> select FILE_ID,AVERAGE_READ_TIME,AVERAGE_WRITE_TIME,PHYSICAL_BLOCK_READS,PHYSICAL_BLOCK_WRITES from V$FILEMETRIC; FILE_ID AVERAGE_READ_TIME AVERAGE_WRITE_TIME PHYSICAL_BLOCK_READS PHYSICAL_BLOCK_WRITES (Los nombres de ficheros se pueden sacar de v$dbfile por file#) SQL> select EVENT_ID,NUM_SESS_WAITING,TIME_WAITED,WAIT_COUNT from V$EVENTMETRIC where NUM_SESS_WAITING>0; EVENT_ID NUM_SESS_WAITING TIME_WAITED WAIT_COUNT (Los nombres de eventos se pueden sacar de v$system_event, por event_id) Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 3
4 SQL> select wait_class,total_waits,time_waited from v$system_wait_class; WAIT_CLASS TOTAL_WAITS TIME_WAITED Other Application 85 0 Configuration Administrative 2 6 Concurrency Commit Idle Network User I/O System I/O SQL> select sid,wait_class,total_waits,time_waited from v$session_wait_class order by time_waited desc; SID WAIT_CLASS TOTAL_WAITS TIME_WAITED 29 Idle Idle Idle System I/O System I/O User I/O User I/O Concurrency SQL> select wait_class#, dbtime_in_wait, time_waited, wait_count from v$waitclassmetric; WAIT_CLASS# DBTIME_IN_WAIT TIME_WAITED WAIT_COUNT (Se puede obtener el nombre del tipo de espera, wait_class, de v$system_wait_class por wait_class#) 4.2. Pruebas con AWR. Sacar un snapshot explícitamente y, desde el usuario SCOTT, crear una tabla EMP2 a partir de EMP, generando E/S. Volver a sacar otro snapshot. Generar el infome AWR, en formato HTML, entre los dos snapshots anteriores. (Vamos a sacar el primer snaphost) SQL> connect / as sysdba Connected. SQL> EXECUTE dbms_workload_repository.create_snapshot(); PL/SQL procedure successfully completed. (Ahora vamos a crear la tabla SCOTT.EMP2 y a generar E/S sobre ella. Para ello la creamos a partir de SCOTT.EMP y Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 4
5 luego insertamos las propias filas q contiene con insert select, repitiendo esto último al menos 8 veces. Después haremos varias consultas.) SQL> connect scott/tigercursoxy Connected. SQL> create table emp2 as select * from emp; Table created. SQL> begin for i in loop insert into emp2 select * from emp2; end loop; end; / PL/SQL procedure successfully completed. SQL> select count(*) from emp2; COUNT(*) SQL> commit; Commit complete. SQL> select deptno,count(*) from emp2 group by deptno; DEPTNO COUNT(*) SQL> select empno,count(*) from emp2 group by empno; EMPNO COUNT(*) rows selected. SQL> select count(*) from emp2 where empno=7900; COUNT(*) 512 (Ahora vamos a tomar el segundo snapshot) SQL> connect / as sysdba Connected. SQL> EXECUTE dbms_workload_repository.create_snapshot(); PL/SQL procedure successfully completed. (Y ahora vamos a lanzar el informe de AWR, $ORACLE_HOME/rdbms/admin/awrrpt.sql, en formato HTML, para los dos últimos snapshots q hemos creado explícitamente) Enter value for report_type: html Enter value for num_days: 2 Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 5
6 Listing the last 2 days of Completed Snapshots Snap Instance DB Name Snap Id Snap Started Level CURSO69 CURSO Jan : Jan : Jan :33 1 Specify the Begin and End Snapshot Ids ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Enter value for begin_snap: 596 Enter value for end_snap: 597 Specify the Report Name ~~~~~~~~~~~~~~~~~~~~~~~ The default report file name is awrrpt_1_596_597.html. To use this name, press <return> to continue, otherwise enter an alternative. Enter value for report_name: awrrpt_cursoxy.html End of Report </BODY></HTML> Report written to awrrpt_cursoxy.html (Una vez q tenemos el fichero HTML, vamos a ponerlo en un directorio desde donde podamos verlo en el servidor web, OJO, sustituye XY por los números de tu usuario!!!) /home/curso/cursoxy (CURSOXY)> cp awrrpt_cursoxy.html /var/www/html/temp (Ahora puedes ver tu informe desde Pruebas ASH. Vamos a generar un informe ASH, en formato HTML, tomando como comienzo el primer snapshot anterior (comprueba su fecha y hora para calcular el tiempo atrás q tienes q indicarle al informe ASH). SQL> connect / as sysdba Connected. Current Instance ~~~~~~~~~~~~~~~~ Specify the Report Type ~~~~~~~~~~~~~~~~~~~~~~~ Enter 'html' for an HTML report, or 'text' for plain text Defaults to 'html' Enter value for report_type: html Defaults to 15 mins Enter value for begin_time: 45 Press Enter to analyze till current time Enter value for duration: Enter value for report_name: ashrpt_cursoxy.html End of Report </BODY></HTML> Report written to ashrpt_cursoxy.html Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 6
7 (Una vez q tenemos el fichero HTML, vamos a ponerlo en un directorio desde donde podamos verlo en el servidor web, OJO, sustituye XY por los números de tu usuario!!!) /home/curso/cursoxy (CURSOXY)> cp ashrpt_cursoxy.html /var/www/html/temp (Ahora puedes ver tu informe desde Pruebas ADDM. Vamos a generar un informe ADDM ($ORACLE_HOME/rdbms/admin/addmrpt.sql) entre los dos snapshots anteriores. SQL> connect / as sysdba Connected. Listing the last 3 days of Completed Snapshots Snap Instance DB Name Snap Id Snap Started Level CURSO69 CURSO Jan : Jan : Jan :33 1 Enter value for begin_snap: 596 Enter value for end_snap: 597 Enter value for report_name: addmrpt_cursoxy.txt End of Report Report written to addmrpt_cursoxy.txt Si nos sale el mensaje THERE WAS NOT ENOUGH DATABASE TIME FOR ADDM ANALYSIS., puedes ver un ejemplo de lo q saldría en (tb lo adjunto a continuación) Enter value for begin_snap: 602 Enter value for end_snap: 603 Enter value for report_name: addmrpt_cursoxy.txt DETAILED ADDM REPORT FOR TASK 'TASK_638' WITH ID 638 Analysis Period: 30 JAN 2007 from 10:50:48 to 11:04:29 Database ID/Instance: /1 Database/Instance Names: CURSO69/CURSO69 Host Name: cursos.atica.um.es Database Version: Snapshot Range: from 602 to 603 Database Time: 383 seconds Average Database Load:.5 active sessions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ FINDING 1: 100% impact (382 seconds) SQL statements consuming significant database time were found. Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 7
8 RECOMMENDATION 1: SQL Tuning, 100% benefit (381 seconds) ACTION: Run SQL Tuning Advisor on the SQL statement with SQL_ID "bqhg4kaam7k28". RELEVANT OBJECT: SQL statement with SQL_ID bqhg4kaam7k28 and PLAN_HASH select count(*) from emp2,emp2 RATIONALE: SQL statement with SQL_ID "bqhg4kaam7k28" was executed 80 times and had an average elapsed time of 4.7 seconds. FINDING 2: 100% impact (381 seconds) Time spent on the CPU by the instance was responsible for a substantial part of database time. RECOMMENDATION 1: SQL Tuning, 100% benefit (381 seconds) ACTION: Run SQL Tuning Advisor on the SQL statement with SQL_ID "bqhg4kaam7k28". RELEVANT OBJECT: SQL statement with SQL_ID bqhg4kaam7k28 and PLAN_HASH select count(*) from emp2,emp2 RATIONALE: SQL statement with SQL_ID "bqhg4kaam7k28" was executed 80 times and had an average elapsed time of 4.7 seconds. RATIONALE: Average CPU used per execution was 4.7 seconds. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ADDITIONAL INFORMATION Wait class "Application" was not consuming significant database time. Wait class "Commit" was not consuming significant database time. Wait class "Concurrency" was not consuming significant database time. Wait class "Configuration" was not consuming significant database time. Wait class "Network" was not consuming significant database time. Wait class "User I/O" was not consuming significant database time. Session connect and disconnect calls were not consuming significant database time. Hard parsing of SQL statements was not consuming significant database time. The analysis of I/O performance is based on the default assumption that the average read time for one database block is micro seconds. An explanation of the terminology used in this report is available when you run the report with the 'ALL' level of detail. End of Report Report written to addmrpt_cursoxy.txt (Una vez q tenemos el fichero, vamos a ponerlo en un directorio desde donde podamos verlo en el servidor web, OJO, sustituye XY por los números de tu usuario!!!) /home/curso/cursoxy (CURSOXY)> cp addmrpt_cursoxy.html /var/www/html/temp (Ahora puedes ver tu informe desde Probar SQL TUNNING. Vamos a hacerlo con la sentencia select count(*) from scott.emp, scott.emp, scott.emp, scott.emp. Generaremos la tarea, y después la lanzaremos, para poder generar el informe. Finalmente obtendremos un script con las recomendaciones del informe. (Primero creamos la tarea de ajuste) Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 8
9 SQL> connect / as sysdba Connected. SQL> variable stmt_task VARCHAR2(64); SQL> EXEC :stmt_task := DBMS_SQLTUNE.CREATE_TUNING_TASK(sql_text => 'select count(*) from scott.emp, scott.emp,scott.emp,scott.emp') PL/SQL procedure successfully completed. SQL> print stmt_task STMT_TASK TASK_622 (Después ejecutamos la tarea anterior) SQL> exec DBMS_SQLTUNE.EXECUTE_TUNING_TASK(:stmt_task) PL/SQL procedure successfully completed. SQL> SELECT status FROM USER_ADVISOR_TASKS WHERE task_name = :stmt_task; STATUS COMPLETED (Y finalmente, podemos generar el informe correspondiente desde sqlplus usando el comando spool, creando un fichero llamado sqltunerpt_cursoxy.txt) SQL> SET LONG LONGCHUNKSIZE 1000 LINESIZE 100 PAGESIZE SQL> spool sqltunerpt_cursoxy.txt SQL> SELECT DBMS_SQLTUNE.REPORT_TUNING_TASK(:stmt_task) FROM DUAL; GENERAL INFORMATION SECTION Tuning Task Name : TASK_622 Tuning Task Owner : SYS Scope : COMPREHENSIVE Time Limit(seconds) : 1800 Completion Status : COMPLETED Started at : 01/30/ :02:57 Completed at : 01/30/ :02:58 Number of Statistic Findings : 1 Number of SQL Profile Findings : 1 Number of SQL Restructure Findings: 1 Schema Name: SYS SQL ID : dc3b1w53mkwqu SQL Text : select count(*) from scott.emp, scott.emp,scott.emp,scott.emp FINDINGS SECTION (3 findings) 1 Statistics Finding Table "SCOTT"."EMP" and its indices were not analyzed. Recommendation Consider collecting optimizer statistics for this table and its indices. execute dbms_stats.gather_table_stats(ownname => 'SCOTT', tabname => 'EMP', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, method_opt => 'FOR ALL COLUMNS SIZE AUTO', cascade => TRUE); Rationale The optimizer requires up to date statistics for the table and its indices in order to select a good execution plan. Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 9
10 2 SQL Profile Finding (see explain plans section below) A potentially better execution plan was found for this statement. Recommendation (estimated benefit<=10%) Consider accepting the recommended SQL profile. execute dbms_sqltune.accept_sql_profile(task_name => 'TASK_622', replace => TRUE); 3 Restructure SQL finding (see plan 1 in explain plans section) An expensive cartesian product operation was found at line ID 2 of the execution plan. Recommendation Consider removing the disconnected table or view from this statement or add a join condition which refers to it. Rationale A cartesian product should be avoided whenever possible because it is an expensive operation and might produce a large amount of data. EXPLAIN PLANS SECTION 1 Original With Adjusted Cost Plan hash value: Id Operation Name Rows Cost (%CPU) Time 0 SELECT STATEMENT (1) 00:00:06 1 SORT AGGREGATE 1 2 MERGE JOIN CARTESIAN (1) 00:00:06 3 MERGE JOIN CARTESIAN (0) 00:00:01 4 MERGE JOIN CARTESIAN (0) 00:00:01 5 INDEX FAST FULL SCAN PK_EMP 14 2 (0) 00:00:01 6 BUFFER SORT 14 4 (0) 00:00:01 7 INDEX FAST FULL SCAN PK_EMP 14 0 (0) 00:00:01 8 BUFFER SORT (0) 00:00:01 9 INDEX FAST FULL SCAN PK_EMP 14 0 (0) 00:00:01 10 BUFFER SORT (1) 00:00:06 11 INDEX FAST FULL SCAN PK_EMP 14 0 (0) 00:00:01 2 Using SQL Profile Plan hash value: Id Operation Name Rows Cost (%CPU) Time 0 SELECT STATEMENT (1) 00:00:06 1 SORT AGGREGATE 1 2 MERGE JOIN CARTESIAN (1) 00:00:06 3 MERGE JOIN CARTESIAN (0) 00:00:01 4 MERGE JOIN CARTESIAN (0) 00:00:01 5 INDEX FULL SCAN PK_EMP 14 1 (0) 00:00:01 6 BUFFER SORT 14 4 (0) 00:00:01 Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 10
11 7 INDEX FAST FULL SCAN PK_EMP 14 0 (0) 00:00:01 8 BUFFER SORT (0) 00:00:01 9 INDEX FAST FULL SCAN PK_EMP 14 0 (0) 00:00:01 10 BUFFER SORT (1) 00:00:06 11 INDEX FAST FULL SCAN PK_EMP 14 0 (0) 00:00:01 SQL> spool off (Una vez q tenemos el fichero, vamos a ponerlo en un directorio desde donde podamos verlo en el servidor web, OJO, sustituye XY por los números de tu usuario!!!) /home/curso/cursoxy (CURSOXY)> cp sqltunerpt_cursoxy.html /var/www/html/temp (Ahora puedes ver tu informe desde Y ahora, podemos generar el script correspondiente desde sqlplus usando el comando spool, creando un fichero llamado sqltunerpt_cursoxy.txt) SQL> SET LONG LONGCHUNKSIZE 1000 LINESIZE 100 PAGESIZE SQL> spool sqltunescr_cursoxy.txt SQL> SELECT DBMS_SQLTUNE.SCRIPT_TUNING_TASK(:stmt_task) FROM DUAL; Script generated by DBMS_SQLTUNE package, advisor framework Use this script to implement some of the recommendations made by the SQL tuning advisor. NOTE: this script may need to be edited for your system (index names, privileges, etc) before it is executed. execute dbms_stats.gather_table_stats(ownname => 'SCOTT', tabname => 'EMP', estimate_percent => DBMS _STATS.AUTO_SAMPLE_SIZE, method_opt => 'FOR ALL COLUMNS SIZE AUTO', cascade => TRUE); execute dbms_sqltune.accept_sql_profile(task_name => 'TASK_622', replace => TRUE); SQL> spool off (Una vez q tenemos el fichero, vamos a ponerlo en un directorio desde donde podamos verlo en el servidor web, OJO, sustituye XY por los números de tu usuario!!!) /home/curso/cursoxy (CURSOXY)> cp sqltunescr_cursoxy.txt /var/www/html/temp (Ahora puedes ver tu informe desde Probar SEGMENT ADVISOR. Vamos a hacerlo con la tabla SCOTT.EMP2 (creada a partir de SCOTT.EMP y generando muchas filas insertando sobre ella misma, para finalmente borrar al menos la mitad de las filas para que quede espacio libre). Generaremos la tarea, y después la lanzaremos, para poder generar el informe. (Primero vamos a darle al usuario SCOTT los privilegios necesarios para que él mismo pueda crear las tareas del Segment Advisor) SQL> connect / as sysdba SQL> grant advisor, create job to scott; Grant succeeded. (Ahora, desde el usuario SCOTT, vamos a crear una tarea del tipo Segment Advisor para la tabla EMP2, y tb vamos a analizar la tabla EMP, para q veamos q se pueden añadir varios objetos a una misma tarea) Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 11
12 SQL> connect scott/tigercursoxy SQL> set serveroutput on size variable id number; declare name varchar2(100); descr varchar2(500); obj_id number; begin name:='scottemp2segadv'; descr:='scott.emp2 Segment Advisor'; dbms_advisor.create_task('segment Advisor', :id, name, descr); dbms_advisor.create_object (name, 'TABLE', 'SCOTT', 'EMP2', NULL, NULL, NULL, obj_id); dbms_advisor.create_object (name, 'TABLE', 'SCOTT', 'EMP', NULL, NULL, NULL, obj_id); dbms_advisor.set_task_parameter(name, 'recommend_all', 'TRUE'); dbms_advisor.set_task_parameter(name, 'verbose', 'TRUE'); dbms_advisor.execute_task(name); end; / obj_type_id: 0 name: UNDEFINED obj_type_id: 1 name: TABLE Segment schema: SCOTT name: EMP2 type: TABLE partname: Seg_list_key: SCOTT.EMP2..TABLE Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: EMP2 seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: alloc: Segment schema: SCOTT name: EMP type: TABLE partname: Seg_list_key: SCOTT.EMP..TABLE Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: EMP seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: 4398 alloc: PL/SQL procedure successfully completed. (Como hemos lanzado la tarea con el parámetro verbose=true podemos ver la sallida de lo q ha ido haciendo. Ahora comprobamos el nº de tarea generado en la variable id, y la usamos para ver q ha completado) SQL> print id ID 644 SQL> SELECT STATUS FROM USER_ADVISOR_TASKS WHERE TASK_ID=:id; STATUS COMPLETED (Ahora podemos ver si ha encontrado algo en el análisis) SQL> select af.message, af.more_info from user_advisor_findings af, user_advisor_objects ao where ao.task_id = af.task_id and ao.object_id = af.object_id and af.task_id=:id; MESSAGE MORE_INFO Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 12
13 The free space in the object is less than 10MB. Allocated Space:851968: Used Space:635874: Reclaimable Space :216094: (Vamos a volver a otra tarea, pero ahora vamos a analizar el tablespace USERS completo) SQL> set serveroutput on size variable id number; begin declare name varchar2(100) ; descr varchar2(500) ; objid number; begin name := '' ; descr := 'Segment Advisor Tablespace USERS' ; dbms_advisor.create_task('segment Advisor', :id, name, descr, NULL) ; dbms_output.put_line('id = ' :id ' Name = ' name) ; dbms_advisor.create_object(name, 'TABLESPACE', 'USERS',NULL, NULL, NULL, objid); dbms_advisor.set_task_parameter(name, 'RECOMMEND_ALL', 'TRUE') ; dbms_advisor.set_task_parameter(name, 'VERBOSE', 'TRUE') ; dbms_advisor.execute_task(name) ; end ; end ; / ID = 645 Name = TASK_645 obj_type_id: 0 name: UNDEFINED obj_type_id: 1 name: TABLE Start loop through objects Object Input schema: USERS name: type: 9 partname: Segment schema: SCOTT name: DEPT type: TABLE partname: Seg_list_key: SCOTT.DEPT..TABLE Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: DEPT seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: 3886 alloc: Segment schema: SCOTT name: EMP type: TABLE partname: Seg_list_key: SCOTT.EMP..TABLE Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: EMP seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: 4398 alloc: Segment schema: SCOTT name: BONUS type: TABLE partname: Seg_list_key: SCOTT.BONUS..TABLE Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: BONUS seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: 2048 alloc: Segment schema: SCOTT name: SALGRADE type: TABLE partname: Seg_list_key: SCOTT.SALGRADE..TABLE Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 13
14 Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: SALGRADE seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: 3851 alloc: Segment schema: SCOTT name: EMP2 type: TABLE partname: Seg_list_key: SCOTT.EMP2..TABLE Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: EMP2 seg_type: TABLE part_name: lobcol: lobseg: lobpart: time_limit: used: alloc: Segment schema: SCOTT name: PK_EMP type: INDEX partname: Seg_list_key: SCOTT.PK_EMP..INDEX Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: PK_EMP seg_type: INDEX part_name: lobcol: lobseg: lobpart: time_limit: used: 602 alloc: Segment schema: SCOTT name: PK_DEPT type: INDEX partname: Seg_list_key: SCOTT.PK_DEPT..INDEX Timelimit: 0 Time_remaining Time_since_start entering load_temp_trend: owner: SCOTT table: PK_DEPT seg_type: INDEX part_name: lobcol: lobseg: lobpart: time_limit: used: 469 alloc: PL/SQL procedure successfully completed. (Ahora vamos a comprobar cuantas filas tiene EMP2, y cuanto espacio ocupa actualmente dicha tabla) SQL> select count(*) from emp2; COUNT(*) SQL> select bytes from user_segments where SEGMENT_name='EMP2'; BYTES (Vamos a borrar la mitad de las filas y volveremos a comprobar el espacio ocupado) SQL> delete from emp2 where rownum<8000; 7999 rows deleted. SQL> commit; Commit complete. SQL> select bytes from user_segments where SEGMENT_name='EMP2'; BYTES SQL> select count(*) from emp2; COUNT(*) 6337 Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 14
15 (Y ahora vamos a compactar el segmento EMP2 y volveremos a comprobar el espacio ocupado) SQL> alter table emp2 shrink space cascade; ERROR at line 1: ORA 10636: ROW MOVEMENT is not enabled SQL> alter table emp2 enable row movement; Table altered. SQL> alter table emp2 shrink space cascade; Table altered. SQL> select count(*) from emp2; COUNT(*) 6337 SQL> select bytes from user_segments where SEGMENT_name='EMP2'; BYTES Probar UNDO ADVISOR. Vamos a probar las funciones q proporciona el paquete DBMS_UNDO_ADV, tanto para ver el estado actual del UNDO en nuestra BD, como para obtener estimaciones de qué tamaño debería tener nuestro tablespace de UNDO para el valor de undo_retention actual; y tb, en función de la query q más ha tardado, q undo_retention necesitariamos. El UNDO automático se apoya sobre el parámetro undo_retention para saber durante cuanto tiempo debe intentar retener los datos de los segmentos de rollback (una vez q son candidatos a ser reutilizados). Por ejemplo, undo_retention=1800 significaría q queremos q se guarden los cambios registrados en el UNDO durante 1800 segundos (30 minutos), para ser usados por las lecturas simultáneas a las escrituras, y para operaciones de flashback. (Primero vamos a ver cual es nuestro undo_tablespace, y cuanto vale undo_retention) SQL> connect / as sysdba SQL> show parameter undo_tablespace undo_rbs SQL> show parameter undo_retention 900 (Ahora comprobamos el tamaño actual de nuestro undo_tablespace y vamos a ver cuál es el undo_retention q le cabe) SQL> select bytes,autoextensible,increment_by,maxbytes from dba_data_files where tablespace_name='undo_rbs'; BYTES AUT INCREMENT_BY MAXBYTES YES SQL> SELECT DBMS_UNDO_ADV.best_possible_retention from dual; BEST_POSSIBLE_RETENTION 285 (Y vamos a ver cual es la query que más ha tardado, q por tanto nos marcaría el undo_retention máximo q necesitamos hasta el momento) SQL> SELECT DBMS_UNDO_ADV.LONGEST_QUERY FROM DUAL; LONGEST_QUERY Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 15
16 657 SQL> select dbms_undo_adv.required_retention from dual; REQUIRED_RETENTION 657 (Y finalmente, vamos a ver q tamaño debería tener nuestro undo_tablespace para q le soporte el undo_retention actual) SQL> select dbms_undo_adv.required_undo_size(900) from dual; DBMS_UNDO_ADV.REQUIRED_UNDO_SI 53 (Descarga dbms_undo_adv.sql de la web y ejecútalo en tu BD) Estado actual del UNDO El tablespace de UNDO actual es UNDO_RBS, de 20M, con autoextend activado, y sin garantia de retencion. El parametro undo_retention = 900 Recomendaciones Undo tablespace cannot support required undo retention Size undo tablespace to 55 MB Increase undo tablespace size so that long running queries will not fail PL/SQL procedure successfully completed. Juan Luis Serradilla Amarilla y Francisco Fernández Martínez 16
Administración Básica de Oracle9i.
PRACTICAS. TRABAJOS (JOBS). 1. Identificar los procesos de sistema operativo que corresponden al proceso gestor de colas corriendo en la instancia. u01apporacleadmincurso01pfile (CURSO01)> ps -ef grep
Administración Básica de Oracle10g
PRACTICAS TEMA 5. TABLESPACES. Administración Básica de Oracle10g 5.1. Consultar los tablespaces que componen la BD. Comprobar los ficheros que tiene cada uno de ellos. Cuáles son 'locales' y cuáles no?
Administración Básica de Oracle 10g. Prácticas sobre trabajos.
PRACTICAS. TRABAJOS. 1. Identificar los procesos de sistema operativo que corresponden a la base de datos, existe algún proceso coordinador de trabajos -cjqnnn- corriendo en la instancia?. homecursocurso01
Administración Básica de Oracle9i
PRACTICAS TEMA 5. TABLESPACES. 5.1. Consultar los tablespaces que componen la BD. Comprobar los ficheros que tiene cada uno de ellos. Cuáles son 'locales' y cuáles no? 5.2. Crea el tablespace DATACURSOxy,
E16 - Diseño de Sistemas de Bases de Datos Boletín 3
E16 - Diseño de Sistemas de Bases de Datos Boletín 3 Nombre: 1. Esta práctica está dedicada a la creación de disparadores sobre sentencias DDL (lenguaje de definición de datos) y sobre eventos de la Base
Administración Básica de Oracle9i
PRACTICAS. COPIAS DE SEGURIDAD. 1. Revisar la estructura de la base de datos. Indicar si cumple con las indicaciones OFA y el contenido de cada uno de los sistemas de ficheros. Desde sistema operativo,
Administración Básica de Oracle9i
PRACTICAS. AUDITORÍA. 1. Ver la descripción de las vistas ALL_DEF_AUDIT_OPTS, DBA_AUDIT_OBJECT, DBA_AUDIT_SESSION, DBA_AUDIT_STATEMENT, DBA_AUDIT_TRAIL, DBA_OBJ_AUDIT_OPTS, DBA_PRIV_AUDIT_OPTS, y DBA_STMT_AUDIT_OPTS.
Herramientas de Gestión de Base de Datos Oracle. Lamine Delgado / NOSi Departamento de Base de Dados Lamine.delgado@nosi.cv
Herramientas de Gestión de Base de Datos Oracle Lamine Delgado / NOSi Departamento de Base de Dados Lamine.delgado@nosi.cv Herramientas de Gestión de Base de Datos Oracle Objetivos de la lección Después
Procesamiento de Consultas. Carlos A. Olarte (carlosolarte@puj.edu.co) BDII
Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Contenido 1 Introducción 2 Indexación 3 Costo de las Operaciones 4 Evaluación de Expresiones 5 Transformación de Expresiones 6 Un ejemplo con Oracle Pasos
Usuarios y Seguridad
Objetivos Usuarios y Seguridad El presente documento tiene como objetivo ser una guía de los ejercicios del libro Oracle 9i DBA JumpStart citado al pie de cada página en todo el documento y servir fundamentalmente
Herramientas de Administración Para Oracle Database 12c
Newsletter Julio 2014 Contenido Herramientas de Administración Para Oracle Database 12c Página: 1 Herramientas de Administración Para Oracle Database 12c 5 Optimización de Procesos Automáticos que Utilizan
Administración Básica de Oracle9i
PRACTICAS TEMA 6. ESPACIO DE UNDO. 1. Consultar el fichero de inicialización de la base de datos y averiguar cuales de los parámetros de undo están definidos y su valor actual. /home/oracle (CURSO01)>
Oracle Express 10g. Marta Zorrilla Universidad de Cantabria
Oracle Express 10g Marta Zorrilla Universidad de Cantabria Características With Oracle Database XE, you use an intuitive browser-based interface to: Administer the database Create tables, views, and other
Linux Error 29: Illegal Seek
Newsletter Febrero 2013 Contenido Página: Por Ing. Manuel Carrillo mcarrillo@datum.com.gt Linux Error 29: Illegal Seek 1 Linux Error 29: Illegal Seek 3 Oracle 11g: Mejores planes de ejecución con baselines
Instance Caging. Introducción. Implementación. Por Francisco Riccio
Instance Caging Por Francisco Riccio Introducción Instace Caging es una característica que Oracle Database 11g Release 2 nos ofrece y nos da la posibilidad de limitar el número de cores que serán utilizadas
OPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. FILTER 2 NESTED LOOPS
1 OPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. Ejemplo : SELECT ename,job, sal, dname FROM emp,dept WHERE emp.deptno = dept.deptno AND NOT EXISTS ( SELECT
Análisis de rendimiento en 10G
Análisis de rendimiento en 10G Josué Álvarez Moreno y Pág. 1 de 14 Índice Objetivos...3 Que son las vistas dinámicas de rendimiento?...3 Statspack...5 Que es Statspack?...5 Por qué usar Statspack?...5
Conectado a sqlplus hacer una descripción de las vistas. Consultar también en la documentación en línea.
PRACTICAS. ARCHIVADO. 1. Comprobar la información ofrecida por las vistas V$DATABASE, V$ARCHIVED_LOG, V$ARCHIVE_DEST, V$ARCHIVE_PROCESSES, V$BACKUP_REDOLOG, V$LOG y V$LOG_HISTORY. Conectado a sqlplus hacer
Administración Básica de Oracle10g
PRACTICAS TEMA 3. FICHERO DE CONTROL. Administración Básica de Oracle10g 3.1. Localizar el fichero de control desde el S.O y desde la propia BD. 3.2. Consultar la información de la BD relativa al contenido
Tutorial Oracle SQL Developer 1.2.1
Tutorial Oracle SQL Developer 1.2.1 Departamento de Informática Índice Í0. Introducción...3 1. Conexión y desconexión de la base de datos...3 2. Ejecución de sentencias SQL...4 3. Creación de tablas...6
Herramientas para la optimización
Herramientas para la optimización Creación de la tabla de Planes 1. Se debe ejecutar el siguiente script para la creación de la tabla de los planes (plan_table) @utlxplan.sql Ejemplo del EXPLAIN PLAN SQL>
ST23_ Performance Management and Tuning
ST23_ Performance Management and Tuning Presentación En este curso aprenderá acerca de los análisis de rendimiento y de las tareas de ajuste que se esperan de un administrador de base de datos: gestión
9- Procedimientos almacenados.
Objetivos: 9- Procedimientos almacenados. Crear procedimientos almacenados para ser usados en el desarrollo de software. Recursos: Microsoft SQL Server Management Studio Guías prácticas. Base de datos
Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:
Bases de Datos Introducción a ORACLE Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos: o Tradicionales como INTEGER, VARCHAR2, DATE,..., etc. o Nuevos y complejos:
3 GESTIÓN DE TABLESPACES
3 GESTIÓN DE TABLESPACES 3.1 Introducción. 3.2 Creación de tablespaces. 3.3 Modificación de tablespaces. 3.4 Borrado de tablespaces. 3.5 Índices, secuencias y clusters. 3.6 Enlaces de bases de datos. 3.7
PRACTICAS TEMA 2. DISEÑO Y CREACION DE UNA BASE DE DATOS.
PRACTICAS TEMA 2. DISEÑO Y CREACION DE UNA BASE DE DATOS. 2.1. Diseñar, sobre el papel, una BD teniendo en cuenta las contiendas de E/S y la organización de los tablespaces básicos. Suponer 4 discos: /u01
Conectado a sqlplus hacer una descripción de las vistas. Consultar también en la documentación en línea.
PRACTICAS. RECUPERACION. 1. Obtener la definición y comprobar el contenido de las vistas V$DATAFILE, V$TABLESPACES, V$CONTROLFILE, V$ARCHIVED_LOG, V$PARAMETER, V$RECOVER_FILE y V$RECOVERY_LOG Conectado
Administración Básica de Oracle 10g. Prácticas usuarios, perfiles, privilegios y roles.
PRACTICAS TEMA 7. USUARIOS, PERFILES, PRIVILEGIOS Y ROLES. 1. Buscar en la documentación en línea y en bd el contenido de las vistas: dba_profiles dba_roles dba_users dba_role_privs dba_tab_privs dba_sys_privs
Estableciendo Sesiones SSL en MySQL
Estableciendo Sesiones SSL en MySQL Estableciendo Sesiones SSL en MySQL Objetivos: Crear la infraestructura de certificados X.509 necesaria para incorporar servicios de seguridad en el acceso a un Base
Hybrid Columnar Compression HCC en Oracle Exadata
Hybrid Columnar Compression HCC en Oracle Exadata Documento generado por Hector Ulloa Ligarius Para el sitio Índice 1. Introducción... 2 2. Organización de los bloques en Oracle... 3 3. Tipos de compresión
Se realiza la parada de base de datos (y del listener ). SQL*Plus: Release 9.2.0.1.0 - Production on Sat Apr 30 17:46:39 2005
PRACTICAS. SHARED SERVER. 1. Observar la estructura e información proporcionada por las vistas V$DISPATCHER, V$DISPATCHER_RATE, V$QUEUE, V$SHARED_SERVER, V$CIRCUIT y V$SHARED_SERVER_MONITOR. Consultar
PRACTICAS TEMA 5. MONITORIZACIÓN Y AJUSTE TRADICIONAL.
PRACTICAS TEMA 5. MONITORIZACIÓN Y AJUSTE TRADICIONAL. 5.1. Revisar los eventos del sistema y comprobar los más significativos. Comprobar el evento latch free por sesiones. Comprobar sesiones esperando
Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:
CONTENIDO. 1. INTRODUCCIÓN 2. TIPOS DE SENTENCIAS SQL 3. TIPOS DE DATOS 4. SQL PLUS 5. CONSULTAS DE DATOS 6. RESTRICCIÓN Y CLASIFICACIÓN DE LOS DATOS 7. FUNCIONES A NIVEL DE FILA 8. VISUALIZACIÓN DE DATOS
Administración Avanzada de Oracle 10g. Prácticas de shared server.
PRACTICAS TEMA 7. SHARED SERVER. 1. Observar la estructura e información proporcionada por las vistas V$DISPATCHER, V$DISPATCHER_RATE, V$QUEUE, V$SHARED_SERVER, V$CIRCUIT y V$SHARED_SERVER_MONITOR. Consultar
Tema 4. Manipulación de datos con SQL
Tema 4 Manipulación de datos con SQL Índice Tema 4 1. Inserción de registros. Consultas de datos anexados. 2. Modificación de registros. Consultas de actualización. 3. Borrado de registros. Consultas de
Sesión 3: PL 2b: Sistema para la adquisición de señales analógicas.
Sesión 3: PL 2b: Sistema para la adquisición de señales analógicas. 1 Objetivo... 3 Signal Logging Basics... 3 Configure File Scope (xpc) Blocks... 3 File Scope Usage... 4 Create File Scopes Using xpc
Otros objetos de Base de Datos
Maestría en Bioinformática Bases de Datos y Sistemas de Información Otros objetos de Base de Datos Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Secuencias Triggers Vistas Código almacenado
Movimiento ONLINE de Archivos de Datos en Oracle 12c
Newsletter Noviembre 2013 Contenido Movimiento ONLINE de Archivos de Datos en Oracle 12c Página: 1 Movimiento ONLINE de Archivos de Datos en Oracle Por Ing. Manuel Carrillo mcarrillo@datum.com.gt 12c En
Curso de MySQL y Java
Curso de MySQL y Java Introducción: instalación, arranque y primeros pasos 1. Material En este curso vamos a trabajar con el servidor mysql versión 4.0.18. También utilizaremos una herramienta llamada
CONTROL DE ACCESO. curso 2008
BASES DE DATOS I CONTROL DE ACCESO curso 2008 Control de Acceso Seguridad: proteger los datos contra usuarios no autorizados Comandos usados por el BDA o el propietario para conceder/revocar permisos de
CREATE USER ADMINISTRADOR IDENTIFIED BY ADMIN DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP QUOTA 500K ON USERS;
1. Conectarse como usuario SYSTEM a la base y crear un usuario llamado administrador autentificado por la base de datos con contraseña admin. Indicar como "tablespace" por defecto USERS y como "tablespace"
Administración de Sistemas Gestores de Bases de Datos
Administración de Sistemas Gestores de Bases de Datos UD 2: Auditorías en el SGBD Oracle Félix Reyes Fernández Índice Conceptos Tipos de auditorías Registros de auditorías Vistas de auditorías Gestión
sql*plus es un programa de linea de comandos de oracle que puede ejecutar comandos sql y pl/sql de forma interactiva o mediante un script.
Que es sql plus sql*plus es un programa de linea de comandos de oracle que puede ejecutar comandos sql y pl/sql de forma interactiva o mediante un script. sql*plus opera como una herramienta relativamente
MySQL: Guía de Referencia
Instituto Tecnologico Superior de Coatzacoalcos (ITESCO). MySQL: Guía de Referencia Farid Alfredo Bielma Lopez fbielma@fbielma.org http://fbielma.org/course/fbielma/curso_mysql.pdf Resumen del curso Algunas
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES UNIANDES Facultad de Sistemas Mercantiles Carrera de Sistemas de Informática Tema: ORACLE 9i. Autor: Muñoz Vivero Álvaro Andrés Ibarra 2010 Introducción La arquitectura
Bases de datos. 1. Introducción
Bases de datos 1. Introducción Habitualmente, los programas trabajan con información que está en un fichero. Por ejemplo, nuestro simulador de tráfico aéreo trabaja con una lista de planes de vuelo que
Administración Básica de Oracle10g
PRACTICAS TEMA 2. Administración Básica de Oracle10g ARRANQUE Y PARADA DE LA BASE DE DATOS. 2.1. Fichero init.ora. Arranque y parada de la BD. Localizar el fichero init.ora (y spfile si existe) de nuestra
Oracle Básico PL/SQL
Oracle Básico PL/SQL Creación de un Esquema de Base de Datos El objetivo de este ejercicio es la ejecución de sentencia SQL de tipo DDL. Contenido Caso a Desarrollar...2 Modelo Lógico... 2 Modelo Físico...
Objetivos: o Instalación a partir de los fuentes o Instalación de otras opciones o Puesta en marcha y parada
Objetivos: o Instalación a partir de los fuentes o Instalación de otras opciones o Puesta en marcha y parada 1. (Este ejercicio probablemente lo hayamos hecho en la explicación teórica) Dado que vamos
Procedimientos, Funciones, Trigger y Cursores en ORACLE
Procedimientos, Funciones, Trigger y Cursores en ORACLE PROCEDIMIENTOS ALMACENADOS Un procedimiento almacenado es un conjunto de instrucciones en PL/SQL, que pueden ser llamados usando el nombre que se
M. C. Gustavo Alfonso Gutiérrez Carreón
1. Seguridad de bases de datos 2. Optimización de las variables M. C. Gustavo Alfonso Gutiérrez Carreón Funcionamiento: 1. Los clientes se conectan a servidor. 2. Los clientes inician autentificación,
PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS
PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS Modulo 1.- CONFIDENCIALIDAD DE LOS DATOS El objetivo de esta parte de la práctica es comprender los distintos mecanismos que se pueden utilizar en ORACLE 10g
Diseño de bases de datos
Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes sn. 41012 Sevilla TlfFax 954 557 139 E-mail lsi@lsi.us.es Web www.lsi.us.es Diseño
1. Arquitectura y estructura interna de un gestor de bases de datos.
1. Arquitectura y estructura interna de un gestor de bases de datos. Descripción de los procesos de usuario Cuando un usuario ejecuta un programa de aplicación (como un programa Pro * C) o una herramienta
El Lenguaje PL/SQL. Un lenguaje de propósito general orientado a la inclusión de sentencias SQL. Estructura del código PL/SQL.
Un lenguaje de propósito general orientado a la inclusión de sentencias SQL Estructura del código PL/SQL. Bloques: El Lenguaje PL/SQL sentencias PL/SQL Los ficheros terminan con el caracter
Recuperar espacio en tablas e índices con Segment Shrink
Newsletter Mayo 2012 Recuperar espacio en tablas e índices con Segment Shrink Contenido Página: 1 Recuperar Espacio Segment Shrink 9 Nuevas Características Reports 11gr2 11 Configuración de valores copia
Los paquetes tienen dos partes: una especificación y un cuerpo que están almacenados por separado en la base de datos.
8. PAQUETES DE BASE DE DATOS Los paquetes nos van a permitir agrupar conceptos PL/SQL como pueden ser tipos, procedimientos y funciones. Por ejemplo: una paquete de Contabilidad podrá contener procedimientos
Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia:
TRABAJANDO CON SQL*PLUS El objetivo de este tema es simplemente, hacer una revisión de los conceptos avanzados de SQL, para ello, empezaremos por ver como se accede a SQL*PLUS y como crear usuarios, para
Creación y Gestión de Tablas. Copyright Oracle Corporation, 1998. All rights reserved.
10 Creación y Gestión de Tablas Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir los principales objetos
In the following you see an example of a SPAC calculation run. BKtel systems 26.07.2004 Seite 1/8
SPAC (System Performance Analysis for CATV Systems) is a tool for planning the performance of CATV distribution networks and their return path channel. SPAC calculates all important system parameters like
BASES DE DATOS AVANZADAS Transacciones en MYSQL
Ejercicio Transacciones mysql> CREATE TABLE innotest (campo INT NOT NULL PRIMARY KEY) TYPE = InnoDB; Query OK, 0 rows affected (0.10 sec) mysql> INSERT INTO innotest VALUES(1); Query OK, 1 row affected
SQL*Plus. Capítulo 1. 1.1. Conexión y desconexión a una base de datos
Capítulo 1 SQL*Plus SQL*Plus es una herramienta que nos ofrece Oracle para interactuar con sus bases de datos. Existen varias versiones de este producto, por lo que podemos encontrar la herramienta sqlplus,
MANUALITO MS-SQL SERVER
MANUALITO MS-SQL SERVER Contenido 1. Crear Store Procedures en MS SQL Server... 1 2. Crear Triggers en MS SQL Server... 5 3. Crear Vistas en MS SQL Server... 9 1. Crear Store Procedures en MS SQL Server
Nociones de performance
Maestría en Bioinformática Bases de Datos y Sistemas de Información Nociones de performance Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda Conceptos Índices Optimizador Planes de acceso
PRACTICAS TEMA 2. DISEÑO Y CREACION DE UNA BASE DE DATOS.
PRACTICAS TEMA 2. DISEÑO Y CREACION DE UNA BASE DE DATOS. 2.1. Diseñar, sobre el papel, una BD teniendo en cuenta las contiendas de E/S y la organización de los tablespaces básicos. Suponer 4 discos: /u01
1. Consultar el valor de los parámetros de inicialización SERVICE_NAMES e INSTANCE_NAME. Averiguar el valor de DB_NAME y DB_DOMAIN.
PRACTICAS. NET9. 1. Consultar el valor de los parámetros de inicialización SERVICE_NAMES e INSTANCE_NAME. Averiguar el valor de DB_NAME y DB_DOMAIN. SQL> show parameter instance_name NAME TYPE VALUE ----------
3. El catálogo 26. Laboratorio de Bases de Datos
ÍNDICE Continuación SQL Índice 1. Continuación del SQL como DML (Lenguaje de Manipulación de Datos) 1 1.1. Inserción de datos................................. 1 1.2. Borrado de datos..................................
SQL PROCEDURAL Triggers y Stored Procedures. Ing. Gustavo A. Correa Reina UNCPBA 2008
Base de Datos I SQL PROCEDURAL Triggers y Stored Procedures Ing. Gustavo A. Correa Reina UNCPBA 2008 SQL Procedural Posibilita el uso de código procedural conjuntamente con sentencias SQL que son almacenadas
Lic. Vladimir Cotaquispe Gutierrez PROGRAMACIÓN PL/SQL I - 1. Copyright 2008, Oracle. All rights reserved.
Lic. Vladimir Cotaquispe Gutierrez PROGRAMACIÓN PL/SQL I - 1 INTRODUCCIÓN PL/SQL: Lenguaje de programación procedimental estructurado en bloques que amplía el lenguaje estándar SQL. Permite: Manipular
UNIDAD DE TRABAJO 3: PROGRAMACIÓN DE BASES DE DATOS TEMA 8: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN
UNIDAD DE TRABAJO 3: PROGRAMACIÓN DE BASES DE DATOS TEMA 8: INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN 8.1. INTRODUCCIÓN AL SQL PROCEDIMENTAL Casi todos los grandes Sistemas Gestores de Datos incorporan
Administración Avanzada de Oracle 10g. Prácticas de Recuperación.
PRACTICAS TEMA 10. RECUPERACION. 1. Obtener la definición y comprobar el contenido de las vistas V$DATAFILE, V$TABLESPACES, V$CONTROLFILE, V$ARCHIVED_LOG, V$PARAMETER, V$RECOVER_FILE y V$RECOVERY_LOG Conectado
BACKUP Y RECUPERACION
Curso: Sistemas de Bases de Datos 2 Plataforma: Windows BACKUP Y RECUPERACION La realización de un backup y su correspondiente restauración garantiza la persistencia de los datos dentro de una base de
Session: DB2 Workload Manager. Luis Reina Juliá IBM 22/11/2011
Session: DB2 Workload Manager Luis Reina Juliá IBM 22/11/2011 1 Agenda Introducción Arquitectura/Componentes de Workload Manager Services Classes Workloads Thresholds Work Action Set y Work Class Set Monitorización
Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM
Estructura de una BD Oracle. Una BD Oracle tiene una estructura física y una estructura lógica que se mantienen separadamente. La estructura física se corresponde a los ficheros del sistema operativo:
El respaldo más correcto y más sencillo usando RMAN para hacer Backup y recovery En Oracle Database 11g
Escribo este artículo porque al buscar sobre respaldos de Oracle o son extensas explicaciones de cómo funciona RMAN, solo hablare de lo mínimo necesario para tener un respaldo Respaldo básico y funcional
Cómo conseguir un SQL más eficaz
Cómo conseguir un SQL más eficaz Herramientas de IBM que facilitan la resolución de los problemas y mejora de las sentencias. maruca_alonso@es.ibm.com 09-Mayo-2012 1 Mejora del rendimiento de sentencias
Certificación Oracle 11g DB Assosiate
Certificación Oracle 11g DB Assosiate Descripción La certificación Oracle Database 11g Administrator Certified Associate es una excelente forma de iniciarse en la carrera del Administrador de Bases de
Seguridad y Auditoría de Bases de Datos Oracle
Página 1 de 10 1. Objetivo y Alcance Describir los aspectos necesarios para garantizar la seguridad y la realización de las auditorías a las. Esta guía comprende desde Introducción a la Seguridad, hasta
ZeroShell - Configuración del HotSpot
ZeroShell - Configuración del HotSpot Planteamiento Configuración network en ZeroShell En SETUP->Network, configurar las direcciones IP de las tarjetas de red: ETH00 hacia la red que debe atravesar el
Enlaces relacionados: http://otn.oracle.com/tech/pl_sql/index.html
1.INTRODUCCION PL/SQL (Procedural Language ó Programming Language, según distintas fuentes, aunque la oficial es la primera) es el lenguaje utilizado por Oracle como extensión al SQL, y que nos va a permitir
Disparadores en ORACLE
Diseño de Bases de Datos y Seguridad de la Información PL/SQL-1 PL/SQL: lenguaje de programación estructurado en bloques Bloques: unidad mínima en PL/SQL Soportan DML y DDL Anónimos / Con nombre Disparadores
Recuperación de instancias dañadas usando RMAN
Recuperación de instancias dañadas usando RMAN Isabel Terrero Gómez SGBD 1 Herramientas de recuperación : Ficheros redo logs: Ficheros de cambio de almacenamiento en la BD (Recovery). Se almacenan los
Escrito por Administrator Miércoles, 15 de Diciembre de 2010 21:30 - Actualizado Domingo, 19 de Diciembre de 2010 13:16
1. Top-Down Oracle, a la hora de optimizar el rendimiento de nuestra base de datos recomienda un orden concreto de los aspectos a optimizar. Por ejemplo ponen el diseño de la base de datos por encima de
Bibliografía Oracle Database Concepts - 10g Release 2 (10.2) (Octubre 2005)
Disparadores en ORACLE Bibliografía Oracle Database Concepts - 10g Release 2 (10.2) (Octubre 2005) Oracle Database Application Developer's Guide Fundamentals 10g Release 2 (10.2) (Noviembre 2005) Óscar
Clase 1: Estructuras, Procesos y Diccionario de Datos
Clase 1: Estructuras, Procesos y Diccionario de Datos Estructura de la memoria System Global Area Buffer Cache Redo Log Buffer Share Pool Dictionary Cache Large Pool Process Global Area Private SQL Area
sudo mkdir /usr/local/pgsql/data /home/ /home/juan sudo chown juan /usr/local/pgsql/data
sudo tar -zxvf postgresql-8.2.4.tar.gz cd postgresql-8.2.4 sudo./configure sudo./configure --without-[opcion] sudo make sudo make install sudo mkdir /usr/local/pgsql/data /home/ /home/juan sudo chown juan
Grupo Kybele, http://www.kybele.es/ Pág. 1
Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea
CENTRO DE BACHILLERATO TECNOLÓGICO INDUSTRIAL Y DE SERVICIOS #166 Pablo Torres Burgos
INSTRUCCIONES: Crear una máquina virtual con CentOS. Esperar a que cargue el SO y abrir una terminal de comandos. Realizar lo siguiente. NOTA: Para cada comando que se ejecute exitosamente: tomar una captura
Antes de cargar el contenido del fichero, aprovechamos para fijarnos en los archivos WAL, que ya más adelante comentaremos con más detalle.
Objetivos: o pg_dump o pg_restore o COPY TO/FROM o OIDs o Vacuum o Reindex Preparación de la práctica: Para estos ejercicios vamos a cargar una base de datos "grande", con muchos datos, para ello nos bajaremos
Your response will be used by Facebook to improve your experience. You can't edit the details of this audience because it was created by someone else and shared with you. La respuesta será usada por Facebook
Dirigido a Profesionales y técnicos de informática que se inicien en el manejo de la base de datos Oracle 11g
El temario se divide en tres partes: Parte I. Lenguaje SQL Lenguaje SQL Objetivos Conocer los componentes de las bases de datos relacionales Obtener los conocimientos del lenguaje SQL para el manejo de
PROYECTO ADMINISTRACIÓN ORACLE ENTERPRISE MANAGER
PROYECTO ADMINISTRACIÓN ORACLE ENTERPRISE MANAGER Proyecto de administración avanzada Alejandro Romero Abadía 1 Este proyecto consiste en una explicación de las funciones que ofrece la consola web de administración
BASE DE DATOS QUÉ ES UNA BASE DE DATOS?
BASE DE DATOS BASE DE DATOS QUÉ ES UNA BASE DE DATOS? Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Actualmente la mayoría de
Disparadores en Oracle (Ejemplos Prácticos)
Asignatura: Base de Datos Titulación: Ingeniería Informática Curso: 4º Disparadores en Oracle (Ejemplos Prácticos) Nota: Recuerde guardar los scripts, utilice para ello un editor de texto. Triggers DML
2. Mediante la tabla pg_class, vamos a ver cómo afecta los comandos analyze y vacuum a las tablas.
Objetivos: o Catálogo o Indices o Ficheros / Discos 1. Vamos a crear una tabla y a ver dónde se encuentra su información en el catálogo. Creamos una tabla en el esquema empresa que se llame persona, con
Bases de Datos Relacionales
Bases de Datos Relacionales PROCEDIMIENTOS ALMACENADOS Preparó: Ismael Castañeda Fuentes Fuentes: Manuales Sybase Manuales SQL Server Manuales Oracle Procedimientos almacenados Un procedimiento almacenado
ÍNDICE INTRODUCCIÓN...13
ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. EL MODELO RELACIONAL. LENGUAJE SQL...17 1.1 INTRODUCCIÓN AL MODELO RELACIONAL...17 1.2 RELACIONES...19 1.2.1 Definición formal de relación...21 1.2.2 Propiedades y
1Introducción. 2Componentes de la Instalación. A. Requisitos. Cliente. Servidor
1Introducción La plataforma está integrada en por dos aplicaciones distintas: Engyne o Socyal Core, donde se reúne la funcionalidad de administración global (seguridad, roles, cron, informes, etc) y herramientas