序列異常導致災備端應用異常處理一則
災備環境災備端oracle資料庫一個序列異常導致部分業務應用功能無法使用
現象:
生產端exp匯出,傳輸到災備端,imp匯入。
災備端用cms/abc訪問資料庫,執行以下sql語句:
select max(articleid) from slib ;
select seq_slib.nextval from dual;
正常情況下,第一條語句返回的值應該比第二條語句返回的值小(比如100,117),可是現實情況剛好相反(117,100),開發工程師說就是因為這個序列異常導致該功能無法正常使用了,報錯違反唯一性約束;
解決方法:
如果要修改start with即初始值,只能先刪除該序列drop,然後再重新建(但是使用該方法不知道怎麼實現自動化);後來發現可以先修改increment 、取一下nextval, 再改回increment值..
於是新加了一個指令碼sequence.sql (實現自動化)內容如下所示:
conn cmsuser02/xyz
alter sequence seq_slib increment by 20;
select seq_slib.nextval from dual;
alter sequence seq_slib increment by 1;
commit;
exit;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21256317/viewspace-776722/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python應用:異常處理Python
- 異常篇——異常處理
- 時區不一致導致spring應用異常Spring
- 異常-throws的方式處理異常
- 異常處理
- C#自定義異常 統一異常處理C#
- 異常處理與推導式
- Java 異常表與異常處理原理Java
- restframework 異常處理及自定義異常RESTFramework
- SpringBoot統一異常處理Spring Boot
- SpringMVC 統一異常處理SpringMVC
- React 異常處理React
- JS異常處理JS
- oracle異常處理Oracle
- Python——異常處理Python
- Python異常處理Python
- ThinkPHP 異常處理PHP
- JavaScript 異常處理JavaScript
- JAVA 異常處理Java
- 異常的處理
- golang - 異常處理Golang
- 異常處理2
- 異常處理1
- Java 異常處理Java
- Abp 異常處理
- JAVA異常處理Java
- 08、異常處理
- SpringMVC異常處理SpringMVC
- MVC使用異常過濾器處理異常MVC過濾器
- 異常處理機制(二)之異常處理與捕獲
- Util應用框架基礎(五) - 異常處理框架
- 異常-try...catch的方式處理異常1
- 異常-try...catch的方式處理異常2
- springboot下新增全域性異常處理和自定義異常處理Spring Boot
- JSP 異常處理如何處理?JS
- spring boot 統一異常處理Spring Boot
- 2.1.3 Python物件導向之異常處理Python物件
- NodeJS之異常處理NodeJS
- JAVA_異常處理Java