ORA-01219: 数据库未打开: 仅允许在固定表/视图中查询解决之道

问题描述:

我们在操作Oracle时常常会遇到一个莫名其妙的问题,首先是用plsql登录的时候用sys能够登录,但是无法操作左边的表啊,表空间之类的,报错为ORA-01219: 数据库未打开: 仅允许在固定表/视图中查询

 
到网上一查应该是某个.dbf文件残留;或者误删除(有意删除).dbf文件导致出现上述警告
解决方案:
一、首先介绍3种进入sql*plus操作的方式(编辑代码后续给出)
方式1:登录到本地sql*plus解决


以管理员身份登录,用户名Scott 密码为tiger(是具体情况而定)
方式2.登录当本地网页版主页处
utl:http://localhost:1158/em

sysdba身份登录上去,用户名可以是sys,至于登录口令是你安装的时候设置的(哈哈傻了吧,忘了吧。。。)登录后显示右边图片中的维护,找到sql*plus链接处,或者直接点击下面的sql*plus处
如图

显示如下sql*plus登录页面,登录时需要以数据库管理员身份登录

就可以进入编码阶段了


方式3.到运行处输入sqlplus/nolog 命令即可(如果显示你的命名无效之类的,说明你的Oracle路径没配置到path上,路径配置直参考:C:\oracle\product\10.2.0\db_1\bin)
然后就显示如下页面


二、接下来说到核心了,进入sql*plus可编辑处窗口后即输入以下编码(文字可忽略)
1.先链接 输入SQL> conn 用户名/密码 as sysdba 参考SQL> conn sys/orcl as sysdba
2.查看你的数据库信息SQL> select * from v$log;
3.关闭 例程,并卸载了数据库(放心,不是那个卸载意思,没事儿!) SQL> shutdown immediate;
4.从启数据库,并装载数据库 SQL> startup
5.修改数据库打开方式SQL> alter database open; 
6.SQL> alter database open resetlogs;
上诉几行编码搞定,在试试你的plsql,没问题了吧,哇噢,超级棒是不?
懂得分享是IT行业的默契!

java.sql.SQLException: ORA-01109: 数据库打开ORA-01109是一个Oracle数据库错误代码,表示数据库无法在当前状态下打开。这个错误通常发生在以下几种情况下: 1. 数据库实例并启动: 在使用Java连接Oracle数据库时,首先需要确保数据库实例已经启动。如果数据库实例没有运行,则会导致ORA-01109错误。请检查数据库实例是否已经启动,并尝试重新连接。 2. 数据库正在进行恢复操作: 如果数据库正在进行恢复操作,那么在恢复操作完成之前是无法打开数据库的。请等待数据库恢复完成后再进行连接。 3. 数据库文件损坏: 可能由于文件系统错误或其他原因,数据库文件损坏导致无法打开数据库。在这种情况下,可能需要使用Oracle数据库的恢复工具来修复数据库文件。 4. 数据库处于不可恢复的状态: 如果数据库处于不可恢复的状态,那么无法打开数据库。可能需要进行数据库的恢复操作来解决此问题。 解决该问题的方法包括: 1. 确保数据库实例已经启动。 2. 确保数据库没有进行恢复操作,并等待恢复操作完成。 3. 检查数据库文件是否损坏,并通过数据库恢复工具修复损坏的文件。 4. 如果数据库处于不可恢复的状态,可以尝试进行数据库的恢复操作。 总之,ORA-01109错误是表示数据库无法在当前状态下打开的错误。要解决这个问题,需要检查数据库实例状态,修复可能的文件损坏,并确保数据库处于可恢复的状态。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值