در این مقاله ، شما در مورد اولیه سازی پرونده فوری ، و چگونگی فعال کردن آن برای سرعت بخشیدن به رشد برای پرونده های پایگاه داده SQL Server خود ، می آموزید.
به طور پیش فرض ، پرونده های داده و ورود به سیستم برای بازنویسی هرگونه داده موجود باقی مانده روی دیسک از پرونده های قبلاً حذف شده آغاز می شوند. پرونده های داده و ورود به سیستم ابتدا با صفر پرونده ها (پر کردن با صفر) هنگام انجام عملیات زیر آغاز می شوند:
- یک پایگاه داده ایجاد کنید.
- داده ها یا پرونده های ورود به سیستم را به یک پایگاه داده موجود اضافه کنید.
- اندازه یک پرونده موجود (از جمله عملیات autogrow) را افزایش دهید.
- یک پایگاه داده یا گروه پرونده را بازیابی کنید.
در SQL Server ، فقط برای پرونده های داده ، اولیه سازی پرونده فوری (IFI) امکان اجرای سریعتر عملیات پرونده های قبلی را فراهم می کند ، زیرا این فضای دیسک را بدون پر کردن آن فضا با صفر استفاده می کند. درعوض ، محتوای دیسک به عنوان داده های جدید برای پرونده ها نوشته می شود.
پرونده های ورود به سیستم معاملات نمی توانند فوراً آغاز شوند ، با این حال ، با شروع SQL Server 2022 (16. x) ، اولیه سازی پرونده فوری می تواند از رویدادهای خودکار ورود به سیستم تا 64 مگابایت بهره ببرد. افزایش پیش فرض رشد خودکار برای پایگاه داده های جدید 64 مگابایت است. پرونده های ورود به سیستم معاملات Autogrowth بزرگتر از 64 مگابایت نمی تواند از اولیه سازی پرونده فوری بهره مند شود.
اولیه سازی پرونده فوری را فعال کنید
اولیه سازی پرونده فوری فقط در صورتی در دسترس است که به حساب راه اندازی سرویس SQL Server Service SE_MANAGE_VOLUME_NAME اعطا شده باشد. اعضای گروه سرپرست ویندوز این حق را دارند و می توانند با افزودن آنها به خط مشی امنیت وظایف نگهداری حجم ، آن را به سایر کاربران اعطا کنند.
برخی از استفاده از ویژگی ها ، مانند رمزگذاری داده های شفاف (TDE) ، می توانند از شروع فوری پرونده جلوگیری کنند.
با شروع SQL Server 2016 (13. x) ، این مجوز را می توان در هنگام نصب ، در حین راه اندازی به حساب سرویس اعطا کرد.
در صورت استفاده از دستور نصب سریع ، آرگومان /sqlsvcinstantfileinit را اضافه کنید ، یا اینکه کمک هزینه کادر را بررسی کنید امتیاز وظیفه تعمیر و نگهداری حجم را به سرویس موتور پایگاه داده SQL Server در جادوگر نصب انجام دهید.
برای اعطای یک حساب کاربری برای انجام حجم عملکرد اجازه می دهد:
در رایانه ای که پرونده داده ایجاد می شود ، برنامه سیاست امنیتی محلی (secpol. msc) را باز کنید.
در صفحه سمت چپ ، خط مشی های محلی را گسترش داده و سپس روی واگذاری حقوق کاربر کلیک کنید.
در صفحه سمت راست ، دو کلیک بر روی کارهای تعمیر و نگهداری حجم انجام دهید.
روی افزودن کاربر یا گروه کلیک کنید و حسابی را که سرویس SQL Server را اجرا می کند ، اضافه کنید.
روی Apply کلیک کنید ، و سپس تمام کادر گفتگوی خط مشی امنیتی محلی را ببندید.
سرویس SQL Server را مجدداً راه اندازی کنید.
ورود به سیستم خطای سرور SQL را در هنگام راه اندازی بررسی کنید.
اعمال می شود: SQL Server (با شروع SQL Server 2012 (11. X) SP4 ، SQL Server 2014 (12. x) SP2 و SQL Server 2016 (13. x) و بعد).
اگر به حساب راه اندازی سرویس SQL Server Service SE_MANAGE_VOLUME_NAME اعطا شود ، یک پیام اطلاع رسانی که شبیه موارد زیر است ثبت شده است:
پایگاه داده اولیه فوری پرونده: فعال شده. برای ملاحظات امنیتی و عملکرد ، به موضوع "اولیه سازی پرونده فوری پایگاه داده" در کتابهای SQL Server بصورت آنلاین مراجعه کنید. این فقط یک پیام اطلاع رسانی است. نیاز به اقدام کاربر نیست.
اگر به حساب راه اندازی سرویس SQL Server Service SE_MANAGE_VOLUME_NAME اعطا نشده باشد ، یک پیام اطلاع رسانی که شبیه موارد زیر است ، وارد شده است:
اولیه سازی پرونده فوری پایگاه داده: غیرفعال. برای ملاحظات امنیتی و عملکرد ، به موضوع "اولیه سازی پرونده فوری پایگاه داده" در کتابهای SQL Server بصورت آنلاین مراجعه کنید. این فقط یک پیام اطلاع رسانی است. نیاز به اقدام کاربر نیست.
همچنین می توانید از ستون Instant_File_Initialization_Enabled در sys. dm_server_service dmv استفاده کنید تا مشخص شود که آیا اولیه سازی پرونده فوری فعال است.
ملاحظات امنیتی
ما توصیه می کنیم که اولیه سازی پرونده فوری را فعال کنید زیرا مزایا می توانند از ریسک امنیتی بالاتر باشند.
هنگام استفاده از اولیه سازی فایل فوری ، محتوای دیسک حذف شده فقط به عنوان داده های جدید برای پرونده ها نوشته می شود. به همین دلیل ، محتوای حذف شده ممکن است توسط یک مدیر غیرمجاز قابل دسترسی باشد ، تا زمانی که برخی از داده های دیگر در آن منطقه خاص از پرونده داده می نویسند.
در حالی که پرونده پایگاه داده به نمونه سرور SQL وصل شده است ، این خطر افشای اطلاعات توسط لیست کنترل دسترسی اختیاری (DACL) در پرونده کاهش می یابد. این DACL امکان دسترسی به پرونده را فقط به حساب SQL Server Service و مدیر محلی امکان پذیر می کند. با این حال ، هنگامی که پرونده جدا شده است ، ممکن است توسط یک کاربر یا خدماتی که SE_MANAGE_VOLUME_NAME ندارد ، قابل دسترسی باشد.
ملاحظات مشابه وقتی وجود دارد:
از پایگاه داده پشتیبان گرفته شده است. اگر فایل پشتیبان با DACL مناسب محافظت نشود ، محتوای حذف شده می تواند در دسترس کاربر یا سرویس غیرمجاز باشد.
یک پرونده با استفاده از IFI رشد می کند. یک مدیر سرور SQL به طور بالقوه می تواند به محتوای صفحه خام دسترسی پیدا کند و محتوای حذف شده قبلی را مشاهده کند.
پرونده های پایگاه داده در یک شبکه منطقه ذخیره سازی میزبانی می شوند. همچنین ممکن است که شبکه منطقه ذخیره سازی همیشه صفحات جدیدی را به عنوان قبل از شروع ارائه دهد ، و داشتن سیستم عامل مجدداً صفحات ممکن است سربار غیر ضروری باشد.
اگر پتانسیل افشای محتوای حذف شده یک نگرانی است ، باید یکی یا هر دو عمل زیر را انجام دهید:
همیشه اطمینان حاصل کنید که هر پرونده داده جدا شده و پرونده های پشتیبان دارای DACL های محدود کننده است.
اولیه سازی پرونده فوری را برای نمونه سرور SQL غیرفعال کنید. برای انجام این کار ، SE_MANAGE_VOLUME_NAME را از حساب راه اندازی سرویس SQL Server Service لغو کنید.
غیرفعال کردن زمان تخصیص برای پرونده های داده را افزایش می دهد و فقط پس از ابطال سمت راست کاربر ، روی پرونده هایی که در اندازه ایجاد شده یا در اندازه افزایش یافته اند ، تأثیر می گذارد.
SE_MANAGE_VOLUME_NAME کاربر درست
امتیاز کاربر SE_MANAGE_VOLUME_NAME را می توان در ابزارهای اداری ویندوز ، اپلت سیاست امنیتی محلی اختصاص داد. تحت خط مشی های محلی ، وظیفه درست کاربر را انتخاب کرده و خاصیت وظایف تعمیر و نگهداری حجم را تغییر دهید.
ملاحظات عملکرد
فرآیند اولیه سازی پرونده پایگاه داده صفرها را به مناطق جدید پرونده تحت اولیه سازی می نویسد. مدت زمان این فرآیند به اندازه بخش پرونده که اولیه و به زمان پاسخ و ظرفیت سیستم ذخیره سازی بستگی دارد بستگی دارد. اگر اولیه سازی مدت زمان طولانی طول می کشد ، می توانید پیام های زیر را که در SQL Server ErronLog و ورود به سیستم برنامه ثبت شده است ، مشاهده کنید.
یک برنامه ریزی طولانی از یک پایگاه داده و/یا پرونده ورود به سیستم ممکن است باعث ایجاد مشکلات عملکرد پرس و جو شود. این امر به این دلیل است که عملیاتی که نیاز به اتواتوات یک پرونده دارد ، در طول مدت عملکرد رشد پرونده ، منابعی مانند قفل یا قفل را نگه می دارد. ممکن است برای صفحات تخصیص انتظار طولانی در چفت ها را ببینید. عملیاتی که نیاز به autogrow طولانی دارد ، نوع انتظار از preemptive_os_writefilegather را نشان می دهد.
تجارت با گزینههای باینری...
ما را در سایت تجارت با گزینههای باینری دنبال می کنید
برچسب :
نویسنده : حمیدرضا پگاه
بازدید : 29
تاريخ : پنجشنبه
21 ارديبهشت
1402 ساعت: 16:36