דלג לתוכן הראשי
היכנס דרך Microsoft
היכנס או צור חשבון.
שלום,
בחר חשבון אחר.
יש לך חשבונות מרובים
בחר את החשבון שברצונך להיכנס באמצעותו.

תופעות

נניח שיש לך טבלה המכילה עמודת אובייקט גדול (LOB) ב-Microsoft SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 או SQL Server 2014. כאשר אתה מעדכן את עמודת LOB בגודל קטן יותר של נתוני LOB ומנסה לדרוש מעצמך את השטח שאינו בשימוש באמצעות השיטות הבאות:

  • DBCC SHRINKDATABASE / DBCC SHRINKFILE

  • לשנות את הסדר של אינדקס מחדש עם (LOB_COMPACTION = ON)

במצב זה, אין אפשרות להחזיר את השטח שאינו בשימוש.

כל עדכון מצטבר חדש עבור SQL Server מכיל את כל התיקונים החמים ואת כל תיקוני האבטחה שנכללו בעדכון המצטבר הקודם. עיין בעדכונים המצטברים האחרונים עבור SQL Server:

פתרון

כדי לעקוף בעיה זו, השתמש בפתרונות הבאים:

  • יצא את כל השורות לטבלה חדשה והעבר את השורות לאחור. פעולה זו מארגנת מחדש את נתוני ה-LOB ומשחררים את השטח שאינו בשימוש.

  • השתמש ב-DBCC SHRINKFILE עם האפשרות EMPTYFILE כדי להעביר את כל הנתונים לקובץ נתונים חדש שנוסף ולאחר מכן להסיר קובץ נתונים ישן. פעולה זו מארגנת מחדש את נתוני ה-LOB שם על-ידי שחרור השטח שאינו בשימוש.

מידע נוסף

הדוגמה הבאה מציגה את השטח שאינו בשימוש באמצעות הפקודה TSQL sp_spaceused ' table_name ' לפני ואחרי העדכון של עמודת ה-lob בגודל קטן יותר של נתוני LOB: לפני העדכון:

שם

שורות

שמורות

נתונים

index_size

נוצל

table_name

1000

261072 KB

261056 KB

16 KB

0 KB

לאחר העדכון:

שם

שורות

שמורות

נתונים

index_size

נוצל

table_name

1000

261072 KB

199672 KB

16 KB

61384 KB

מצב

Microsoft אישרה שזוהי בעיה במוצרי Microsoft המופיעים בסעיף "חל על".

זקוק לעזרה נוספת?

מעוניין באפשרויות נוספות?

גלה את יתרונות המנוי, עיין בקורסי הדרכה, למד כיצד לאבטח את המכשיר שלך ועוד.

קהילות עוזרות לך לשאול שאלות ולהשיב עליהן, לתת משוב ולשמוע ממומחים בעלי ידע עשיר.

האם מידע זה היה שימושי?

עד כמה אתם מרוצים מאיכות השפה?
מה השפיע על החוויה שלך?
בלחיצה על 'שלח', אתה מאפשר למשוב שלך לשפר מוצרים ושירותים של Microsoft. מנהל ה-IT שלך יוכל לאסוף נתונים אלה. הצהרת הפרטיות.

תודה על המשוב!

×