服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Oracle - 新安装的oracle11g数据库启动就报错,可以这么解决

新安装的oracle11g数据库启动就报错,可以这么解决

2023-09-22 06:00未知服务器之家 Oracle

有朋友求助于我,新安装的oracle11g数据库,使用PLSQL Developer工具连接报错,错误代码:ORA-01219,数据库版本号11.2.0.1.0,操作系统Windows Server 2012,问我不用重装是否可以解决?初步判断是数据库启动异常,因为是内网环境,不能远

有朋友求助于我,新安装的oracle11g数据库,使用PLSQL Developer工具连接报错,错误代码:ORA-01219,数据库版本号11.2.0.1.0,操作系统Windows Server 2012,问我不用重装是否可以解决?初步判断是数据库启动异常,因为是内网环境,不能远程,只能指导他一步步操作。

新安装的oracle11g数据库启动就报错,可以这么解决

1.首先让他登录到服务器,重启数据库:

SQL> shutdown immediate
SQL> startup

新安装的oracle11g数据库启动就报错,可以这么解决

执行startup启动指令后,果然出现错误信息,显示为datafile 3文件异常。这里的datafile 3对应的是undo表空间,在打开数据库时,需要用到undo block 208来回滚没有提交的事务,但是block 208这个块有问题,提示需要恢复。

2.执行以下命令,进行数据文件恢复:

SQL> recover datafile 3;

新安装的oracle11g数据库启动就报错,可以这么解决

3.结果提示上面的错误,说明datafile 3已经损坏,将其下线:

SQL> alter database datafile 3 offline drop;

新安装的oracle11g数据库启动就报错,可以这么解决

4.既然数据库已经是open的状态,那么就可以创建新的undo表空间:

SQL> create undo tablespace UNDOTBS datafile 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS.dbf' size 500m autoextend off;

5.指定UNDOTBS表空间为默认undo表空间:

SQL> alter system set undo_tablespace='UNDOTBS' scope=both;

6.确保所有UNDOTBS1的status都已变成offline:

SQL> select SEGMENT_NAME ,STATUS ,TABLESPACE_NAME from dba_rollback_segs;

7.当UNDOTBS1都为OFFLINE状态后,删除UNDOTBS1:

SQL> drop tablespace UNDOTBS1 including contents and datafiles;

8.重启数据库验证结果,问题已解决:

新安装的oracle11g数据库启动就报错,可以这么解决

注意:

  • 对于非归档模式下只能使用以下指令对数据文件置为离线,否则会提示错误:
SQL> alter database datafile 3 offline drop;
  • 而对于归档模式,offline和offline drop没有什么区别

延伸 · 阅读

精彩推荐