今天用系统清理工具把系统垃圾清理了一番,结果在打开oracle 数据库时出现了错误:
SQL> connect / as sysdba;
已连接。
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
ORA-00313: 无法打开日志组 1 (线程 1) 的成员
ORA-00312: 联机日志 1 线程 1: 'C:\ORACLE\ORADATA\ORCL\REDO01.LOG'
查看C:\ORACLE\ORADATA\myoracle\REDO01.LOG还在,但是REDO02.LOG,REDO03.LOG被误删了.
赶紧换个例程OEMREP试试,结果还是一样的错误!
蒙了,难道要重装数据库不成?有什么办法可以解决这个问题呢?
解决办法:
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
SQL> startup mount;
ORACLE 例程已经启动。
SQL>select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- --- -----------
1 1 0 104857600 1 NO UNCURRENT 670680 07-12月-07
2 1 15 104857600 1 NO unactive 696119 07-12月-07
3 1 0 104857600 1 NO Unactive 650182 07-12月-07
已选择3行。
alter database clear unarchived logfile group 1; /*重建日志文件*/
数据库已经更改.
alter database clear unarchived logfile group 2;
数据库已经更改.
alter database clear unarchived logfile group 3;
数据库已经更改.
SQL>shutdown;
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>startup;
ORACLE 例程已经启动。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
问题解决!
但是,在对myoracle 例程进行同样的操作后,也不知道是哪里出了问题,
SQL>startup;
ORACLE 例程已经启动。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
ORA-03113: 通信通道的文件结束
在网上查找资料,出现这样的问题原因很多,一般是网络不通,或者是init.ora、C:\oracle\ora92\network\admin\sqlnet.ora或tnsnames.ora有问题.显然这些不适合我.我的两个例程,一个可以正常使用,另外一个有问题的!
在我关闭数据库后,重新打开,执行:
SQL>connect "/as sysdba";
SQL>select * from scott.emp;
ORA-27101 shared memory realm does not exist -
出现这个错误也有很多解释,一般要检查init.ora文件的内存配置是否有问题,但是在没有打开数据库的时候执行命令,也会出现这样的错误提示,我的属于后者,是由于没有挂载数据库造成的,这里提醒一下.
后来又乱琢磨了一回,还出现了错误:
ORA-24324: 未初始化服务句柄
ORA-01041: 内部错误,hostdef 扩展名不存在
这是越来越乱了,无奈之下,只好重头再来整理一遍,从重新配置日志文件开始,操作一样,但是奇迹出现了,错误消失了,也不提示通信通道文件结束了,数据库正常了,呵呵,但是很晕!
解决问题知识整理:
首先,执行下面的语句看看group1是不是current日志组
select * from v$log;
如果被删除的日志不是当前日志组的成员,比较简单
alter database clear logfile group 1;
如果你的库是非归档的,或许要用下面的语句
alter database clear unarchived logfile group 1;
如果是当前日志组损坏,但是数据库是正常关闭的,上面的办法也可以使用
如果日志组中有活动的事务,那么可能需要利用备份来恢复了:过程如下:
解决过程:Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\5201314>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 6月 20 11:19:52 2008Copyright (c) 1982, 2005, Oracle. All rights
reserved.
SQL> conn sys/dd as sysdba
已连接。
SQL> startup mount
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
SQL> recover database until time '2008-06-19 13:45:02'; /*恢复*/
/*(recover database until cancel;alter database resetlogs;重建日志文件),另外的写法,不知哪个对.*/
完成介质恢复。
SQL> alter database open resetlogs;
数据库已更改。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 205520896 bytes
Fixed Size 1248092 bytes
Variable Size 79692964 bytes
Database Buffers 117440512 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL>
分享到:
相关推荐
本文将详细解读如何配置Oracle数据源,并通过图文教程的方式引导读者完成整个配置流程。 #### 一、Oracle数据源配置简介 数据源(Data Source)是一种用于存储关于数据库连接信息的对象,它使得应用程序能够方便地...
1. **检查错误日志**:误删除数据文件后,通常会在 Oracle 的 alert 日志中记录相关的错误信息。这些信息对于后续的恢复操作至关重要。 - 示例错误信息: ``` ORA-01157: cannot identify/lock data file 9 - see...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在运行过程中可能会遇到各种错误,这些错误通常以特定的错误编号和消息形式出现。本文件包包含了关于"Oracle_Errors(oracle错误信息)解释"的相关资源,...
这些命令可以在命令行中使用,例如,在 Windows 中,可以打开命令行窗口,输入 exp 用户名/密码@标识 file=d:\c.dmp,这样就会将 Oracle 数据库数据导出到文件 d:\c.dmp 中。 而在 Java 语言中,可以使用 Runtime....
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在运行过程中可能会遇到各种错误。当遇到问题时,Oracle提供了一种有效的解决方式,那就是通过错误码来定位和理解问题的根源。"Oracle数据库常见错误码"这...
ORA-01034错误表示Oracle实例不可用,这可能是因为Oracle实例未启动或由于某种原因而关闭。ORA-27101错误则表明共享内存区域不存在,这通常意味着Oracle监听器无法找到所需的共享内存结构。这两种错误都指向了Oracle...
`CURSOR`用于处理结果集,`OPEN`、`FETCH`和`CLOSE`分别用于打开、获取数据和关闭游标。此外,还有`EXECUTE IMMEDIATE`用于动态执行SQL语句,以及`SAVEPOINT`和`ROLLBACK TO SAVEPOINT`用于事务管理。 在数据库操作...
如果有"无监听程序"的错误,检查并确保Oracle的服务和监听器正在运行。 测试连接成功后,点击"OK",新创建的数据源会显示在数据源选择窗口中。选中它,然后点击"OK"继续。此时,你将返回到最初的数据向导页面,可以...
3. **错误分类**:错误可能按照类型进行分类,如网络错误、数据一致性错误、SQL执行错误等,方便用户根据问题类别进行查找。 4. **示例**:可能包含一些错误发生时的示例场景,帮助用户识别错误发生的环境和条件。 ...
此外,检查Oracle服务是否正常运行,特别是Oracle监听器和服务,它们是数据迁移的基础设施,如果未启动,将导致无法连接。 总结来说,从MySQL到Oracle的数据迁移是一个涉及多个步骤的过程,需要正确配置和管理...
**Q1:如果在删除数据文件时遇到“表空间正在使用”错误怎么办?** A1:这通常意味着表空间中有活跃的数据或事务。你可以尝试将表空间设置为只读模式,然后再进行删除操作。 ```sql SQL> alter tablespace ...
根据提供的文件内容,可以看出这是一份Oracle数据库错误代码及其简体中文解释的列表。这份文档主要涉及了Oracle 7版本的一些基本错误代码及其含义。接下来,我们将对这些错误代码进行详细的解析,帮助用户更好地理解...
**ORA-17105**:未打开连接错误,可能是因为连接尚未建立。 **ORA-17106**:指向 JDBC-OCI 映射对象无效错误,可能是因为映射对象配置不正确。 **ORA-17107**:指向 Java Context 无效错误,可能是因为 Java ...
1. **确认数据文件(DBF)存在**:首先确认原始数据库中的数据文件仍然存在,并且未被覆盖或删除。 2. **准备恢复环境**: - 安装相同版本的Oracle数据库软件。 - 创建一个与原始数据库名称相同的实例。 3. **备份...
- **ORA-01403:未找到数据**:确保查询的条件正确,数据确实存在。 - **ORA-01555:快照过旧**:考虑增大_undo表空间或者优化查询以减少回滚段的使用。 - **ORA-27037:无法打开文件**:检查文件路径、权限或...
这是为了避免数据迁移过程中因字段数量或类型不匹配而引发错误。 #### 测试结果与优化建议 完成上述步骤后,可通过运行转换来测试数据迁移的结果。在实际操作过程中,还需注意以下几点: - **性能优化**:对于...
Oracle 的数据”(Data to Oracle)标签下,我们需要选择要导入的表,并注意字段是否对应正确,Fields 中前一列是 DBF 表中的字段,对应着的后一列是要导入到的 Oracle 表中的字段,注意区分,不要发生错误,可以...
"Oracle错误码大全"是针对Oracle 8i版本的一个错误信息查询资源,它包含了6513个以“ORA-”开头的错误码及其解释,旨在帮助DBA(数据库管理员)和开发人员快速定位和解决问题。 Oracle错误码由三部分组成:前缀...
- 切换到Oracle数据选项卡。 - 设置所有者为cms。 - 选择目标表名为`tb_ppz_User`。 - 将Excel文件中的字段与表中的字段一一对应起来,类型选择为String。 7. **执行导入**:点击导入按钮执行数据导入操作。 ##...
如果当前的PL/SQL块由于某种原因无法打开,将触发此错误。这可能由多种因素引起,包括语法错误、权限问题或系统资源限制。解决步骤可能包括检查PL/SQL代码的语法,确认用户权限,以及增加系统资源分配。 ### ORA-...