也谈如何获得PostgreSQL序列的当前值(最后值)
来源:互联网 发布:天天特价淘宝 编辑:程序博客网 时间:2024/06/05 10:14
【原创文章,转载须注明出处】
由于前段时间一台Linux服务器(在VM笼子里),莫名其妙被一台AD撑破空间弄死了,再也救不会来(可见VM也不安全),可幸的是刚给这台Linux做了一台在线备用服务器,于是赶紧切换IP,把复制支点抹掉等等,然后用备用服务器设置Live。
本以为一切没问题,但后来用户某些系统部分功能报错,一查才发现备用服务器上PostgreSQL的序列没有被同步过来(我现在用的是slony做的同步),然后各自手动设置一番就不说了。
后来细想,有必要把这些序列的最新值也同步过来,slony没有此功能唯有自己写shellscript实现,但如何获得Live服务器上序列的最新值呢?度娘了一番,无非都是用currval('seq_name')这样的函数获得,但是,新开一个session用currval会报错的,当前大家提供的折中办法是先用nextval再用currval,不甘心,再谷歌一番也是这样的说法。
于是拿起计算机敲了一下,如果我要1分钟同步一次,一天要损失1.4K 个序列,一年要损失525K个序列,这是非常不可取的!
但通过各种尝试,居然找个一个办法轻松获得,各位看官请看:
假如我要知道seq_mail_id这个序列的最后值,那么只需要:
select * from seq_mail_id ;
结果表中last_value这个值就是你想要的,easy吧?
0 0
- 也谈如何获得PostgreSQL序列的当前值(最后值)
- oracle中如何获取序列的当前值
- 修改一个oracle序列的当前值
- oracle数据库修改序列的当前值
- 怎样修改一个序列的当前值
- 【oracle】重置序列的当前值
- oracle 得到序列的当前值
- oracle修改序列的当前值
- 在DB2中如何获得自增列的当前值
- [Oracle] 查询修改序列对象的当前值
- 修改Orcale数据库的序列的当前值LastNumber(LAST_NUMBER)
- 在VC中如何获得程序的当前路径?
- 查看sequence的当前值
- 获得应用程序的当前路径
- ExtJs中获得(GridPanel)选中的当前选中行号
- 设置combobox 的当前所选值
- javascript获取select的当前值
- mfc 获取combobox的当前值
- ubuntu下解压缩文件
- [leetCode]:Evaluate Reverse Polish Notation
- 特征提取->LBP特征(1)
- OpenSession()和getCurrentSession的联系和区别
- JS实现数字转换为货币汉字大写数字的方法详解
- 也谈如何获得PostgreSQL序列的当前值(最后值)
- 使用PCL::GPU::遇到问题
- 运行locate,找不到mlocate.db
- 通过mysql workbench可视化开发mysql
- Java NIO使用及原理分析(三)
- VB去除窗体(对话框)左上角图标
- FFMPEG视音频编解码零基础学习方法
- POI和jxl.jar性能比较
- 配备TOMCAT SESSIONID 字符长度和生成算法