oracle无法连接到数据库实例

oracle无法连接到数据库实例,第1张

oracle

11g如果报告——enterprise

manager

无法连接到数据库实例,则可以按照如下方法排除故障:

1、使用sql

plus.

在dos模式下运行sql

plus.

sql>

conn

请输入用户名:

sys

as

sysdba

输入密码:

连接成功

sql>desc

dba_users

注意:如果此时提示发现该视图无效。用d:\oracle\product\10.2.0\db_1\rdbms\adminsql.bsq

新建立user_astatus_map

dba_users

.

否则会显示如下信息:

名称

是否为空?

类型

-----------------------------------------

--------

----------------------------

username

not

null

varchar2(30)

user_id

not

null

number

password

varchar2(30)

account_status

not

null

varchar2(32)

lock_date

date

expiry_date

date

default_tablespace

not

null

varchar2(30)

temporary_tablespace

not

null

varchar2(30)

created

not

null

date

profile

not

null

varchar2(30)

initial_rsrc_consumer_group

varchar2(30)

external_name

varchar2(4000)

sql>

select

username,account_status

from

dba_users

where

username='sysman'

username

account_status

------------------------------

--------------------------------

sysman

locked

sql>alter

user

sysman

account

unlock

用户已更改。

此时系统就可以连接到数据库了。

-

sqlplus "/ as sysdba" 连不上,报ora-01031:insufficient privileges解决方法

注意多个数据库实例时候,set ORACLE_SID='',

1、检查sqlnet.ora(WINDOWS下位于%ORACLE_HOME%NETWORKADMIN目录)是否包含这句:SQLNET.AUTHENTICATION_SERVICES=(NTS),没有的话加上

2、检查登陆windows的用户(administrator或安装oracle时候使用的用户)是不是在包含在ORA_DBA组中,域用户没有连上域服务器时就可能出现这种现象。

3. 要保证 remote_login_passwordfile 参数 = EXCLUSIVE .

4. 看看是否需要使用orapassw生成口令文件 .

一种解决方法案例:

1、检查系统参数:SQL>show parameter password

NAME TYPEVALUE------------------------------------ ----------- ------------------------------

remote_login_passwordfilestring EXCLUSIVE

2、

select * from v$pwfile_users

SQL>

为空

3、SQL>grant sysdba to sys

grant sysdba to sys

*

ERROR at line 1:

ORA-01994: GRANT failed: password file missing or disabled

4、建立password文件

D:/>orapwd file="D:/oracle/product/10g/db_1/database/PWDoratest.ora" password=gp

oswong entries=10

5、

SQL>select * from v$pwfile_users

USERNAME SYSDB SYSOP------------------------------ ----- -----

SYSTRUE TRUE

SYS正常显示出来。

6、重新在远程以SYSDBA登录,可正常使用。

如果口令文件创建的有问题,也是会报如下的错误:

ora-01031:insufficient privileges

口令文件的命名格式应为orapwsid,并且sid是区分大小写的。由于Target Database连接Auxiliary Database时需要验证口令,如果违反了以上规则,将会提示ORA-01031: insufficient privileges。

我在用linux创建duplicate数据库的时候 就是因为口令文件创建的路径和名称不对才遇到这个错误

-----end-------

只能将表空间删除了,首先

shutdown

immediate

然后启动到mount状态:

startup

mount

确定你少了那些文件:

sys@ORCL>select

*

from

v$recover_file

FILE#

ONLINE

ONLINE_

ERROR

----------

-------

-------

-----------------

4

ONLINE

ONLINE

FILE

NOT

FOUND

除了system和sysaux表空间以外,其它的表空间删除就行了,执行下面语句,使表空间的数据文件offline:

sys@ORCL>alter

database

datafile

4

offline

然后就可以打开数据库了:

alter

database

open

接着删除表空间:

drop

tablespace

users


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6754191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存