![](/user_photo/2706_HbeT2.jpg)
- •Текст вопроса
- •Текст вопроса
- •cursor_sharing
- •exact
- •force
- •similar
- •_disable_cursor_sharing
- •db_file_multiblock_read_count
- •optimizer_dynamic_sampling
- •Текст вопроса
- •Сбор статистики
- •Oracle не работает планировщик заданий
- •How does AUTO_SAMPLE_SIZE work in Oracle Database 11g?
- •By Hong Su on Apr 08, 2013
- •Effect of auto sample size on histogram gathering
- •Effect of auto sample size on index stats gathering
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH64x1.jpg)
Вопрос2
Пока нет ответа Балл: 1 Отметить вопрос
Текст вопроса
16. С помощью процедуры GATHER_TABLE_STATS пакета DBMS_STATS
(1)соберите статистику по таблице EMP и используемому ей индексу.
17.(2)
Убедитесь, что статистика была успешно собрана
(см. пп.7-8).
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH67x1.jpg)
18. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Снова |
|
выполните |
трассировку |
(autotrace) |
запросов |
из |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
скриптов |
|
literal9.sql |
и |
literal10.sql |
. |
|
|
|
||||||||||||||||
(3) |
Зафиксируйте и прокомментируйте результат |
. |
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
literal9.sql |
|
|
|
|
|
|
|
|
SELECT |
COUNT |
(*), |
MAX |
( |
empno |
) |
FROM |
emp |
WHERE |
deptno |
= |
9 |
; |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH68x1.jpg)
literal10.sql
SELECTCOUNT(*),
MAX(empno)
FROM emp WHERE deptno =
10;
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH69x1.jpg)
19. С помощью процедуры DELETE_SCHEMA_STATS пакета DBMS_STATS
(4)удалите собранную статистику.
EXECUTE dbms_stats.delete_table_stats('AGS','EMP');
одновременно удалилась статистика и на индекс.
20.(5)
Проверьте результат
(см. пп.7-8).
21. Просмотрите список автоматических заданий для Вашей базы данных. Вы можете найти нужную информацию в Enterprise Manager Database Control (зайти можно через браузер Konqueror, логин - sys, пароль - oracle, connect as SYSDBA. Далее перейти на вкладку Server и пройти по ссылке Programs в разделе Oracle Scheduler), а также в таблице DBA_AUTOTASK_TASK, просмотрев столбцы client_name, task_name, task_target_type и operation_name
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH70x1.jpg)
(6)Какое задание отвечает за автоматический сбор статистики?
22. Запустите автоматический сбор статистики, не дожидаясь открытия очередного окна обслуживания (maintenance window):
a.В SQLDeveloper в пункте меню View выберите DBMS_OUTPUT и соединение для пользователя SYS.
b.Из-под учётной записи пользователя SYS выполните скриптrun_ags_pl.sql
(может выполняться примерно 2 мин.)
SET SERVEROUTPUT ON
run_ags_pl.sql
DECLARE
WINDOW VARCHAR2 (20);
BEGIN
DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT;
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH71x1.jpg)
SELECT UPPER(TO_CHAR(SYSDATE,'fmday'))||'_WINDOW' INTO WINDOW FROM DUAL; DBMS_OUTPUT.PUT_LINE('Window is: '|| WINDOW);
--
-- Open the corresponding maintenance window, but with other clients disabled
--
EXECUTEIMMEDIATE
'alter system set "_enable_automatic_maintenance"=1';
dbms_auto_task_admin.disable('auto space advisor', NULL, window); dbms_auto_task_admin.disable('sql tuning advisor',NULL, window);
dbms_scheduler.open_window(window, NULL, TRUE);
--
-- Close the maintenance window when auto optimizer stats collection is done
--
DBMS_LOCK.SLEEP(120); dbms_scheduler.close_window(window);
EXECUTE IMMEDIATE 'alter system set "_enable_automatic_maintenance"=0';
--
--Re-enable the other guys so they look like they are enabled in EM.
--Still they will be disabled because we have set the underscore.
dbms_auto_task_admin.enable('auto space advisor', NULL, window); dbms_auto_task_admin.enable('sql tuning advisor',NULL, window);
END;
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH72x1.jpg)
c. Закройте вкладку DBMS_OUTPUT.
23. Посмотрите статистику для таблицы EMP (см. п.7).
(7)Прокомментируйте результат.
![](/html/2706/242/html_Kr7slWAjpL.QjWl/htmlconvd-cVKcJH73x1.jpg)
24. |
|
|
|
|
|
|
|
|
|
|
|
Снова |
выполните |
трассировку |
(autotrace) |
запросов |
из |
||||||
|
|
|
|
|
|
|
|
|
|
||
скриптов |
|
literal9.sql |
и |
literal10.sql |
. |
|
|
|
(8) Зафиксируйте и прокомментируйте результат.
literal9.sql
SELECTCOUNT(*),
MAX(empno)
FROM emp WHERE deptno =
9;
literal10.sql
SELECTCOUNT(*),
MAX(empno)
FROM emp WHERE deptno =
10;