某oracle sharding环境catalog端创建的duplicated table,是通过dblink和物化视图同步到shard端的,默认建立的物化视图是60s刷新一次。当前catalog端有1000多个复制表,导致分片端有1000多个物化视图刷新

这些物化视图刷新通过DBMS_SCHEDULER发起的job队列,依次执行

1. job_queue_processes

(1)job_queue_processes取值范围为0到4000(12c以上),总共可创建多少个job进程由job_queue_processes参数来决定

(2)当job_queue_processes大于1时,且并行执行job时,至少一个为协调进程。其总数不会超出job_queue_processes的值

(3)job_queue_processes参数的值为且DBMS_JOB与DBMS_SCHEDULER共享

(4)job_queue_processes参数,当设定该值为0的时候则任意方式创建的job都不会运行

2. 物化视图刷新

(1)物化视图刷新job是由DBMS_SCHEDULER发起的

可以通过视图user_scheduler_jobs来查询job名、job执行的动作、job间隔、下次执行时间,是否enable等

select JOB_NAME,JOB_TYPE,JOB_ACTION,REPEAT_INTERVAL,ENABLED,NEXT_RUN_DATE from user_scheduler_jobs where job_name='MV_RF$J_0_S_10';

(2)通过DBMS_SCHEDULER修改job属性

exec DBMS_SCHEDULER.SET_ATTRIBUTE ( name => 'MV_RF$J_0_S_10', attribute => 'repeat_interval', value => '(SYSDATE+(20/86400))');

exec dbms_scheduler.enable('MV_RF$J_0_S_10');

exec dbms_scheduler.disable('MV_RF$J_0_S_10');

(3)当job_queue_processes很小时,1000多个物化视图排队等待刷新,当job_queue_processes增大时,物化视图刷新较快

(4)针对手动建立的物化视图刷新,也会通过DBMS_SCHEDULER发起job,所以对于现场物化视图较多的库,需要适当调整job_queue_processes和process的值

CREATE MATERIALIZED VIEW LOG ON "APP_SCHEMA"."TEST1";

CREATE MATERIALIZED VIEW "APP_SCHEMA"."TEST1_1" ("ID") REFRESH FAST ON DEMAND START WITH sysdate+0 NEXT (SYSDATE+(60/86400)) enable query rewrite AS SELECT "TEST1"."ID" "ID" FROM "APP_SCHEMA"."TEST1";

3. processes

processes的值我们一般设为5000,对于大多数环境是够用的

但是由于sharding环境物化视图刷新job占用process,需适量扩大分片库的process值

查询当前所有跑着的job

select PNAME,PROGRAM  from v$process where pname like 'J%' order by pname;

印尼现场的ORA-00020: maximum number of processes (5000) exceeded,可以通过job_queue_processes改为0或增大processes值解决

若oracle hang住,无法登录,可以sqlplus -prelim / as sysdba登录,重启数据库

sqlplus -prelim / as sysdba
shutdown abort

sqlplus / as sysdba

startup

Processes,job_queue_processes和物化视图相关推荐

  1. oracle雾化试图_ORACLE物化视图具体解释

    一.物化的一般使用方法物化视图是一种特殊的物理表,"物化"(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,不论什么对视图的查询,oracle ...

  2. Oracle 物化视图(MV)详解

    物化视图(MV)是在Oracle Database 7中引入的技术.改功能原来称为快照,现在术语"快照"用于描述一下数据字典结构.MV可以执行实时的SQL查询操作,并将操作 结果存 ...

  3. Oracle物化视图

    物化视图是一种特殊的物理表,"物化"(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图SQL语 ...

  4. 创建物化视图commit_oracle 中物化视图讲解

    oracle 中物化视图讲解 oracle中的物化视图首先需要创建物化视图日志,oracle根据用户创建的物化视图日志来创建物化视图日志表,物化视图日志表名称为mlog$_基表名,如果表名超过20位, ...

  5. Oracle之物化视图

    近期根据项目业务需要对oracle的物化视图有所接触,在网上搜寻关于这方面的资料,便于提高,整理内容如下: 物化视图是一种特殊的物理表,"物化"(Materialized)视图是相 ...

  6. oracle雾化试图_Oracle创建物化视图

    Oracle创建物化视图 通过Oracle物化视图章节,我们已经了解到Oracle物化视图的作用和创建原理,本节通过实例详细讲解Oracle是如何创建物化视图的. 创建物化视图语法: 语法:creat ...

  7. 物化视图基于rowID快速刷新

    --1创建log create MATERIALIZED VIEW LOG ON gh_qyghgx WITH rowid; create MATERIALIZED VIEW LOG ON gh_qy ...

  8. [译]创建物化视图的先决条件

    原文Oracle® Database SQL Reference 10g Release 2(10.2) B14200-02 P924-925 创建物化视图的权限应当直接赋予而非通过角色 在你自己的s ...

  9. 4万字长文ClickHouse应用实战-物化视图在微信的实践

    前言 ClickHouse广泛用于用户和系统日志查询场景中,借助腾讯云提供基础设施,微信也在分阶段逐步推进clickhouse的建设和应用,目前作为基础建设的一部分,主要针对于OLAP场景,为业务方提 ...

最新文章

  1. android摄像头代码,Android摄像头
  2. 转:用java调用oracle存储过程总结(比较好理解)
  3. 安装elasticsearch-analysis-ik中文分词器
  4. python getattr_python __getattr__
  5. textedit怎么插入数据_还在手动插入Excel交叉空白行?这个小技巧10秒搞定
  6. mysql俩个表之间关联语法_MySQL多表关联SQL语句调优
  7. 用移动智能设备访问Ossim系统
  8. 正则表达式那些事儿(一)
  9. B: Break Prime
  10. C# 读取csv、xls、xlsx表格(读取到datatable、sql查询语句读取)
  11. 流计算技术实战 - CEP
  12. curviloft插件怎么用_Curviloft插件下载
  13. 苹果电脑计算机无法启动,MacBook Pro 按开机按钮没反应无法开机
  14. 输入电阻值,计算出并联电阻、串联电阻
  15. 嫦娥是白月光,高翠兰是朱砂痣,谁才是猪八戒最想娶的女人
  16. 华为鸿蒙新机2k曲面屏,华为P40系列“登场”:2K曲面屏+前后8摄,鸿蒙系统就别想了...
  17. macos终端美化_关于macOS终端美化的最轻松的指南Z Shell中的速成课程
  18. Windows的.winmd文件解析
  19. vue 正则验证坐标经度、纬度
  20. 华为桌面云(FA)交付前期准备工作

热门文章

  1. tp5怎么生成短链接_教大家如何用thinkphp做短链接
  2. 连接数据库报错:1130-Host ‘xxx‘ is not allowed to connect to this MySQL server解决
  3. P02014141 柳宇航 信息论作业
  4. 《百面机器学习》—— 读后总结
  5. 【photoshop CEP插件】 OCR文字识别
  6. PDF如何转换成EPUB格式?PDF转EPUB常用方法分享
  7. oracle通过软连接裸设备建库
  8. 张三踩瓷砖:C++用DFS深度优先搜索解POJ1979 Red and Black问题
  9. python总结1--数字对象、变量与注释、字符串
  10. 多线程和线程安全 同步代码 lock锁