PDA

View Full Version : سوال: SHRINKDATABASE؟



ebrahimv
جمعه 06 فروردین 1389, 18:41 عصر
سلام دوستان اگه میشه کمی در مورد این دستور توضیح دهید
در ظاهر حجم پایگاه داده را کاهش میدهد
ولی در مورد عملکرد این دستور میخواستم بدونم
USE [Sandoug]
GO
DBCC SHRINKDATABASE(N'Sandoug' )
GO

mohsenabiri
شنبه 07 فروردین 1389, 10:14 صبح
سلام
از دستور Shrink برای حذف فضای خالی بدون استفاده در فایل *.MDF که مربوط به دیتا بیس اس کیو ال می باشد استفاده می شود.
اگر در تنظیمات مربوط به دیتا بیس گزینه Auto Shrink را فعال نکرده باشید چون با وارد کردن اطلاعات داخل پایگاه داده حجم آن بالا می رود و با حذف ان اطلاعات حجم دیتا فایل(*.MDF) تغییر نمی کند دستور shrink فضا های خالی بدون استفاده را حذف می کند و حجم دیتا فایل شما به اندازه داده های موجود کاهش می یابد.
این دستور معادل دستور compact در access می باشد.

AminSobati
شنبه 07 فروردین 1389, 18:25 عصر
سلام دوست عزیزم،
Data File به بخشهای کوچکی به اسم Page تقسیم میشه. جداول و رکوردهای شما در Pageها ذخیره میشن. دستور Shrink میتونه از انتهای فایل، Pageهای پر رو به فضاهای خالی در ابتدای فایل منتقل کنه. در نتیجه فضای خالی در انتهای فایل باقی میمنونه که میشه حذفش کرد و به Windows برگردوند. اما چون شدیدا باعث ناپیوستگی (Fragmentation) بین Pageها میشه، اکیدا توصیه میکنم از ShrinkDatabase استفاه نکنین. به جاش از ShrinkFile فقط برای کوچک کردن Log File استفاده کنین. نگران Pageهای خالی در Data File نباشین چون به مرور زمان استفاده میشن

ebrahimv
شنبه 14 فروردین 1389, 11:31 صبح
سلام دوست عزیزم،
Data File به بخشهای کوچکی به اسم Page تقسیم میشه. جداول و رکوردهای شما در Pageها ذخیره میشن. دستور Shrink میتونه از انتهای فایل، Pageهای پر رو به فضاهای خالی در ابتدای فایل منتقل کنه. در نتیجه فضای خالی در انتهای فایل باقی میمنونه که میشه حذفش کرد و به Windows برگردوند. اما چون شدیدا باعث ناپیوستگی (Fragmentation) بین Pageها میشه، اکیدا توصیه میکنم از ShrinkDatabase استفاه نکنین. به جاش از ShrinkFile فقط برای کوچک کردن Log File استفاده کنین. نگران Pageهای خالی در Data File نباشین چون به مرور زمان استفاده میشن
اخه حجم فایل خیلی افزایش پیدا میکنه
مثلا پایگاه داده من 300 مگابایت شده بود بعد از این عمل به 4 مگابایت تغییر پیدا کرد

AminSobati
شنبه 14 فروردین 1389, 15:36 عصر
شاید حجم Log File بوده نه Data File