خطای «Cannot connect to [نام سرور]» در SSMS، برخلاف خطای Login Failed، معمولاً به معنای این است که SSMS اصلاً نتوانسته به موتور SQL Server وصل شود — یعنی مشکل قبل از مرحلهی احراز هویت رخ میدهد. علتهای آن معمولاً یکی از این چهار مورد است: سرویس اجرا نیست، نام سرور اشتباه است، اتصال از راه دور غیرفعال است، یا فایروال جلوی پورت را گرفته.
A network-related or instance-specific error occurred است، راهنمای اختصاصی رفع این خطای شبکهای را هم ببین — همان ریشه دارد اما جزئیات بیشتری پوشش میدهد.سادهترین و رایجترین علت است. سرویس را از SQL Server Configuration Manager بررسی کن:
اگر وضعیت Stopped بود، روی سرویس راستکلیک کن و Start را بزن. اگر سرویس مدام خاموش میشود، Event Viewer ویندوز را برای دلیل توقف بررسی کن.
یکی از رایجترین اشتباهات، فراموشکردن نام Instance در فیلد Server name است. اگر SQL Server را با یک نمونهی نامگذاریشده (Named Instance) نصب کرده باشی (مثلاً نسخهی Express)، باید از فرمت زیر استفاده کنی:
| حالت | مقدار فیلد Server name |
|---|---|
| Default Instance روی سیستم محلی | localhost یا . یا (local) |
| Named Instance محلی (مثلاً Express) | localhost\SQLEXPRESS |
| سرور روی شبکه با پورت پیشفرض | 192.168.1.10 یا نام کامپیوتر |
| سرور روی شبکه با پورت سفارشی | 192.168.1.10,1433 |
اگر میخواهی از یک کامپیوتر دیگر به SQL Server وصل شوی، باید اتصال از راه دور فعال باشد. در SSMS روی سرور راستکلیک کن → Properties → Connections و مطمئن شو تیک Allow remote connections to this server فعال است.
در SQL Server Configuration Manager → SQL Server Network Configuration → Protocols، پروتکل TCP/IP باید Enabled باشد. بعد از فعالکردنش، سرویس SQL Server را ریاستارت کن.
اگر همهی موارد بالا درست بودند اما همچنان از سیستم دیگری نمیتوانی وصل شوی، احتمالاً فایروال ویندوز پورت SQL Server (پیشفرض 1433) را میبندد. یک قانون Inbound برای این پورت در Windows Defender Firewall اضافه کن، یا موقتاً فایروال را برای تست خاموش کن.
| بررسی کن | ابزار |
|---|---|
| سرویس SQL Server در حال اجراست؟ | SQL Server Configuration Manager |
| نام سرور/Instance درست وارد شده؟ | فیلد Server name در SSMS |
| Remote Connections فعال است؟ | Server Properties → Connections |
| پروتکل TCP/IP فعال است؟ | SQL Server Network Configuration |
| فایروال پورت 1433 را باز گذاشته؟ | Windows Defender Firewall |
خطای Cannot Connect تقریباً همیشه یک مشکل شبکه یا پیکربندی است، نه مشکل رمز عبور. با بررسی بهترتیب سرویس، نام سرور، تنظیمات Remote Connection، پروتکل TCP/IP و فایروال، در اکثر موارد مشکل رفع میشود. اگر بعد از این مراحل همچنان با پیام A network-related or instance-specific error occurred روبهرو هستی، راهنمای اختصاصی آن را ببین: رفع خطای A network-related or instance-specific error occurred.
دورهی رایگان SQLFarsi را با درس معماری SQL Server شروع کن.
شروع یادگیری