رفع خطای suspect در Ms SQL Server

یادداشت های یک عادلی suspect رفع خطای suspect در Ms SQL Server MS SQL Server مدیریت سرور ویندوز  اس کیو ال 2008 اس کیو ال 2005 Suspect Mode Sql2008 Suspect Mode Sql server Suspect Mode Sql 2012 Suspect Mode Sql 2005 Suspect Mode MSSQL Suspect Mode database Suspect Mode

امروز با خطایی عجیبی در یکی از دیتابیس های یوزر ها در Sql server 2005 برخوردم . همانطور که در تصویر بالا می بینید دیتابیس یوزر با خطای Suspect  مشاهده می شود. از آنجا که هم اکنون با sql server  آشنایی زیادی ندارم اطلاعی از نحوه رخداد این موضوع نداشتم با کمی جستجو به نتایج جالبی رسیدم که در ادامه برای شما درج می نمایم.

اقدامات عمومی که پس از رخداد خطا انجام دادم به شرح زیر است :

  1. از دیتابیس بک آپ تهیه نمودم ( اجازه بک آپ گیری داده نشد و با خطا مواجه شد )
  2. از فایل های .ldf و ,mdf کپی برداشته و ذخیره کردم
  3. دیتابیس را detach و سپس attach کردم که با ارور مواجه شدم .
  4. دیتابیس را حذف و مجدد ایجاد کرده و فایل های .mdf و .ldf را در پوشه data کپی کردم و سپس سرویس sql server را reset کردم . باز هم با خطای Suspect مواجه شدم.

علل احتمالی رخداد این موضوع موارد زیر در جستجو به دست آمد

  • خراب شدن به اصطلاح کراپت corrupted شدن دیتابیس
  • عدم وجود فضای کافی برای بازیابی دیتابیس و اجرای آن
  • عدم دسترسی ( permission ) دیتابیس به فایل های خود
  • اشغال دسترسی (session) توسط نرم افزار دیگر مانند بک آپ گیری
  • قطع شدن نا بهنگام سرور به دلیل قطع برق یا خرابی سخت افزار

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

اما راه حلی که مشکل را برطرف نمود . بر روی دیتابیس کلیک راست کنید و یک کوئری باز نمایید.

کدهای زیر را در آن قرار دهید ، توجه داشته باشید به جای گزینه YourDatabase در کدها نام دیتابیس را قرار دهید . سپس کوئری را Execute نمایید و کمی صبر کنید.

[php]
EXEC sp_resetstatus [YourDatabase];
ALTER DATABASE [YourDatabase] SET EMERGENCY
DBCC checkdb([YourDatabase])
ALTER DATABASE [YourDatabase] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CheckDB ([YourDatabase], REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE [YourDatabase] SET MULTI_USER
[/php]

منتظر باشید تا کوئری در مدت کوتاهی run شده و دیتابیس را fix نماید. سپس بر روی دیتابیس راست کلیک نمایید و دیتابیس را  Refresh نمایید. امیدوارم مورد حل شود.

گردآوری شده : GerixSoft , CODE PROJECT , msdn Microsoft

منبع : وبلاگ عادلی

یک آبانی ، در دنیای IT و علاقه مند به کسب و کار اینترنتی *** مطالعه کتاب ، طبیعت ، وردپرس ، لینوکس ، کسب و کار آنلاین ، قهوه ، عکاسی

5 دیدگاه روشن رفع خطای suspect در Ms SQL Server

دیدگاه خود را بنویسید:

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


The reCAPTCHA verification period has expired. Please reload the page.

فوتر سایت