نکاتی که بایستی در مورد زبان برنامه نویسی بدانید

خطاهای رایج در ارتباط با sql server

Sql مخفف structured query language و یک زبان استاندارد برای دسترسی و نگهداری دیتابیس می باشد. همچنین این زبان برنامه نویسی جزء استاندارهای ANSI است. با وجود استاندارد بودن Sql نسخه های متفاوتی از آن وجود دارد. خطاهای مختلف هنگام اتصال به دیتابیس جز مواردی هستند که اغلب اوقات برنامه نویسان را دچار مشکل می کنند. در ادامه مقاله رایج ترین مشکل دربرقراری ارتباط با sql server و رفع ارور sql server  توضیح داده شده اند.

نحوه ی رفع مشکل اتصال به سرور در sql server

نحوه ی رفع مشکل در کانکت شدن sql server 2017 بدین صورت است که:

  • ممکن است Sql هنوز اجرا نشده و یا به طور صحیح عمل نمی کند.
  • مسیر شبکه بین سرویس گیرنده (کامپیوتر شما) و سرویس دهنده (سرور) شکسته و یا موقتا کار نمی کند.
  • اکانت کاربری استفاده شده جهت اتصال به دیتابیس دارای مجوزهای دسترسی نمی باشد.

 رفع ارور sql serverبرای رفع مشکل اتصال به سرور در sql server در مورد اول SQL query analyzer را در سرور اجرا کنید. اگر با خطای connection times out  مواجه شدید، بدین معنی است که sql server دچار مشکل شده و یا در حدی مشغول است که توانایی پردازش request ها را ندارد. برای تشخیص busy بودن آن کافی است با فشردن سه کلید Alt+Ctrl+Del اقدام به باز کردن taskmanager نموده و میزان cpu usage را مشاهده نمایید.

برای رفع خطای sql server در مورد دوم از منوی start گزینه run و سپس فرمان CMD را اجرا نمایید. در محیط command prompt دستور زیر را اجرا نمایید :

C:> telnet [severname] 1433

تا مطمئن شوید که Sql سرور روی پورت TCP ، شنود می کند. اگر ارتباط با پورت با موفقیت انجام شد مکان نما شروع به چشمک زدن کرده و صفحه command prompt پاک می شود در غیر اینصورت خطایی نمایش داده خواهد شد.عمده دلیل بسته بودن پورت مشکلات DNS می باشد که در این رابطه می توانید با مدیر شبکه مشاوره نمایید. همچنین تنظیمات Firewall هم می تواند باعث بسته شدن پورت TCP شده باشد.

برخی اوقات به دلیل مشکلات indexing بر روی دیتابیس و با توجه به اینکه دیتابیس آنلاین بوده و کاربران زیادی از آن استفاده نموده ، با ارسال queries های فراوان بر کارایی آن تاثیر می گذارند و سرور توانایی مدیریت درخواست ها را نخواهد داشت. راه حل مناسب در این حالت pause کردن sql است تا بتواند قبل از دریافت هرگونه درخواست جدیدی کارهای قبلی را به اتمام برساند.لازم است بدانید  connectionها و سایر فرآیندها به کار خود ادامه خواهند داد اما Sql server هیچ گونه connection جدیدی را پذیرش نمی کند. با pause کردن sql میزان مصرف cpu کاهش پیدا می کند.

بعد از اتصال به سرور مجددا sql را در حالت pause قرار دهید در این حالت sql آماده ی دریافت کار جدید خواهد بود. این کار به رفع ارور sql server کمک می کند.

برای آموزش دستورات cmd مقاله ما را بخوانید.

راه کارهای جلوگیری و رفع ارور sql server

برای رفع مشکل اتصال به سرور در sql server استفاده از آخرین نسخه ی sql server ، یکسان بودن پروتکل شبکه بین کامپیوتر شما و سرور مهم است. مثلا اگر client از پروتکل ipx/spx برای اتصال به دیتابیس استفاده می کند این پروتکل بر روی سرور هم نصب شده باشد در غیر اینصورت قادر به برقراری ارتباط نخواهد بود و مشکل دربرقراری ارتباط با sql server وجود دارد و علت عدم برقراری ارتباط با سرور عدم نصب پروتکل ipx/spx خواهد بود.

خطاهای رایج هنگام اتصال به دیتابیس

۱- خطای Specified SQL Server not found 

 رفع ارور sql server

برای رفع ارور sql server، مطمئن شوید نامی را که در قسمت sql servername وارد کرده اید درست بوده و سرویس sqlserver که به آن متصل شده اید در حالت start قرار داشته باشد و همچنین بررسی کنید که client و server از net –library یکسانی استفاده می کنند.

۲- عدم لاگین با سایر کاربران دیتابیس

مطمئن شوید که گزینه ی single user در حالت Off قرار داشته باشد. اگر این گزینه فعال باشد فقط یک کاربر می تواند به دیتابیس  لاگین کند.

همچنین بررسی کنید کاربری که از طریق آن لاگین کرده اید در دیتابیس موجود و مجوزهای لازم را داشته باشد.

۳- فعال بودن گزینه ی  DBO use only 

اگر خطایی مبنی بر اینکه تنها مالک دیتابیس می تواند به آن دسترسی داشته باشد را دریافت کردید بدین معنی است که گزینه ی ‘DBO use only’ در وضعیت فعال قرار دارد بنابراین اگر می خواهید سایر کاربران هم به دیتابیس دسترسی داشته باشند آن را درحالت Off قرار دهید.

۴- مشکل وصل نشدن به دیتابیس در sql، خطای Assertion failed

 رفع ارور sql server

اگر هنگام اتصال به sql server از طریق tcp /ip خطایی مانند Assertion failed را دریافت کردید اقدام به نصب Client for Microsoft Networks بر روی سرور نمایید.

۵- نمایش خطای Specified SQL Server not found در زمان اجرای برنامه

 این پیام هنگام لودشدن فایل  mdf سنگین ظاهر می شود. در این حالت قبل از اجرای کامل sql server، سرویس  connection ایجاد شده و باعث بروز خطا می شود.

 اگر هنگام اتصال به sql server  از طریق QUERY ANALYZER با این خطا مواجه شدید در زمانهای دیگری اقدام به اتصال به sql  نموده و یا SQL SERVER را از طریق Service manager دوباره اجرا کنید.

 ۶- خطای ۱۷۸۲۴

اگر خطای ۱۷۸۲۴ را دریافت کردید اتصلات شبکه را بررسی نموده و یا گزینه ی ‘priority boost’ در sql server را به مقدار پیش فرض آن تغییر دهید.

۷- خطا در خواندن از پایگاه داده – خطای Server Error in ‘/’ Application 

 رفع ارور sql server

خطا در برقراری ارتباط با پایگاه‌داده معمولا هنگامی رخ می دهد که شما connection string مناسب رو انتخاب نکرده باشید. برای حل مشکل server error in ‘/’ application، سایر فیلدهای آن را بررسی و از صحیح بودن آدرس دیتابیس سرور ، نام کاربری و کلمه ی عبور و نام دیتابیس اطمینان حاصل فرمایید. برای آشنایی با نحوه نوشتن connection string در ASP.Net بهتر است مقاله چگونگی ارتباط با دیتابیس را مطالعه کنید.

مدیر بلاگ

مشخصات مدیر

‫۲۵ دیدگاه ها

  1. سلام
    ببخشید من sql 2016 رو نصب کردم بعد وارد ویژوال مانجمنت استدیو میشم ولی اون صفحه کانکت بالا نمیاد خواهشا خواهشا زود جواب بدین؟

  2. سلام خسته نباشید
    ببخشید من وقتی میخوام ویژال رو به پایگاه داده اتصال کنم تا جایی پیش میرم که میخوام تیک table رو بزنم توی صفحه update wizard توی ویژال
    ولی هرکاری میکنم نمیتونم تیک رو بزنم یه یکی گفتم گفت sql server express باید دانلود کنی کردم نشد یکی گفت باید بری توی
    my pc/manage/services and application/sql server configuration manager/sql server network confiquration /
    اونایی که اسم حساب sql هست رو enable کن -کردم نشد
    لطفا بگین باید چیکار کنم

    1. با سلام
      در صفحه ی Update wizard که گفتید وقتی می خواهید تیک را بزنید آیا خطا یا هشداری دریافت می کنید یا گزینه مربوطه Greyed-out شده است؟ همچنین در صورت امکان تصویر صفحه ی مورد نظر که با آن مشکل دارید را هم در جایی اپلود نموده و لینک آن را جهت مشاهده ما اعلام فرمایید.

  3. سلام
    من تو ویژوال migration که میزنم بعد که update-database هم میزنم اوکیه میزنه مدلا ساخته شدن تو دیتابیس ولی وقتی دیتابیس رو باز میکنم هیچ مدلی وجود نداره در حالی که وقتی تو ویژوال دوباره update-database رو میزنم ارور این میاد ک قبلا همچین ابجکتی ساخته شده ولی هیچ مدلی از این نوع تو دیتابیسم نیست اشکال از کجا میتونه باشه؟!

        1. باید لاگ سرور رو چک کنید، با توجه به نوع و مسیر نصب هم مسیر لاگ فایل ها متفاوته. فایل های لاگ رو پیدا کنید و متن ارور رو از توی لاگ در بیارید.

    1. دقیق نمیدونم برای چیه اما وقتی از گزینه های پیش فرض استفاده می کنم این مشکل برام پیش نیومد. به نظرم شمام از گزینه های پیش فرض استفاده کنید و اونو تغییر ندید.

    1. سلام به شما
      در زمانی که ارتباط با دیتابیس برقرار نباشه این خطا رو مشاهده میکنید و احتمال زیاد به خاطر اشتباه وارد کردن اسم و یا یوزر و پسورد دیتابیس هست!

  4. سلام صبح بخیر . ببخشید این عکس شما گذاشتین تمام پروژه هامو بارگزاری سایت انجام دادم . بعد این پیغام میده (سایت نمایش بده) راه روش هست این بطرف کنم . ممنون میشم کمک کنید

  5. TITLE: Microsoft SQL Server Management Studio
    ——————————

    Expected 1 export(s) with contract name “Microsoft.VisualStudio.Utilities.IContentTypeRegistryService” but found 0 after applying applicable constraints. (mscorlib)

    ——————————
    BUTTONS:

    OK
    ——————————
    چطور این ارور رو حل کنم؟

  6. سلام
    پیغام cannot connect خیلی میده سیستم من
    اوایل کامپیوتر و ریست میکردم درست میشد
    الان دیگه نمیشه
    مشکل چیه؟

  7. سلام و خسته نباشید
    من وقتی یک
    جدول ایجاد میکنم و دخیره میکنم . بعد که برای وارد کردن محتویاتش میرم و رو جدول کلیک راست میکنم و گزینه edit all rows رو میزنم خطای
    invalid window handle
    رو میزنه و نمیونم کاری انجام بدم. لطفا راهنمایی کنید

  8. ممنون
    اشاره به فایروال خوب بود
    من ایران فایل رو نصب کردم خطای پایگاه داده میداد و نصابشون هم نتونست درستش کنه.
    با مطلب شما آنتی ویروس رو غیر فعال کردم و تو قسمت سرویس ها my sql ها رو که استوپ شده بود استارت زدم مشکلم حل شد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

نوشته های مشابه

دکمه بازگشت به بالا