a

نحوه ایجاد و پیکربندی یک  linked server در SQL Server Management Studio (بخش اول)

صفحه اصلی / ABLY مقالات و مطالب مجموعه / نحوه ایجاد و پیکربندی یک  linked server در SQL Server Management Studio (بخش اول)
نحوه ایجاد و پیکربندی یک  linked server در SQL Server Management Studio (بخش اول)

نحوه ایجاد و پیکربندی یک  linked server در SQL Server Management Studio (بخش اول)

نحوه ایجاد و پیکربندی یک  linked server در SQL Server Management Studio (بخش اول)

  • آموزش برنامه نویسی | linked server  چیست؟
  • SQL Server instances چیست؟

 

what-is-linked-server.png

نحوه ایجاد و پیکربندی یک   linked server   در SQL Server Management Studio (بخش اول)

  • آموزش برنامه نویسی |linked server چیست؟
  • SQL Server instances چیست؟

با  linked server  می توان یک دستور T-SQL را در یک SQL Server instances ارائه داد که می توان داده ها را از دیگر SQL Server instances باز گرداند.

SQL Server instances چیست؟

 یک instance از موتور پایگاه داده یک کپی از sqlservr.exe است که به عنوان سیستم عامل اجرا می شود. هر instance چندین پایگاه داده سیستم و یک یا چند پایگاه داده کاربر را مدیریت می کند. هر کامپیوتر می تواند چند instance (نمونه)  از موتور پایگاه داده را اجرا کند. برنامه ها به منظور انجام کار در پایگاه داده، به نمونه instance می شوند.

تعریف ساده تر linked server 

بعبارت ساده تر، یک سرور مرتبط اجازه می دهد تا داده ها را از چندین SQL Server instances با استفاده از یک دستور T-SQL در چند پایگاه داده در نمونه های مختلف SQL پیوند دهید. با استفاده از یک سرور مرتبط برای بازیابی داده ها از چند SQL instances ، تنها چیزی که باید انجام شود اتصال به یک SQL instanceاست.

برخی مواقع شما نیاز دارید تا یک Query را بر روی یک سرور اجرا نمایید و این Query برخی اطلاعات خود را از سرور دیگری دریافت می‌نماید. در این صورت باید یک پل ارتباطی بین سرور جاری و سرور دیگر وجود داشته باشد تا بتوانید در یک Query به سرور دیگری متصل شوید و اطلاعاتی را دریافت نمایید. در حالت عادی یک Query فقط می‌تواند بر روی سرور جاری اجرا شده و اطلاعاتی را بازیابی نماید. اما اگر همین Query بخواهد به سرور دیگری متصل شود، آن سرور باید در سرور جاری بصورت Linked Server تعریف شده باشد.

دو راه برای پیکربندی سرور مرتبط در SSMS وجود دارد. یکی از راه ها استفاده از سیستم sp_addlinkedserver سیستم ذخیره شده است و دیگری با استفاده از رابط گرافیکی رابط کاربری SQL Server Management Studio (SSMS) است.

در این مقاله توضیح خواهیم داد که چگونه یک سرور مرتبط را با استفاده از یک منبع داده SQL Server پیکربندی کنیم.بنابراین با ما در مجموعه ABLY همراه باشید.

برای دیدن همه سرورهای مرتبط ایجاد شده در SSMS، پوشه Objects Explorer را انتخاب کرده و پوشه Linked Servers را باز کنید:

 

create-linked-server-in-ssms.png

برای ایجاد linked server در ssms  بر روی آن کلیک راست کنید و گزینه ی New Linked Server را انتخاب نمایید.

 

new-linked-server-in-sql.png

 

وقتی گزینه New Linked Server را انتخاب کردید، پنجره زیر برای شما باز می شود:

 

new-linked-server-in-sql.png

 

در این پنجره نام و نوع لینکد‌سرور باید تعریف شود. در قسمت type server دو گزینه وجود دارد که گزینه اول استفاده از اسکویل‌سرور  است و با انتخاب گزینه دوم می توانید از منابع دیگر استفاده کنید.

 

linked-server-type.png

 

 

 

توجه داشته باشید که اگر از گزینه اول استفاده می کنید نام لینکد‌سرور باید همان نام remote sql server باشد.

اگر که SQL Server instance نام پیش فرض باشد که خودش را به تنهایی می نویسیم. مانند: (WSERVER2012). اما اگر اسکویل‌سرور نام آن باشد که با یک اسلش آنها را از هم جدا می کنیم. مانند: (WSERVER2012\SQLEXPRESS)

سپس دکمه ok را بزنید.

 

authentication-failed.png

 

خطای بالا مربوط به احراز هویت کاربر میشود.

برای تعیین اینکه چگونه یک کاربر به صورت مثال WSERVER2012 \ SQLEXPRESS احراز هویت می کند، در همان پنجره قبل در گوشه سمت چپ بالای کادر محاوره ای ، گزینه Security را انتخاب کنید:

 

security-in-ssms.png

 

در این قسمت راه های مختلف برای احراز هویت وجود دارد:

در پایین Local server login to remote server login mappings شما می توانید دو نوع لاگین داشته باشید.

  • Local login و  Remote  login

Local Login

در قسمت لوکال لاگین، تمام ورودی های محلی ذکر شده است. ورود محلی می تواند SQL Server Authentication login محلی باشد:

 

local-login.png

 

یا Windows Authentication login

 

windows-authentication-login.png

 

حال بر روی ok کلیک کنید. با خطای زیر مواجه می شوید:

 

login-mappings-error.png

 

این اتفاق به این دلیل است که Impersonate  را چک نکرده اید!

Impersonate

Impersonate زمانی چک می شود که اعتبار ورودی محلی را به سرور مرتبط متصل کند. برای تایید هویت SQL Server، ورود به سیستم باید با اعتبار دقیق بر روی سرور مرتبط باشد، در غیر این صورت هنگامی که به سرور با SQL Server Authentication متصل می شود، لیست پایگاه های داده زیر پوشه کاتالوگ ممکن است شبیه به این باشد:

 

cheack-impersonate.png

 

برای ورود به ویندوز، ورود باید یک ورود معتبر در سرور مرتبط باشد. برای استفاده از جعل هویت، مجوز بین سرور محلی و سرور مرتبط باید تنظیم شود.

اجازه دهید یک لینکد‌سرور با ورودی local Windows login ایجاد کنیم سپس Impersonate را چک کنید و ok کنید

 

impersonate-checkbox.png

 

در پوشه زیر تمام پایگاه های داده که در لینکد‌سرور شده قرار دارند ذکر شده است:

 

datatbases-in-linked-server.png

 

Remote User

گزینه ی کاربر از راه دور اساسا، اجازه می دهد تا ورودی های محلی به یک سرور راه دور به عنوان یک ورودی متفاوت که باید در یک سرور از راه دور وجود داشته باشد، برقرار شود.

Remote Password

رمز عبور کاربر راه دور را مشخص کنید.

از لیست کشویی local login، یک ورودی محلی را انتخاب کنید که باید به یک ورودی از راه دور دهید. در قسمت کاربر Remote User، نام کاربری Remote User که در سرور راه دور وجود دارد وارد کنید و رمز عبور Remote Password را نیز درج کنید، سپس دکمه OK را فشار دهید:

 

remote-login.png

 

حالا، وقتی که از طریق SQL Server Authentication به local login متصل شدید (با  Miki یا  Zivko credentialsدر پوشه های زیر) می توانید تمام دیتا‌بیس ها را بر روی remote server ببینید:

 

databases-in-remote-login.png

 

اگر نمیخواهید که از روش بالا استفاده کنید در زیر 4 گزینه دیگر وجود دارد که می توانید از آنها برای لاگین شدن استفاده نمایید:

 

four-option-for-login.png

(این 4 گزینه و ادامه این مقاله را در بخش دوم توضیح خواهیم داد)

در این قسمت سعی کردیم که نحوه ایجاد linked server و طریقه ی لاگین شدن را به شما عزیزان یاد دهیم. برای اطلاع از ادامه این مطلب با ما در بخش دوم نیز همراه باشید.

نحوه ایجاد و پیکربندی یک   linked server   در SQL Server Management Studio (بخش اول)

 

"با تشکر، منتشر شده در سایت ABLY"

 

 

 

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس