Oracle 常見的錯誤問題及解決方法

mengzhaoliang發表於2008-01-30

問題一:

匯出資料庫的資料時,oracle 10g客戶端連線9i伺服器,匯出資料包錯!


Export: Release 10.2.0.1.0 - Production on 星期五 11月16 11:08:09 2007

Copyright (c) 1982, 2005, Oracle.? All rights reserved.


EXP-00056: 遇到 ORACLE 錯誤 6550
ORA-06550: 第 1 行, 第 41 列:
PLS-00302: 必須說明 'SET_NO_OUTLINES' 元件
ORA-06550: 第 1 行, 第 15 列:
PL/SQL: Statement ignored
EXP-00000: 匯出終止失敗

如下圖:

 

解決:.高版本的exp不能匯出低版本的資料庫.
只能用低版本的資料庫來exp. 換成資料庫9i的匯出沒有問題。


問題2:
用SQL*Plus使用者名稱/密碼登陸不上去:
ERROR:
ORA-01017:invalid username/password;logon denied
如圖:

 

解決方法:
如果使用者名稱和密碼沒錯,在登陸框中的[主機字串(H)]:輸入你登陸資料庫的伺服器的名字。 如:我的資料庫安裝在本機上,本機的名稱為:mzl    輸入:mzl  即可登陸!

如下圖:

 

3 無法啟動Windows上Oracle10g的企業管理器(EM)

 

在終端輸入:emctl status dbconsole (檢視狀態)
啟動:emctl start dbconsole
錯誤資訊:Environment variable ORACLE_SID not defined. Please define it.
解決方法:

原來沒有安裝Oracle的企業管理器元件:

看下圖:

上圖中沒有OracleDBConsole服務,則沒有安裝!

 

4
在sqlplus中用管理員不能連線上資料庫:
SQL>connect system/mengzhaoliang as sysdba
出現:
ORA-12560: TNS: 協議介面卡錯誤??

解決方法:
造成ORA-12560: TNS: 協議介面卡錯誤的問題的原因有三個:
1.監聽服務沒有起起來。windows平臺個一如下操作:開始---程式---管理工具---服務,開啟服務皮膚,

啟動oraclehome92TNSlistener服務。
2.database instance沒有起起來。windows平臺如下操作:開始---程式---管理工具---服務,開啟服務

皮膚,啟動oracleserviceXXXX,XXXX就是你的database SID.
3.登錄檔問題。regedit,然後進入HKEY_LOCAL_MACHINESOFTWAREORACLEHOME0將該環境變數ORACLE_SI

D設定為XXXX,XXXX就是你的database SID.或者右幾我的電腦,屬性--高階--環境變數---系統變數--新建

,變數名=oracle_sid,變數值=XXXX,XXXX就是你的database SID.或者進入sqlplus前,在command line下

輸set oracle_sid=XXXX,XXXX就是你的database SID.
經過以上步驟,就可以解決問題。

5.普通使用者不能登陸資料庫。
ERROR:
ORA-01045:user MENG lacks CREATE SESSION privilege;logon denied
如下圖:


解決方法:
原因:使用者還沒有被授權建立會話的權利。 解決方法:資料庫管理員使用命令授予使用者會話的權利。 例如:sql>Grant Connect To meng

6:新增的使用者可以連線資料庫,但沒有建立表的許可權:


SQL>create table test(id number,name varchar(50));
Create table test(id number,name varchar(50))
*
第1行出現錯誤:
ORA-01031:許可權不足

解決方法:
用資料庫管理員授予普通使用者管理員的許可權:sql>grant  dba  to  meng

7:增加聯機重做日誌檔案組時出錯,如下圖:

SQL>alter database add logfile
     ‘E:\Disk3\redo04a.log’,’E:\Disk4\redo04b.log’)
     Size 15M;

‘E:\Disk3\redo04a.log’,’E:\Disk4=redo04b.log’)
第2行出現錯誤:
ORA-00933: SQL 命令未正確結束


解決方法:原來是語句中寫少了一個“(” 。


8:查詢出錯:ora-04043

 

解決方法:重新啟動資料庫即可解決。
>shutdown   


然後:
>startup

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12778571/viewspace-165733/,如需轉載,請註明出處,否則將追究法律責任。

相關文章