Local Naming (או בשמו הנפוץ יותר Tnsnames) ו EZconnect הן שתי טכניקות נפוצות המאפשרות לנו להתחבר אל Database מרוחק.  בפוסט זה נקנה מספר מונחי יסוד ונסביר כיצד שתי טכניקות אלה עובדות.

 

Connect Identifier, Naming Methods and Connect Descriptor

ראשית נתחיל בהסבר מספר מונחי יסוד. כאשר אנו מעוניינים להתחבר ל Database מרוחק אנו נקליד את פעולת ההתחברות הבאה

conn שם משתמש/סיסמא@connect_identifier 

לדוגמא :

conn ram/kedem@orcl

ה Connect Identifier הוא שם ה Database אליו אנו רוצים להתחבר.
כפי הדוגמא המוצגת לעיל, כאשר אנו מעוניינים להתחבר ל
Database ששמו –  orcl, אנו נקליד בconnect identifier  את השם orcl.
כעת אורקל צריך לתרגם את משמעות ה
Connect Identifier למושגים טכניים : שם המכונה, הפורט, פרוטוקול ההתקשרות, שם ה Instance ותצורת חיבור (Dedicated או Shared).
באמצעות אותם מושגים טכניים – אשר שמם המשותף נקרא
Connect Descriptor, ההתחברות מתבצעת.
הטכניקה באמצעותה אנו מבצעים את התרגום מה
Connect Identifier ל Connect Descriptor נקראת Naming Method.

Tnsnames

טכניקה זו נקראת על שם קובץ אשר נקרא –  tnsnames.ora. קובץ זה יושב תחת תיקיית –$oracle_home/network/admin בצד ה Client.

קובץ זה מבצע את הפענוח בין ה Connect Identifier ל Connect Descriptor.

כאשר ה Client יריץ פקודת התחברות, קובץ ה TNS יבצע את התרגום  ויאפשר לו להתחבר.

SQL*Plus: Release 11.2.0.1.0 Production on Sat Dec 8 10:30:59 2012

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

> CONN ram/kedem@orcl

Connected.

RAM >

לעומת זאת, כאשר תורץ פקודת התחברות עם Connect Identifier לא תקין, קובץ ה TNS לא יזהה אותו, התרגום לא יתבצע, ופעולת ההתחברות תכשל.

SQL*Plus: Release 11.2.0.1.0 Production on Sat Dec 8 10:34:41 2012

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

> CONN ram/kedem@moshe_oofnick

ERROR:

ORA-12154: TNS:could not resolve the connect identifier specified

אם ברצוננו להתחבר עם Connect Identifier שונה, כל שעלינו לעשות הוא לערוך את קובץ ה TNS (באמצעות כל עורך טקסט) ולהוסיף Connect Identifier חדש.

SQL*Plus: Release 11.2.0.1.0 Production on Sat Dec 8 11:02:20 2012

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

>CONN ram/kedem@moshe_oofnick

Connected.


RAM >SELECT instance_name

  2  FROM v$instance ;

INSTANCE_NAME

----------------
orcl

 

EZconnect – מסלול עוקף TNS

החל מגרסת 10g ניתן לבצע התחברות באמצעות פקודה ישירה אשר מבטלת את הצורך בקובץ ה TNS, בפקודת התחברות זו אנו מספקים את כל הפרמטרים הנחוצים לשם ההתחברות ובכך מדלגים על הצורך בתרגום.

CONN username/password@hostname:port/service_name

לדוגמא :

> CONN ram/kedem@localhost:1521/orcl.168.56.128

Connected.

RAM >