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 .
一种解决方法案例:
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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)