oracle sequence last_number,关于oracle序列的LAST_NUMBER

这是正常的,是的.从

documentation for the all_sequences data dictionary view开始,last_number是:

Last sequence number written to disk. If a sequence uses caching, the number written to disk is the last number placed in the sequence cache. This number is likely to be greater than the last sequence number that was used.

这可以使用新的序列重新创建:

SQL> create sequence SEQ_PAGE_ID start with 2222292436 increment by 1 cache 20;

sequence SEQ_PAGE_ID created.

SQL> select sequence_name, increment_by, cache_size, last_number

2 from user_sequences where sequence_name = 'SEQ_PAGE_ID';

SEQUENCE_NAME INCREMENT_BY CACHE_SIZE LAST_NUMBER

------------------------------ ------------ ---------- -----------

SEQ_PAGE_ID 1 20 2222292436

SQL> select SEQ_PAGE_ID.nextval from dual;

NEXTVAL

----------

2222292436

SQL> select sequence_name, increment_by, cache_size, last_number

2 from user_sequences where sequence_name = 'SEQ_PAGE_ID';

SEQUENCE_NAME INCREMENT_BY CACHE_SIZE LAST_NUMBER

------------------------------ ------------ ---------- -----------

SEQ_PAGE_ID 1 20 2222292456

last_number跳过缓存大小,这是正常的.

SQL> alter sequence SEQ_PAGE_ID CACHE 5000;

sequence SEQ_PAGE_ID altered.

SQL> select sequence_name, increment_by, cache_size, last_number

2 from user_sequences where sequence_name = 'SEQ_PAGE_ID';

SEQUENCE_NAME INCREMENT_BY CACHE_SIZE LAST_NUMBER

------------------------------ ------------ ---------- -----------

SEQ_PAGE_ID 1 5000 2222292437

last_number下降,但现在反映了生成的实际最后序列号. DDL(显然)导致写入磁盘的数据被更新以反映当前值,而不是缓存的顶部 – 旧的20值缓存或新的5000值缓存.在你的情况下,你得到了2222292447,这意味着你通过缓存进一步的值比我运行alter时的十个值.

保存到磁盘的值大部分存在,因此如果数据库崩溃,它知道从哪里拿起.重新启动时,序列将开始从记录的last_number生成数字.在正常运行期间,它不需要再引用它,它只是在缓存新值时更新磁盘上的值.这可以防止序列号在崩溃后重新发布,而不需要进行昂贵的(慢速)锁定来实时维护该值 – 毕竟这是缓存所要避免的.

如果last_value低于实际生成的序列,则只会出现问题,但这不会发生. (好吧,除非序列设置为循环).

SQL> select SEQ_PAGE_ID.nextval from dual;

NEXTVAL

----------

2222292437

生成的下一个序列号从高速缓存大小改变之前的最后一个序列号开始;它没有重用旧值,因为你可能一直担心字典值.

SQL> select sequence_name, increment_by, cache_size, last_number

2 from user_sequences where sequence_name = 'SEQ_PAGE_ID';

SEQUENCE_NAME INCREMENT_BY CACHE_SIZE LAST_NUMBER

------------------------------ ------------ ---------- -----------

SEQ_PAGE_ID 1 5000 2222297437

last_number现在显示先前存储的值增加了5000的缓存大小.数据字典中的内容现在不会再次更改,直到我们从缓存中消耗了所有5000个值,或者其他地方发生了影响它的事情 – 数据库被弹跳,序列被再次改变,等等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/442229.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle存储过程日志打印,如何在oracle存储过程中逐行打印

我正在执行一个存储过程,但它在某个时候失败了, 当前错误代码不帮我找到错误的位置和确切位置 我想知道它正在失败,所以想要在执行时逐行输出。 例如:如何在oracle存储过程中逐行打印create or replace-- decaring required varia…

linux依赖包在哪个目录,命令-Linux cmd在jar中搜索类文件,而与jar路径无关

Linux,演练以在许多jar中查找类文件。转到包含下面的jar的目录。ericdev /home/el/kafka_2.10-0.8.1.1/libs $ lsblah.txt metrics-core-2.2.0.jarjopt-simple-3.2.jar scala-library-2.10.1.jarkafka_2.10-0.8.1.1-sources.jar zkclient-0.3.jarkafka_2.10-0.8.1.1…

linux 挂在iso文件,linux 挂载iso文件安装文件 与 网络yum的搭建

挂载1.首先,创建文件作为挂载点mkdir /文件名/2.mount /iso/rhel-server-7.3-x86_64-dvd.iso /dir/将/iso目录下的镜像挂载到 /dir/文件上3. cd /etc/yum.repos.d/ 进入文件4. rm -fr * 删除目录下所有文件5.vim yum.repo 编辑文件内容6. rhe17.3] 说明namerhe17.3 …

微软引入linux内核,微软内部已在讨论Linux内核中加入exFAT的可能性

微软的exFAT文件系统已经有十多年的历史了,虽然已经有了一些突破,但是主流Linux内核仍然不支持此文件系统,即使它出现在更多的SD卡和其他设备上。但现在又重新努力将exFAT驱动程序引入Linux内核,有一个开发人员对为exFAT添加一个新…

linux内核ddr初始化,X-007-UBOOT-DDR的初始化(Bubblegum-96平台)

X-007-UBOOT-DDR的初始化(Bubblegum-96平台)作者:wowo 发布于:2016-7-21 22:47分类:X Project1. 前言到目前为止,“X Project”在Bubblegum-96平台上的代码,都是运行在SRAM中。由于SRAM的size很小(最多也就96KB)&#…

linux message日志只有4k,linux命令查看日志

首先介绍几个日志查看种常用的简单命令:1、tailtail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filena…

linux emule 编译 wx-config --libs,LeezPi-RK3399_Android9编译说明

# LeezPi-RK3399_Android9固件编译[TOC]## 准备工作编译 Android 对机器的配置要求较高:* 64 位 CPU* 16GB 物理内存交换内存* 30GB 空闲的磁盘空间用于构建,源码树另外占用大约 25GB官方推荐 Ubuntu 14.04 操作系统,经测试,Ubunt…

linux 4.4内核特性,Linux Kernel 4.4.19 LTS长期支持版发布

原标题:Linux Kernel 4.4.19 LTS长期支持版发布摘要:近日,内核开发者Greg Kroah-Hartman公布了长期支持的Linux 4.4 Kernel系列第19个维护版本的细节。Linux 4.4是目前最新的LTS内核分支,被Arch Linux, Solus和Ubuntu Linux等众多…

linux 软件源 概念,Linux 软件源介绍

陈科肇1.软件源简介软件源是Linux系统免费的应用程序安装仓库,很多的应用软件都会这收录到这个仓库里面,按类型分则有:1).软件仓库:各类软件的二进制包和源代码2).ISO镜像:发行版的ISO文件软件源可以是网络服务器&…

linux 设备 major 253,redhat5.5测试环境中使用udev配置raw设备

在redhat 5中,是通过udev来管理raw设备的。 那么udev如何知道raw设备, 就是通过MAJOR和 MINOR。 如果我们只写:ACTION"add", KERNEL"sda", RUN"/bin/raw /dev/raw/raw1 %N"那么Udev就无法识别出raw设备&#x…

linux系统如何拨号上网连接,教你在Linux下如何使用ADSL拨号上网

教你在Linux下如何使用ADSL拨号上网发布时间:2007-10-29 10:22:09来源:红联作者:demon一、如果是新手刚开始使用Linxu的话,可用图形界面:办法:直接在网络里建立新的拨号连接即可二、使用文本模式的话:如果存在文件 /usr/sbin/pppd…

linux git diff patch,拿到git patch要怎麼用一般patch指令merge?

如果你的codebase工作環境沒有使用git作管理, 你要怎麼做從git產生的patch呢?首先要先知道diff 與 patch 的關係, 傳統的linux裡面, .patch檔案是透過diff產生的Diff 和 Patch 的簡易操作使用筆記:(參考: Tsung’s Blog)diff -Naur file1 file2 > project.patch # Diff 產生…

c语言汇编混编,c语言与汇编混编写法

R13 (stack pointer)R14 (Link Register)R15 (program counter)c语言中内嵌汇编的规则:内嵌汇编器与armasm的区别:访问全局变量:unsigned char LDRB/ STRBunsigned short LDRH/STRHunsigned int LDR/…

c语言中entern int x y,关于extern和int main()的结构有关问题

关于extern和int main()的结构问题本帖最后由 hashcat 于 2015-09-20 12:34:50 编辑这是c实现md5加密的代码,报错部分是两处extern,其实也就是两处extern需要改动,但是试了半天,没搞懂要怎么改...#include #include #define MD5_R…

关于c语言的英文论文,C语言论文外文翻译.doc

C语言论文外文翻译C语言论文外文翻译ASP.NET Technique1. Building ASP.NET PagesASP.NET and the .NET FrameworkASP.NET is part of Microsofts overall .NET framework, which contains a vast set of programming classes designed to satisfy any conceivable programming…

用C语言创建多个用户,实现支持多用户在线的FTP程序(C/S)

1 importjson2 importos3 importshelve4 importstruct5 importsubprocess67 from conf importsettings8 from lib importcommon91011 classHandlerRequest:12 """处理用户请求."""13 max_packet_size 819214 encoding utf-81516 struct_fmt i…

android 代理 wifi热点,android wifi热点默认网关

原贴:https://blog.csdn.net/jingzitakk66/article/details/89146696项目需求,android端创建热点,电脑端连接此热点后用socket实现数据传输,PC端获取网卡时无法判断多网卡情况下哪个IP为需要的IP,所以搜了下&#xff0…

android实现电话功能实验报告,安卓开发实验报告-20210407005833.docx-原创力文档

文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]安卓开发实验报告安卓开发实验报告目录页面跳转长按图标抖动以及显示删除页面跳转功能:通过点击button实现2个activity之间的跳转。1.设置监听器监听…

android matrix 缩放,android – 如何获取任意矩阵的缩放值?

图像按矩阵缩放:Matrix matrix new Matrix();matrix.postScale(...);matrix.postTranslate(...);matrix.postRotate(...);...我希望缩放的图像不会小于原始图像的一半,因此总变焦不应小于0.5.但是怎么做呢?我试图获取矩阵的第一个值来检查:f…

买iphone不买android,为何宁可用4年前的苹果6s,也不买两三千的安卓呢?理由很真实...

在这个信息时代,几乎每个人都离不开手机,手机渗入到了我们生活的方方面面,不管是社交聊天、还是影音娱乐,甚至是办公出行,没有手机,很多人都会寸步难行。全球的智能手机市场竞争处于白热化的阶段&#xff0…