使用TWO_TASK或者LOCAL環境變數?
前一陣子,我遇到一個問題:
rman target /
連結如下:
http://www.itpub.net/thread-1167136-1-1.html
執行錯誤,必須輸入rman target sys/xxx@yyy
我記得我以前學習安裝oracle 8i的時候,遇到的一個問題,就是ora-12560錯誤,就是在透過遠端桌面登入伺服器執行無法執行sqlplus user/passwd,必須加入sqlplus user/passwd@net_name.
關於這個問題,如果google,在許多地方都可以看到這個問題的解決ora-12560,實際上當時我測試過,許多是無效的.如果使用遠端桌面,至少在當時我沒有解決這個問題的.今天測試終於知道答案,連結如下:
http://davidyu720.itpub.net/post/31716/470434
ORACLE8i本地登入錯誤ORA-12560: TNS: 協議介面卡錯誤
Windows2003上的ORACLE817,在伺服器上不使用連線串登入,直接用SQLPLUS或SVRMGRL本地登入,卻報錯誤ORA-12560: TNS: 協議介面卡錯誤。
找到原因:這是一臺終端伺服器,在遠處終端中登入OS--再登入資料庫時,會提示ORA-12560錯誤。直接在控制檯中登入OS--再登入資料庫時就正常。
解決辦法:無--也許這是8i自己的問題吧。同樣的Windows環境下,9i就沒有問題--因此就懶得找解決辦法了。
我透過vnc登入伺服器,確實可以在服務端執行sqlplus user/passwd.而透過遠端桌面確實不行.
我記得當時在新聞組提問,對方給出的解決就是定義LOCAL環境變數,當時一試驗真的可以,也沒有再去想這個問題.
這樣在執行rman出錯的時候,我自己也習慣的採用定義LOCAL變數的方式,至於這個變數的值是什麼我自己也不清楚,我一直以為是oracle_sid. 在sqlplus時發現我發現連線的資料庫是遠端的資料庫,因為我本機的10g,而遠端的資料庫是8i.
當時事情太多,心裡僅僅想著快點解決rman target /的問題.
今天看書,才發現P428頁:
有如下論述:
Using the TWO_TASK Environment Variable
You can bypass the use of an Oracle Net name by setting the TWO_TASK environment variable (on UNIX/Linux) or the LOCAL environment variable (on Windows).
The TWO_TASK environment variable specifies the connect string for connecting to a remote machine. SQL*Net will check the value of the TWO_TASK environment variable and automatically
add it to your connect string, as shown in the following example:
$ export TWO_TASK=mydb
Once you set the TWO_TASK environment variable, you can connect to the mydb database in the
following way:
$ sqlplus scott/tiger
Note that you didn’t have to use the specification sqlplus scott/tiger@mydb, since you’re using the TWO_TASK variable.On a Windows server, the following is the equivalent for setting the TWO_TASK environment variable:
$ SET LOCAL=
$ sqlplus scott/tiger
按照這個的介紹,如果我定義TWO_TASK(linux)或者LOCAL(windows)等於某個net_name,就可以實現在輸入sqlplus 不需要在輸入@net_name引數(當然服務端監聽一定要起來的情況修下).測試一下,果然可以!
rman target /
連結如下:
http://www.itpub.net/thread-1167136-1-1.html
執行錯誤,必須輸入rman target sys/xxx@yyy
我記得我以前學習安裝oracle 8i的時候,遇到的一個問題,就是ora-12560錯誤,就是在透過遠端桌面登入伺服器執行無法執行sqlplus user/passwd,必須加入sqlplus user/passwd@net_name.
關於這個問題,如果google,在許多地方都可以看到這個問題的解決ora-12560,實際上當時我測試過,許多是無效的.如果使用遠端桌面,至少在當時我沒有解決這個問題的.今天測試終於知道答案,連結如下:
http://davidyu720.itpub.net/post/31716/470434
ORACLE8i本地登入錯誤ORA-12560: TNS: 協議介面卡錯誤
Windows2003上的ORACLE817,在伺服器上不使用連線串登入,直接用SQLPLUS或SVRMGRL本地登入,卻報錯誤ORA-12560: TNS: 協議介面卡錯誤。
找到原因:這是一臺終端伺服器,在遠處終端中登入OS--再登入資料庫時,會提示ORA-12560錯誤。直接在控制檯中登入OS--再登入資料庫時就正常。
解決辦法:無--也許這是8i自己的問題吧。同樣的Windows環境下,9i就沒有問題--因此就懶得找解決辦法了。
我透過vnc登入伺服器,確實可以在服務端執行sqlplus user/passwd.而透過遠端桌面確實不行.
我記得當時在新聞組提問,對方給出的解決就是定義LOCAL環境變數,當時一試驗真的可以,也沒有再去想這個問題.
這樣在執行rman出錯的時候,我自己也習慣的採用定義LOCAL變數的方式,至於這個變數的值是什麼我自己也不清楚,我一直以為是oracle_sid. 在sqlplus時發現我發現連線的資料庫是遠端的資料庫,因為我本機的10g,而遠端的資料庫是8i.
當時事情太多,心裡僅僅想著快點解決rman target /的問題.
今天看書
有如下論述:
Using the TWO_TASK Environment Variable
You can bypass the use of an Oracle Net name by setting the TWO_TASK environment variable (on UNIX/Linux) or the LOCAL environment variable (on Windows).
The TWO_TASK environment variable specifies the connect string for connecting to a remote machine. SQL*Net will check the value of the TWO_TASK environment variable and automatically
add it to your connect string, as shown in the following example:
$ export TWO_TASK=mydb
Once you set the TWO_TASK environment variable, you can connect to the mydb database in the
following way:
$ sqlplus scott/tiger
Note that you didn’t have to use the specification sqlplus scott/tiger@mydb, since you’re using the TWO_TASK variable.On a Windows server, the following is the equivalent for setting the TWO_TASK environment variable:
$ SET LOCAL=
$ sqlplus scott/tiger
按照這個的介紹,如果我定義TWO_TASK(linux)或者LOCAL(windows)等於某個net_name,就可以實現在輸入sqlplus 不需要在輸入@net_name引數(當然服務端監聽一定要起來的情況修下).測試一下,果然可以!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-607862/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用TWO_TASK或者LOCAL環境變數變數
- TWO_TASK環境變數變數
- ORACLE TWO_TASK環境變數的使用Oracle變數
- 【Oracle】-【TWO_TASK】-TWO_TASK環境變數的作用Oracle變數
- 關於two_task,local,oracle_sid三個環境變數說明Oracle變數
- 環境變數變數
- OpenMP 環境變數使用總結變數
- Linux 新增環境變數和刪除環境變數Linux變數
- 簡述SHELL全域性環境變數與局變環境變數變數
- Java 環境變數Java變數
- jdk環境變數JDK變數
- DOS環境變數變數
- env 環境變數變數
- 環境變數path變數
- Java環境變數Java變數
- ORACLE 環境變數Oracle變數
- postman環境變數Postman變數
- 配置環境變數變數
- Rust 使用 dotenv 來設定環境變數Rust變數
- awk中使用shell的環境變數(轉)變數
- Nuxt.js 環境變數配置與使用UXJS變數
- ubuntu JDK 環境變數UbuntuJDK變數
- 配置JDK環境變數JDK變數
- 環境變數詳解變數
- Flume 配置環境變數變數
- Shell配置環境變數變數
- Java環境變數新增Java變數
- 【Linux】環境變數!!!Linux變數
- Kaldi配置環境變數變數
- MySQL 環境變數配置MySql變數
- unix下環境變數 .變數
- Linux 環境變數Linux變數
- oracle 環境變數 redhatOracle變數Redhat
- 設定環境變數變數
- SQL*PLUS 環境變數SQL變數
- jdk環境變數配置JDK變數
- JDK配置環境變數JDK變數
- java環境變數配置Java變數