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

مسعود طاهری

مسعود طاهری

عاشق علیرضا (پسرم) و همسرم. در ضمن SQL Server را هم دوست دارم.

23 Comments

  1. مهدی ربانی ذبیحی

    مهدی ربانی ذبیحی

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

    پاسخ دادن
  2. من

    کرک شده این نرم افزار در سایت های فارسی هست
    نسخه ۲۰۱۴

    پاسخ دادن
  3. محمدحسین عبدالهی

    محمدحسین عبدالهی

    با سلام
    آیا هر عملی که کاربر در SQL Server انجام می ده منظور CRUD در Log ها ذخیره می شه؟ اگر این کار انجام می شه و می تونیم این اطلاعات رو واکشی کنیم چه نیازی به استفاده از CDC هست ؟

    پاسخ دادن
  4. مسعود طاهری

    مسعود طاهری

     سلام

    آقای عبدالهی عزیز 
    1- تمامی چیزهایی که مربوط به تغییر داده ها می شود در Log  فایل دیتا ثبت می کنند. 
    2- SQL Server از لاگ فایل جهت کنترل Transaction استفاده می کند. (انجام عملیات ریکاوری/خیلی مهم است)
    ۳- واکشی داده های موجود در لاگ فایل به این سادگی که شما فکر می کنید نیست. ساختار این فایل باینری است و…
    ۴-  CDC سوابق تغییرات داده ها را از لاگ فایل استخراج و در جداول سیستمی آرشیو می کند تا کاربران بتوانند آنها را از جداول سیستمی استخراج نمایند.
    پاسخ دادن
  5. حمیدقلیپور

    حمیدقلیپور

    با سلام و احترام

    بایستی بگم این ابزاری که معرفی کردید فوق العاده کار راه انداز باشد بخصوص  برای DBA ها؟ درست اشاره کردم
    با تشکر از زحمات شما 
    پاسخ دادن
  6. مسعود طاهری

    مسعود طاهری

     بله این ابزار یکی از ابزارهای مهم در خصوص خواندن محتوای لاگ فایل است.

    DBA استفاده خیلی مفیدی می توانند از این ابزار داشته باشند.
    موفق باشید
    پاسخ دادن
  7. ابراهیم

    ابراهیم

     سلام مهندس جان.

    من یک سوالی در مورد کامپوننت های Apex داشتم.
    ما برای برنامه نویسی در محیط C# از ابزاری استفاده می کنم به نام  Resharper که باعث میشه جایی اگه کدی رو میشه بهینه کرد به من میگه و بعد کلیک کردن خودش شروع میکنه به اصلاح کردن اصلاح این قطعه کد یا اینکه در  طراحی کلاس خیلی به کار من سرعت و نظم میده.
    حال برای سمت SQL من با دوست خودم صحت کردم و گفتم Apex میتونه به من در بهنه کردن و سرعت بخشیدن کمک کنه جوابی که به من داد زیاد برام جالب نبود گفت نه Apex الان به درد نمیخوره زمانی به درد میخوره که کارت تمام شد و میخوای ببینی اوضاع بانک چطوره که این جوابش برام زیاد جالب نبود. یعنی این کامپوننت با این همه ابزار کلا برای بهبود کارهای ما در طول طراحی به درد نمیخورن؟؟؟مگه میشه؟؟؟

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

    ببخشید که سوال های خودمو یکج و طولانی پرسیدم.

    پاسخ دادن
    1. مسعود طاهری

      مسعود طاهری

       سلام

      در پاسخ سوال ۱ : برای نوشتن کوئری و… می توانید از این نوع ابزارها هم کمک بگیرید. هم شرکت Apex و هم شرکت RedGate برای این منظور ابزارهایی دارند. اگر در ابتدای راه هم از آنها استفاده کنید هیچ مشکی نیست کلا ابزارها هدفشون این است که فرآیند کد نویسی و… شما را راحت کنند.

      سوال ۲ : برای طراحی گزارش می توانید از Reporting Service  استفاده کنید. در ضمن ابزارهای گزارش گیری زیادی وجود داره که می توانید از آنها استفاده کنید. اگر در گزارش گیری ماهیت Service Based نداشته باشید می توانید از ابزارهای گزارش گیری مثل FastReport,StimuleReport ,… استفاده کنید که در این حالت به کوئری ها ارسالی جهت استخراج گزارش توجه کنید
      برای کسب اطلاعات بیشتر درباره ابزارهای گزراش گیری به این آدرس مراجعه کنید
      پاسخ دادن
      1. ابراهیم

        ابراهیم

        سلامی دوباره خدمت شما مهندس جان.
        پس من درست متوجه شدم Apex برای راحتی برنامه نویس در کد نویسی SQL ابزار هایی رو طراحی کرده؟

        در مورد سوال دومم بیشتر دنبال فرم هستم مثلا خود Access رو در نظر بگیرین برای خودش طراحی فرم داره آیا SQL هم چنین چیزی داره یا اینکه باز هم باید از ابزار های دیگه ای استفاده کرد

  8. مسعود طاهری

    مسعود طاهری

     بلی

    برای Developerها و Adminهای SQL Server یک سری ابزار ویژه داره 
    ابزارهای مخصوص Developerهای SQL Server را می توانید از اینجا مشاهده کنید
    پاسخ دادن
    1. ابراهیم

      ابراهیم

       مرسی مهندس جان.
      ما منتظر پیشنهاد های شما در مورد استفاده از این ابزار ها و چگونگیه استفاده مثل دیگر ابزارهایی که پیشنهاد دادین هستیم.

      پاسخ دادن
  9. مجتبی مزورعی

    مجتبی مزورعی

    چرا اطلاعات پایگاه داده آن شرکت تغییر می کرد؟

    این کار توسط کارمندان انجام می شود؟(چه طور می توان فهمید چه کسی این کار را کرده ؟) و یا خود برنامه به صورت خود به خود؟

    اضلا آیا امکان دارد خود برنامه به صورت خود به خود داده ها را تغییر دهد

    پاسخ دادن
    1. مسعود طاهری

      مسعود طاهری

       یکی از بهترین کارها برای انجام این مورد استفاده از قابلیت Audit است .

      Database Audit Specification قابلیتی است که در نسخه ۲۰۰۸ به SQL Server اضافه شده است
      لینک های زیر به شما کمک می کند 
      بر روی جداولی که شک دارید Audit راه اندازی کنید به ازای دستورات Insert,Update,Delete 
      شرکت APEX برای این موضوع هم برنامه ای دارد
      این برنامه سناریوی شما را کاملا تحت پوشش قرار می دهد.
      من و تمامی اعضای محترم سایت خوشحال می شویم اگر در مورد هر دو موضوع معرفی شده مقاله ای در سایت ارائه کنید
      پاسخ دادن
  10. احمد رضاپور

     سلام جناب طاهری.

    من مدیردیتابیس در یک شرکت بزرگ هستم. مسئله مهمی هست اینکه اطلاعات ذخیره شده در دیتابیس گهگاهی به طور غیرمنتظره تغییر میکند. مثلا گاهی یک رکورد پاک میشود یا اینکه فیلد خاصی از  یک سری از رکوردها آپدیت میشود. این تغییرات نه از جانب نرم افزار اعمال میشود و نه به طور مستقیم از طریق دستورات اسکیوال.
    آیا برای شما هم این مسئله اتفاق افتاده است؟ راه حل؟؟ 
    پاسخ دادن
    1. مسعود طاهری

      مسعود طاهری

       تمامی این تغییرات به واسطه عملکرد مستقیم و یا غیر مستقیم برنامه ها  و کاربرانی است که از بانک اطلاعاتی استفاده می کنند.

      یکی از حالت هایی که می توانید بررسی کنید فعال بودن Cascade Delete و Cascade Update در بحث Relation  می باشد.
      برای مثال اگر در Relation  بین دو جدول قابلیت  Cascade Delete فعال شده باشد و شما یک رکورد از جدول Master حذف کنید در این صورت تمامی رکوردهای جدول Detail نیز حذف خواهد شد.
      اما اگر بخواهید بفهمید عامل موضوع چیست می توانید از 
      Audit یا Trace Profile و یا Extended Event برای پیدا کردن این حالت استفاده کنید.
      در تاپیک بالا نحوه استفاده از Audit برای پیدا کردن این موضوع شرح داده شده است.
      موفق باشید
      پاسخ دادن
  11. علی

    سلام 

    ممنون از اطلاعات ارائه شده. من هم در هنگام ریستور دیتابیس، اشتباهی نسخه بکآپ قدیمی را جایگزین نسخه فعلی کردم. آیا راهی هست که اطلاعات جدید را بازگردانم؟ حدود ۵۰۰۰ رکورد جدید در دیتابیس فعلی بود.
    با تشکر
    علی

    پاسخ دادن
    1. مسعود طاهری

      مسعود طاهری

          اگر از بانک قبلی خود بکاپ نداشته باشید خیر

      پاسخ دادن
  12. حسن ضرابی

    حسن ضرابی

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

    از بابت توضیحات خیلی خوبتون بسیار ممنونم خیلی عالی توضیح دادید و نرم افزار خوبی را معرفی کردید

    از شما بسیار ممنونم

    پاسخ دادن
  13. مائده

    سلام. وقتتون بخیر.
    business user را می‎توان از log file استخراج کرد؟

    پاسخ دادن
    1. آرزو محمدزاده

      آرزو محمدزاده

      با سلام و عرض ادب

      به نقل از مهندس مسعود طاهری

      خیر
      این فایل در جهت فرایند ریکاوری و پروسه های داخلی SQL server مورد استفاده قرار می‌گیرد.

      پاسخ دادن
      1. مائده

        آخه ایشون در دوره مجازیشون گفتن که برای microsoft درخواستی مبنی بر افزودن این فیلد به log file فرستاده اند که اگر رای بالایی به آن داده شود این فیلد اضافه می شه، میخواستم ببینم در ورژن ۲۰۱۷ این ویژگی افزوده شده است یا نه؟

      2. مسعود طاهری

        مسعود طاهری

        سلام اون درخواست یه موضوعی دیگه است
        موضوع اون مبنی بر ذخیره اطلاعات ConText Info در فعالیت های نظیر
        Audit
        CDC
        Temporal
        اضافه شدن به Log Recordها در هر Action
        و…
        بود
        در هر حالت Log File چیزی نیست که بخواهید روی آن بیزنس ببندید و…

  14. mohammad

    میشه نرم افزار Red Gate رو با این مقایسه کنید. ممنون

    پاسخ دادن

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمامی حقوق مادی و معنوی این وب سایت متعلق به نیک آموز می باشد.
این سایت توسط تیم آموزش برنامه نویسی نیک آموز مدیریت می شود.