Bo's Oracle Station

查看: 1339|回复: 0

课程第8次

[复制链接]

27

主题

27

帖子

183

积分

超级版主

Rank: 8Rank: 8

积分
183
发表于 2019-9-28 08:40:41 | 显示全部楼层 |阅读模式
Notice: This blog is written by Bo Tang.

  1. BEGIN
  2. dbms_resource_manager.clear_pending_area();
  3. dbms_resource_manager.create_pending_area();
  4. dbms_resource_manager.create_consumer_group(consumer_group => ?,comment => ? , cpu_mth => ?);
  5. dbms_resource_manager.submit_pending_area();
  6. END;
复制代码
  1. BEGIN
  2. dbms_resource_manager_privs.grant_switch_consumer_group(?,?,case ? when 'false' then false when 'true' then true else false end);
  3. END;
复制代码
  1. BEGIN
  2.     dbms_resource_manager.set_initial_consumer_group(
  3.         user => 'HR',
  4.         consumer_group => 'GROUP1'
  5.     );
  6. END;
复制代码
  1. BEGIN
  2. sys.dbms_scheduler.create_job_class(
  3. logging_level => DBMS_SCHEDULER.LOGGING_RUNS,
  4. resource_consumer_group => 'GROUP2',
  5. job_class_name => '"JOBCLASS1"');
  6. END;
复制代码
  1. BEGIN
  2. DBMS_SCHEDULER.CREATE_WINDOW(
  3. window_name=>'"WINDOW1"',
  4. resource_plan=>'PLAN1',
  5. start_date=>to_timestamp_tz('2019-09-16 22:00:00 Asia/Shanghai', 'YYYY-MM-DD HH24:MI:SS TZR'),
  6. duration=>numtodsinterval(3, 'minute'),
  7. repeat_interval=>'FREQ=HOURLY',
  8. end_date=>null,
  9. window_priority=>'HIGH',
  10. comments=>'');
  11. END;
复制代码
  1. select * from dba_users u where u.username in ('HR','SYS','SYSTEM');

  2. grant all  on window1 to hr;

  3. grant execute on jobclass1 to hr;

  4. select  s."USERNAME", s.sid, s."SERIAL#", s."TERMINAL", s."RESOURCE_CONSUMER_GROUP"
  5. from v$session s
  6. where s."USERNAME"='HR';
复制代码
----job8
  1. create table t05317_lw( a timestamp ) ;

  2. create or replace procedure proc05317_lw
  3. is
  4. v_1 number;
  5. begin
  6.    select count(*) into v_1 from employees a, employees b;
  7.    insert into  t05317_lw values(systimestamp);
  8.    commit;
  9. end;


  10. 单个轻量级作业:
  11. begin
  12.    dbms_scheduler.create_job(
  13.    job_name => 'hr.job8',
  14.    program_name=>'hr.program8',
  15.    schedule_name=>'hr.schedule8',
  16.    job_style=>'LIGHTWEIGHT');
  17. end;

  18. begin
  19.    dbms_scheduler.enable('HR.JOB8');
  20. end;

  21. select  * from hr.t05317_lw;

  22. truncate table hr.t05317_lw;
复制代码
  1. truncate table  t05317_lw;

  2. select  * from t05317_lw;

  3. DECLARE
  4. newjob sys.job;
  5. newjobarr sys.job_array;
  6. BEGIN
  7. -- Create an array of JOB object types
  8.   newjobarr := sys.job_array();
  9. -- Allocate sufficient space in the array
  10.   newjobarr.extend(100);
  11. -- Add definitions for jobs
  12. FOR i IN 1..100
  13.    LOOP
  14.    -- Create a JOB object type
  15.    newjob := sys.job(job_name => 'HR.JOB8_' || to_char(i),
  16.                      job_style => 'LIGHTWEIGHT',
  17.                      job_template => 'HR.PROGRAM8',
  18.                    enabled => TRUE );
  19. -- Add job to the array
  20.    newjobarr(i) := newjob;
  21. END LOOP;
  22. -- Call CREATE_JOBS to create jobs in one transaction
  23. DBMS_SCHEDULER.CREATE_JOBS(newjobarr, 'TRANSACTIONAL');
  24. END;


  25. select count(*) from t05317_lw;

  26. select max(a) - min(a) from t05317_lw;

  27. ---+000000000 00:00:04.011926

  28. DECLARE
  29. newjob sys.job;
  30. newjobarr sys.job_array;
  31. BEGIN
  32. -- Create an array of JOB object types
  33.   newjobarr := sys.job_array();
  34. -- Allocate sufficient space in the array
  35.   newjobarr.extend(100);
  36. -- Add definitions for jobs
  37. FOR i IN 1..100
  38.    LOOP
  39.    -- Create a JOB object type
  40.    newjob := sys.job(job_name => 'HR.JOB8_' || to_char(i),
  41.                      job_style => 'REGULAR',
  42.                      job_template => 'HR.PROGRAM8',
  43.                    enabled => TRUE );
  44. -- Add job to the array
  45.    newjobarr(i) := newjob;
  46. END LOOP;
  47. -- Call CREATE_JOBS to create jobs in one transaction
  48. commit;
  49. END;


  50. select count(*) from t05317_lw;

  51. select max(a) - min(a) from t05317_lw;
复制代码









回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-5-20 01:40 , Processed in 0.033545 second(s), 24 queries .

快速回复 返回顶部 返回列表