1、切換使用者後就不能用sqlplus了,每次都得關機重新開機:
這要從su 和 su - 這兩個切換使用者的名令說起了,前者隻是切換了身份,但SHELL環境仍然是原使用者的SHELL;而後者連使用者和SHELL環境一起切換成新使用者的了。隻有切換了SHELL環境才不會出現PATH環境變量錯誤。也就能找到指令了。
具體案例:
我用root登陸。然後切換到oracle使用者下,執行sqlplus 指令 卻報錯:command not found!
就是因為使用的是su ,而不是su -
另外還有個很明顯的差別:
比如說 root使用者在/root/目錄下, su oracle,
切換到了oracle 使用者,但是目錄仍然在/root/下。
如果使用su - oracle
你可以發現目錄也切換到oracle使用者的家目錄下。此時的指令就可以用了,因為這時環境變量換成了oracle的啦。。
2、進入sqlplus後,進行指令操作,發現鍵盤上的上下箭頭鍵不能切換以前使用過的指令,左右箭頭鍵不能移動光标:
在Linux下面使用sqlplus很不爽,上下鍵,倒退鍵都不能用,嚴重降低生産效率。
某一天終于發現了這個rlwrap這個好東西,特寫此文記錄。
下載下傳後,将.zip擴充名去掉,傳到Linux伺服器上面。
先裝上一些安裝rpm
一:安裝readline
OS的安裝CD光牒裡提供了readline包.
二:安裝rlwrap
三:友善使用rlwrap
3、用ed指令時找不到預設的編輯器。
1 RedHat Enterprise Linux 5 Update 3;
2 oracle10g R2(10.2.0.1.0)for linux;
二 功能實作原因
window平台上sqlplus中使用edit可以使用預設的筆記本打開緩沖區的内容,而linux平台上在sqlplus中預設執行edit指令不能執行編輯,這是沒有為sqlplus設定預設的編輯器。下文中将以vi為sqlplus的預設編輯器。
三 方法[以oracle使用者執行]
[oracle@as5u3 ~]$export EDITOR=vi #原文set _EDITOR=vi,"_"符号不使用
登陸sqlplus中測試
[oracle@as5u3 ~]$sqlplus test/test
sql> select sysdate from dual;
sql> ed [edit的簡寫] #sqlplus自動切換到vi,以vi打開緩沖區的語句
在vi中修改sql,存盤,會自動重新讀入到sqlplus的緩沖區。
四 sqlplus進入後,執行ed時自動調用vi
五:vi .bash_profile #寫入oracle使用者的環境變量
export EDITOR=vi #将這行追加到最後一行
重新使用oracle登陸,進入sqlplus即可。
4、現象:不能在 本地計算機 啟動 OracleDBConsoleorcl。:
有關更多資訊,查閱系統事件日志。如果這是非 Microsoft 服務,請與服務廠商聯系,并參考特定服務錯誤代碼 2。
系統事件日志 報錯誤"Agent process exited abnormally during initialization."
出現情況:原來正常,IP位址變了後就不能啟動,
我的解決步驟如下:
1、開始-》運作cmd
2、執行 emctl start dbconsole
C:\Documents and Settings\xcl>emctl start dbconsole
Environment variable ORACLE_SID not defined. Please define it.
提示:環境變量 ORACLE_SID 未定義,請定義。
3、設定 ORACLE_SID =ORCL (orcl是我的執行個體名,也是服務名)
C:\Documents and Settings\xcl>set oracle_sid=orcl
4、再次執行emctl start dbconsole
OC4J Configuration issue. E:\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole
_china-d9e3f7d07_orcl not found.
提示:無法找到“E:\oracle\product\10.2.0\db_1/oc4j/j2ee/OC4J_DBConsole
_china-d9e3f7d07_orcl “
注:china-d9e3f7d07 是我的計算機名
複制該目錄下的“OC4J_DBConsole_localhost_orcl”檔案夾放在同一目錄下,且把名稱改成“OC4J_DBConsole_china-d9e3f7d07_orcl”。
5、再次執行emctl start dbconsole
EM Configuration issue. E:\oracle\product\10.2.0\db_1/china-d9e3f7d07_orcl not f
ound.
提示:無法找到 “E:\oracle\product\10.2.0\db_1/china-d9e3f7d07_orcl ”
複制該目錄下的“localhost_orcl”檔案夾放在同一目錄下,且把名稱改成“china-d9e3f7d07_orcl”。
6、再次執行emctl start dbconsole
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2006 Oracle Corporation. All rights reserved.
http://localhost:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control ...OracleDBConsoleorcl
服務正在啟動 ...................................................................
................................................................................
..............................
OracleDBConsoleorcl 服務已經啟動成功。
本方法 參考資料:
http://www.51edu.com/it/2009/0330/article_16537.html
出現情況:原來正常,IP位址變了後就不能啟動,報錯誤"Agent process exited abnormally during initialization."
步驟:
1:運作cmd
2:執行emctl start dbconsole,提示“找不到環境變量ORCALE_SID”,請運作SET ORCALE_SID=***
3:再次執行emctl start dbconsole,提示“無法找到D:\oracle\product\10.2.0\db_1\e1c8cd_SKYORCL”,複制該目錄下的“localhost_skyorcl”檔案夾放在同一目錄下,且把名稱改成“e1c8cd_SKYORCL”。
4:再次執行emctl start dbconsole,提示“無法找到D:\oracle\product\10.2.0\db_1\oc4j\j2ee\OC4J_DBConsole_e1c8cd_skyorcl”,複制該目錄下的“OC4J_DBConsole_localhost_skyorcl”檔案夾放在同一目錄下,且把名稱改成“OC4J_DBConsole_e1c8cd_skyorcl”。
4:再次執行emctl start dbconsole,既可以啟動
注意:“localhost_skyorcl”與“OC4J_DBConsole_localhost_skyorcl”倆個檔案夾的我名稱與目錄由您自己安裝決定。