oracle使用过程中遇到的头疼问题,这是一个问题帖,一个摸索过程

ora-01219:数据库未打开: 仅允许在固定表/视图中查询

首先用PLSQL连接了sys用户,正常登录没有问题,进入到正常的界面,但是再sql窗口执行sql语句的时候,总是显示无效的语句,百度了一些资料,想顺手,点开一下左下的列表,查看一下表或者是用户,就报了这个错误,后面的解释是:数据库未打开: 仅允许在固定表/视图中查询,报错后,按照习惯先百度,看了第一个帖子,宗旨是用不同的方式连到数据库上,再进行想要的操作,我尝试了几种方式,都是想以sys用户来登录,重新用PLSQL登录,还是同样的毛病,所以把目光看向了Oracle自带的sqlplus,我选择了两种方式,一个是直接进入sqlplus,我的电脑是win10系统,在菜单栏有一个直接的入口,打开的话会让你输入用户名,输入完后让你输入密码,(由于本人记性一般,这里隐约是和PLSQL类似的错误,总之不让你登录);第二种呢是通过cmd,注意不要输入完PLSQL就回车,这时回车就和上一种一样了,直接用空格sys/密码 as sysdba 再回车,这种方法可以连接上,但是想执行sql语句,往往会出现第二种错误,ora-01012:not logged on,或者显示的是中文的没有登录。

ora-01033:oracle initialization or shutdown inprogress

这个情况没记错应该是在使用sqlplus登录时会出现,意思时oracle在初始化或关闭进程,当时应该也是使用第二种方法连上数据库,进行了网上的一些操作。

ora-01012:not logged on/没有登录

关于这个问题,网上的解决方案大致分为两种,第一是关掉监听程序再启用,第二关掉Oracle的进程再启用,从某种思想上来说方案是类似的,

ora-12528 TNS:监听程序:所有适用例程都无法建立新连接

这个情况出现在一顿操作之后,想在PLSQL重新登录,同时又接受别人的建议说 可能这种情况是由于sys用户出现的,在关闭PLSQL后,重新登录,出现的情况,同时不管哪个用户都会折在这个对话框上,基本属于被锁死了把。

ora-01031: insufficient privileges

意思是权限不足,具体出现原因不明,解决方案不明

ORA-24324: 未初始化服务句柄

ORA-24323: 不允许此值

ORA-01090: shutdown in progress - connection is not permitted

这三行是一起出来的,是使用第二种方法连接数据库后,进行执行sql语句的操作出现的,虽然是三行一起出现,但我认为最后一行是根本原因,意思是正在关闭不允许连接。

解决过程

首先呢,是找到了Oracle的服务,重启了必要的服务(oracleserviceorcl),之后启动了监听器,然后是普通用户连接不了PLSQL,sys连接进去还是和原来一样,出于无奈按照原来的方法在sqlplus连接到了数据库,按照网上的方法,进行操作,分别是,alter database mount报错ora01100数据库已装载;shutdown normal,报错ora01109数据库未打开,但是到这的时候,出现了新的提示:已经卸载数据库,oracle例程已经关闭,再输入startup mount,显示oracle例程已经启动,数据库装载完毕,在这个时候,中间件(类似于tomcat)已经可以启动了,证明数据库有在运行,用sys用户查询会显示ORA-01219: 数据库未打开: 仅允许在固定表/视图中查询,同时没法用普通用户登录,程序也没法连接数据库。最终回到了最开始的情况。

状态:已解决

网上的办法进行了挨个的尝试,其中包括alter database open,但是出现的结果和网上告诉的结果不符,我出现了一个第一行出现错误:ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项,根据这一个错误,进行了重新搜索,在csdn的一位博主找到了问题的答案,由于还是萌新,不知道是否可以引用链接,所以这里希望大家遇到这个问题时去问问度娘,就可能和我找到了同一个答案,相对来说比较复杂一点因为需要找到源目录里的日志文件,关键在于找到oradata这个文件夹,按照方法将三个日志文件挨个进行尝试,本来我也没有报什么希望,但是最后一个日志文件拽完后,没有出现报错,按照指示进行了操作后,发现就可以重新连接上普通用户了。PLSQL也可以重新查看表了。通讯测试也通过了,开心。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值