天天看點

Oracle監聽器—靜态注冊

注冊就是将資料庫作為一個服務注冊到監聽程式。用戶端不需要知道資料庫名和執行個體名,隻需要知道該資料庫對外提供的服務名就可以申請連接配接到資料庫。這個服務名可能與執行個體名一樣,也有可能不一樣。

注冊分:

1. 靜态注冊

2. 動态注冊

靜态注冊

為了靜态注冊一個執行個體,我們需要在 listener.ora中添加相應監聽器條目。

這裡我們建立了兩個LISTENER(LISTENER — 預設的,LISTENER1 - 自己建立的),服務名(全局資料庫名)分别為test,test1。

下面是我的listener.ora檔案的内容。位置: C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\listener.ora

LISTENER =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = Tough)(PORT = 1521))

  )

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = test)

      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)

      (SID_NAME = ora11g)

    )

  )  

LISTENER1 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = Tough)(PORT = 1522))

  )

SID_LIST_LISTENER1 =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = test1)

      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)

      (SID_NAME = ora11g)

    )

  )

C:\>lsnrctl

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-4月 -2014 12:56:43

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

歡迎來到LSNRCTL, 請鍵入"help"以獲得資訊。

//可以檢視lsnrctl下可以執行的指令,常用到的是start, stop, status, reload, services

LSNRCTL> help

以下操作可用

星号 (*) 表示修改符或擴充指令:

start               stop                status

services            version             reload

save_config         trace               change_password

quit                exit                set*

show*

//如果隻輸入start,則啟動預設監聽器 LISTENER

LSNRCTL> start LISTENER

啟動tnslsnr: 請稍候...

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production

系統參數檔案為c:\oracle\product\10.2.0\db_1\network\admin\listener.ora

寫入c:\oracle\product\10.2.0\db_1\network\log\listener.log的日志資訊

監聽: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1521)))

正在連接配接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1521)))

LISTENER 的 STATUS

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

别名                      LISTENER

版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production

啟動日期                  07-4月 -2014 12:56:49

正常運作時間              0 天 0 小時 0 分 1 秒

跟蹤級别                  off

安全性                    ON: Local OS Authentication

SNMP                      OFF

監聽程式參數檔案          c:\oracle\product\10.2.0\db_1\network\admin\listener.ora

監聽程式日志檔案          c:\oracle\product\10.2.0\db_1\network\log\listener.log

監聽端點概要...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1521)))

服務摘要..

服務 "test" 包含 1 個例程。

  例程 "ora11g", 狀态 UNKNOWN, 包含此服務的 1 個處理程式...

指令執行成功

//如果隻輸入status,則檢視預設監聽器 LISTENER狀态

LSNRCTL> status LISTENER

正在連接配接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1521)))

LISTENER 的 STATUS

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

别名                      LISTENER

版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production

啟動日期                  07-4月 -2014 12:56:49

正常運作時間              0 天 0 小時 1 分 9 秒

跟蹤級别                  off

安全性                    ON: Local OS Authentication

SNMP                      OFF

監聽程式參數檔案          c:\oracle\product\10.2.0\db_1\network\admin\listener.ora

監聽程式日志檔案          c:\oracle\product\10.2.0\db_1\network\log\listener.log

監聽端點概要...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1521)))

服務摘要..

服務 "ora11g" 包含 1 個例程。

  例程 "ora11g", 狀态 READY, 包含此服務的 1 個處理程式...

服務 "ora11gXDB" 包含 1 個例程。

  例程 "ora11g", 狀态 READY, 包含此服務的 1 個處理程式...

服務 "ora11g_XPT" 包含 1 個例程。

  例程 "ora11g", 狀态 READY, 包含此服務的 1 個處理程式...

服務 "test" 包含 1 個例程。

  例程 "ora11g", 狀态 UNKNOWN, 包含此服務的 1 個處理程式...

指令執行成功

藍色部分是動态注冊的監聽器的狀态。紅色部分是我們靜态注冊的監聽器的狀态。

//若不是啟動預設監聽器 LISTENER,則需要指定啟動的監聽器

LSNRCTL> start LISTENER1

啟動tnslsnr: 請稍候...

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production

系統參數檔案為c:\oracle\product\10.2.0\db_1\network\admin\listener.ora

寫入c:\oracle\product\10.2.0\db_1\network\log\listener1.log的日志資訊

監聽: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1522)))

正在連接配接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1522)))

LISTENER 的 STATUS

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

别名                      LISTENER1

版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production

啟動日期                  07-4月 -2014 12:57:07

正常運作時間              0 天 0 小時 0 分 1 秒

跟蹤級别                  off

安全性                    ON: Local OS Authentication

SNMP                      OFF

監聽程式參數檔案          c:\oracle\product\10.2.0\db_1\network\admin\listener.ora

監聽程式日志檔案          c:\oracle\product\10.2.0\db_1\network\log\listener1.log

監聽端點概要...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1522)))

服務摘要..

服務 "test1" 包含 1 個例程。

  例程 "ora11g", 狀态 UNKNOWN, 包含此服務的 1 個處理程式...

指令執行成功

LSNRCTL> status LISTENER1

正在連接配接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Tough)(PORT=1522)))

LISTENER 的 STATUS

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

别名                      LISTENER1

版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production

啟動日期                  07-4月 -2014 12:57:07

正常運作時間              0 天 0 小時 1 分 13 秒

跟蹤級别                  off

安全性                    ON: Local OS Authentication

SNMP                      OFF

監聽程式參數檔案          c:\oracle\product\10.2.0\db_1\network\admin\listener.ora

監聽程式日志檔案          c:\oracle\product\10.2.0\db_1\network\log\listener1.log

監聽端點概要...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Tough)(PORT=1522)))

服務摘要..

服務 "test1" 包含 1 個例程。

  例程 "ora11g", 狀态 UNKNOWN, 包含此服務的 1 個處理程式...

指令執行成功

建立好監聽器後,我們還需要在用戶端機器上的tnsnames.ora設定相關條目。位置:C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora

A =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = tough)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = test)

    )

  )

A1 =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = tough)(PORT = 1522))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = test1)

    )

  )

測試靜态注冊的監聽器:

C:\>sqlplus /@a as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 4月 7 13:11:37 2014

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

連接配接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

C:\>sqlplus /@a1 as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 4月 7 13:11:54 2014

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

連接配接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

連接配接成功!

轉載于:https://www.cnblogs.com/toughhou/p/3778818.html