• dbms_shared_pool过程锁定内存#ocp试验#


    参考:http://www.cnblogs.com/zlja/archive/2011/06/24/2449313.html

    1,包dbms_shared_pool的数据字典,通过它来执行过程锁定内存

    2,v$db_object_cache 来查询那个过程锁定

    SYS@sen>select owner,name,type from  v$db_object_cache where  SHARABLE_MEM>10000  AND (TYPE='PACKAGE'
     OR TYPE='PACKAGE BODY' OR TYPE='FUNCTION' OR TYPE='PROCEDURE')   AND kept='NO';

    3,在scott用户下新建一个procedure

    create or replace procedure p1 as begin null; end;
    

    DBA_objects查看,注意这里scott需要大写

    SYS@sen>select owner, object_type,OBJECT_NAME from DBA_objects where object_type='PROCEDURE' and owner='SCOTT';
    

     查看scott下面的所有存储过程

    4,将这个过程锁在内存

    SYS@sen>exec dbms_shared_pool.keep('SCOTT.p1','P')
    

    查看

    SYS@sen>select owner,name,type from  v$db_object_cache where owner='SCOTT' AND kept='YES';
    

    解锁

    SYS@sen>exec dbms_shared_pool.unkeep('SCOTT.p1','P')
    

    试验中的系统触发器需要grant

    grant  execute on dbms_shared_pool to HR;

    下面是将scott下面的emp表的select等权限给用户HR

     SCOTT@DB112>grant select,insert,update,delete on emp to hr;
    

      

  • 相关阅读:
    精通正则表达式(JavaScript)
    Go知识点记录
    多线程揭秘
    Python test
    ELinq+T4模版引擎制作多文件实体代码生成器
    浏览器内核
    MongoDb的增删改查
    LINQ执行表达式
    ASP.NET MVC3 读书笔记四(数据注解和验证)
    C#默认以管理员身份运行程序
  • 原文地址:https://www.cnblogs.com/sumsen/p/2833800.html
Copyright © 2020-2023  润新知