هاست ویندوز پلسک
موضوعات داغ

نحوه ارتباط با پایگاه داده MSSQL در سرور ویندوزی

یکی از تفاوت‌های اصلی میان هاست‌های لینوکسی و ویندوزی، نوع پایگاه داده مورد استفاده در آن‌هاست. در حالی که سرورهای لینوکسی معمولاً میزبان MySQL هستند، سرورهای ویندوزی بهترین عملکرد را با Microsoft SQL Server (MSSQL) و فریم‌ورک‌های .NET ارائه می‌دهند.

اگر توسعه‌دهنده دات‌نت هستید و یا از هاست ویندوز تلاش‌نت استفاده می کنید، احتمالاً چالش‌هایی در خصوص نحوه اتصال به دیتابیس، سیاست‌های امنیتی فایروال و نحوه اعمال تغییرات (Migration) در محیط واقعی سرور داشته‌اید. در این مقاله، تمام اطلاعات فنی و کاربردی مورد نیاز برای کار با MSSQL در سرویس‌های میزبانی ویندوز تلاش‌نت را بررسی می‌کنیم.


مشخصات سرور و پورت‌های اتصال

در سرورهای تلاش‌نت، مشخصات سرور و پورت ها به شرح زیر است:

نسخه  SQL Server

آدرس سرور  (Server Name)

پورت

فرمت اتصال (Server,Port)

2022

win101.talashnet.com

localhost

1437

Server: win101.talashnet.com,1437

Server: .\MSSQLSERVER2022

2016

win101.talashnet.com

localhost

1435

Server: win101.talashnet.com,1435

Server: .\MSSQLSERVER2016

2014

win101.talashnet.com

localhost

1433

Server: win101.talashnet.com,1433

Server: .\MSSQLSERVER2014

 

سیاست‌های امنیتی و دسترسی به دیتابیس

در محیط‌های اشتراکی و حرفه‌ای، امنیت اولویت اول است. به همین دلیل، برخلاف محیط Localhost سیستم شخصی شما، پورت‌های دیتابیس در سرور به صورت پیش‌فرض بر روی اینترنت باز نیستند.

  • دسترسی پیش‌فرض (Local)

ارتباط بین وب‌سایت شما و دیتابیس در داخل سرور برقرار است و نیازی به باز بودن پورت روی اینترنت نیست.

  • دسترسی از راه دور (Remote Connection)

اگر نیاز دارید از طریق سیستم خودتان با ابزارهایی مثل SSMS یا (Visual Studio) مستقیماً به دیتابیس سرور متصل شوید، باید درخواست تان را به همراه ip استاتیک خود، از طریق تیکت به پشتیبانی تلاش نت ارسال کنید. تا به صورت موقت در فایروال سرور Whitelist شود.

کاربردهای Microsoft SQL Server در توسعه و مدیریت پایگاه داده
مشاهده

پس از اینکه دسترسی IP شما در فایروال سرور اضافه شد، برای اتصال مستقیم باید از آدرس سرور و پورت اختصاصی نسخه SQL Server خود استفاده کنید. 

مدیریت آنلاین دیتابیس (Web Database Management)

گاهی اوقات نیاز دارید بدون استفاده از نرم‌افزارهای جانبی (مانند SSMS) و به صورت مستقیم از طریق مرورگر، بر روی دیتابیس خود مدیریت کامل داشته باشید؛ عملیاتی نظیر اجرای کوئری‌ها، مشاهده جداول یا تغییر در رکوردها.

در سرورهای ویندوزی تلاش‌نت، این امکان فراهم شده است که بتوانید از طریق ابزار Web Database Management (نسخه تحت وب مدیریت پایگاه داده)، در هر لحظه و بدون محدودیت فایروال، تنظیمات دیتابیس خود را مدیریت کنید.

  • نحوه دریافت دسترسی: در صورتی که به این قابلیت نیاز دارید، کافیست درخواست خود را از طریق تیکت پشتیبانی ارسال نمایید تا دسترسی‌های لازم برای شما فعال شده و اطلاعات ورود به این پنل اختصاصی ارسال گردد.

Web-Database-Management

تنظیم Connection String در پروژه‌های .NET

برای اتصال اپلیکیشن خود به دیتابیس، باید رشته اتصال (Connection String) را در فایل (appsettings.json) در .NET Core یا  web.config  در (.NET Framework) تنظیم کنید.

یک نمونه استاندارد برای اتصال به SQL Server 2022 به صورت زیر است:

"ConnectionStrings":{

  "testDbConnection": "Server=.\\MSSQLSERVER2022;Database=YOUR_DB_NAME;User ID=YOUR_DB_USER;Password=YOUR_PASSWORD;MultipleActiveResultSets=True;TrustServerCertificate=True"

}

نکات مهم:

  • در بخش Server، استفاده از .\\ اشاره به سرور لوکال دارد و نام Instance مثلاً (MSSQLSERVER2022) باید دقیقاً ذکر شود.
  • گزینه TrustServerCertificate=True برای جلوگیری از خطاهای مربوط به SSL در برخی نسخه‌های جدید توصیه می‌شود.

 

چالش Migration و راهکار پیشنهادی

یکی از دغدغه‌های اصلی برنامه‎‌نویسان، به‌روزرسانی ساختار دیتابیس (Schema) پس از آپدیت کد است. معمولاً در محیط توسعه از دستور Update-Database در کنسول ویژوال استودیو استفاده می‌شود، اما این روش در سرور واقعی به دلیل بسته بودن پورت‌ها همیشه در دسترس نیست.

رفع خطای 500 Internal Server Error در هاست ویندوز
مشاهده

راهکار حرفه‌ای:  به جای وابستگی به اتصال مستقیم ویژوال استودیو به سرور، سیستم خود را طوری طراحی کنید که عملیات Migration با فراخوانی یک URL خاص یا هنگام استارت برنامه اجرا شود.

برای این کار در .NET 5 و نسخه‌های بالاتر، می‌توانید متدی مشابه زیر در کدهای خود داشته باشید:

public async Task AddMigrationInstall()  {  // این دستور تمام مایگریشن‌های اعمال نشده را روی دیتابیس اجرا می‌کند    
await _context.Database.MigrateAsync(); }

با این روش، کافیست پس از آپلود فایل‌های جدید پروژه، یک‌بار متد مربوطه را (مثلاً از طریق یک کنترلر مخفی یا ادمین پنل) صدا بزنید تا دیتابیس شما به‌روز شود.


جمع بندی

مدیریت یک پروژه .NET روی هاست ویندوز نیازمند شناخت دقیق نحوه اتصال به MSSQL و دسترسی‌های IIS است. با رعایت نکات امنیتی ذکر شده و استفاده از امکاناتی نظیر “نسخه وب IIS” و “اجرای Migration از طریق کد”، می‌توانید پروژه‌ی خود را به صورت حرفه‌ای، امن و پایدار مدیریت کنید.

 

امیدواریم این مطلب برای شما کارآمد باشد.

تیم پشتیبانی هاست، دامنه و سرور تلاش نت

4.4/5 - (13 امتیاز)
دکمه بازگشت به بالا