当前位置: 首页 > news >正文

SEQUENCE在RAC多实例开启CACHE的NEXTVAL数值乱序问题

问题说明

在多实例环境中可能会出现从Sequence所取出来的nextval是乱序的,比如第二次比第一次所取的数要小但这并不是我们所希望的。当程序逻辑Base on sequence.nextval数值所谓填充字段的大小来排序时,就会产生问题。

实际上就是由于多实例这一特性造成的,因为实例是内存和进程的集合,单个实例的内存资源存在相对独立的场景,sequence默认会开启cache并且noorder。假设RAC上的两个节点上序列缓存设为20,第一个节点上缓存100-120,第二个节点缓存了121-140,而RAC环境对外提供的是scan ip所以当连接到不同节点就会出现取值乱序的情况。

解决方式

取消缓存或者添加order,当然也可以nocache+order

drop sequence user.seq1;
create sequence user.seq1
minvalue 1
maxvalue 9999999999999999999999999999
start with 66666
increment by 1
nocache --不开启缓存
order; --按序
http://www.dtcms.com/a/273779.html

相关文章:

  • redis数据结构和数据类型
  • Redis实战案例
  • Java 面试题超详细解析(二)
  • Windows下的redis
  • 小木的机器学习日记——KNN
  • lua中检查静态常量是否正确引用
  • 每天一个前端小知识 Day 28 - Web Workers / 多线程模型在前端中的应用实践
  • 【web应用】若依框架前端报表制作与导出全攻略(ECharts + html2canvas + jsPDF)
  • 界面组件DevExpress WPF中文教程:Grid - 如何检查节点?
  • Windows 应用程序的 UI 框架:WPF、WinUI 3 和 UWP的差异区别
  • VMware安装Centos 7
  • pandas销售数据分析
  • 十年架构心路:从单机到云原生的分布式系统演进史
  • 七牛云运维面试题及参考答案
  • MySQL 的语言体系
  • 【InnoDB存储引擎4】行结构
  • 报错 | “pnpm : 无法将“pnpm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,
  • day17 力扣654.最大二叉树 力扣617.合并二叉树 力扣700.二叉搜索树中的搜索 力扣98.验证二叉搜索树
  • 数据库迁移人大金仓数据库
  • 多表查询-2-多表查询概述
  • 黑马点评系列问题之P55优惠券秒杀 快捷键问题 Ctrl+D显示不出来老师给的界面
  • 第八章 STM32之IAP编程
  • mysql数据库导入导出命令
  • ARM架构CPU的市场和生态
  • 欢乐熊大话蓝牙知识26:想让设备秒连?Connection Interval 配得对吗?
  • 零碳园区:安科瑞EMS如何破解新能源消纳难与高耗能产业转型困局
  • 锁的艺术:从Mutex到ReentrantLock,掌握并发编程的脉搏
  • 大模型使用
  • Qt 实现新手引导
  • Windows解决 ping 127.0.0.1 一般故障问题