人生倒计时
- 今日已经过去小时
- 这周已经过去天
- 本月已经过去天
- 今年已经过去个月
Oracle恢复数据服务器中断(oracle数据表恢复)
oracle实例异常中断后重启动数据库遇到ora-00600[3705]错误,盼高手解决
ORA-00600: internal error code, arguments: [3705], [1], [1], [1], [0], [], [], []
(使用浏览器扫码进入在线客服窗口)
复制联系方式
Database fails to start with ORA-00600: internal error code, arguments: [3705], [1], [1], [1], [1],
Trace file shows:
ksedmp: internal or fatal error
ORA-00345: redo log write error block 2798 count 2
ORA-00312: online log 2 thread 1: 'J:\MCS_REDO\REDO02.LOG'
ORA-27072: skgfdisp: I/O error
OSD-04008: WriteFile() failure, unable to write to file
O/S-Error: (OS 21) The device is not ready.
Call stack is:
ksedmp ksfdmp kgeriv kgesiv ksesic4 kctopn kcttha ksbabs ksbrdp
All files are at the same checkpoint scn and alert log shows database was previously closed tidily.
CAUSE
Bug 3397131
Abstract: CONTROL FILE / REDO FLAG MISMATCH ORA-600[3705]
The root cause of this error is an underlying OS issue.
Everytime a controlfile transaction that modifies anything in the controlfile ends, oracle writes a updated seq# in the controlfile which we also record in the current online redolog; when we next read the controlfile we validate that the seq# in the controlfile is as we expect it to be. This error indicates a stale read of the controlfile and should be investigated by the Os vendor.
这个错误是控制文件存在讹误了,需要修复控制文件
如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!
诗檀软件专业数据库修复团队
oracle数据库服务宕机可能是什么原因造成的?
原因很多,内部原因外部原因都有可能。
外部原因:比如服务器宕机,系统错误,温度过高宕机(比如机房空调坏了),临时断电,内存错误等等这些都有可能,电压不足等等。
内部原因:比较常见的有undo文件损坏,数据文件错误(遇到过一次,最后用补0的方法扩大了数据文件才好,不过现在用asm存储,这个应该不怎么可能了),时间调整错误(向后调,改动时间过长,比如00:00改为01:00,那么就两个情况都占,未必一定宕机,不过可能性很大),核心进程错误(这个比较少见,不过真的有,有时是有人误杀了),程序错误导致(见过一个因为某程序错误,导致锁表,而后锁表导致某进程一直占用内存,后来的进程根本进不了该表,然后越滚越大最后宕机,还是后来查出来的,相当于蝴蝶扇翅膀变成飓风,所以有错误要及时发现才行),存储错误,io争用(持续时间长)等等。
这么说吧,很多的ora错误都可能引起宕机(并不是全部ora错误都会引起宕机),真要说的话要很长时间,如果想不宕机那么就要有监测检查制度,早发现早解决,也就不会有什么问题了。

oracle闲置超时,怎么样重新连接(急)
原因:
1、EF 、EFCore 中默认存在链接池,每次数据库操作完成之后,会将连接丢到连接池。连接的释放过程单独管控(这里不做详细解释);
2、当Oracle数据库中设置有连接(会话)有效期时,到期后,Oracle服务端会中断连接,并将会话标识为:SNIPED状态;
注:查询数据中已超时,未释放的会话:select * from v$session where status = 'SNIPED';
3、当Oracle数据库中连接超时后,EF连接池中的连接依然存在,若再次进行数据库操作,则会提示 idle 超时异常;
解决方案:
方案1:调整数据库设置,将数据库中的“IDLE_TIME”设置未“UNLIMITED”,具体方式请自行百度;
可通过以下语句查看当前设置:
select username, b.* from dba_users a, dba_profiles b where a.profile = b.profile and username='IOT_SUB_ALL';
方案2:
在项目代码数据库连接字符串中添加:min pool size=0;设置,将EF连接池最小连接保持数设置为0(默认为1);
连接字符串样式:
"User Id=用户id;Password=密码;Data Source=IP:端口/服务器名;min pool size=0;"
连接字符串参数详细说明见:
服务器的服务突然中止,发现ORACLE 10g数据库已经停止工作,测试连接、导出数据等功能全部不能使用。
你在做这些之前,尝试重新启动Oracle了吗?
1. 如果是windows,可以直接启动服务试试
2. 可以用手工启动
sqlplus / as sysdba
a. startup nomount;
b. alter database mount;
c. alter database open;
看哪一步异常,以采取相应措施

