תארו לעצמכם: לאחר שנה של פעילות ללא תחזוקה, SQL Server שלכם הופך למערכת איטית. זמני ביצוע של דוחות שפעם ארכו אלפיות שנייה גדלים לעשרות שניות. פיצול אינדקסים עולה על 50%, נתונים סטטיסטיים מתיישנים — האופטימייזר בוחר תוכניות לא אופטימליות. קובץ היומן (transaction log) תופח לעשרות גיגה-בייט, ובדיקות שלמות מעולם לא בוצעו. אנו פותרים בעיות אלה באופן מקיף: אנו מגדירים תחזוקת SQL אוטומטית השומרת על ביצועים ואמינות ללא מעורבותכם. המומחים המוסמכים שלנו ל-SQL Server עם ניסיון של 10+ שנים יישמו פתרונות כאלה על 100+ שרתים, כולל מערכות OLTP בעומס גבוה, תוך הבטחת פעולה אמינה.
ארבעה תהליכי מפתח — בנייה מחדש/ארגון מחדש של אינדקסים (SQL index rebuild/reorganize), עדכון נתונים סטטיסטיים (SQL statistics update), בדיקת שלמות (DBCC CHECKDB) וסבב גיבוי (SQL backup rotation) — חייבים לפעול לפי לוח זמנים. בלעדיהם, מסד הנתונים מתדרדר: פיצול מעל 30% מאט את מהירות השאילתות בעד 40%, ונתונים סטטיסטיים מיושנים יכולים להגדיל את זמן הביצוע פי עשרה. סקריפטים של T-SQL מבצעים משימות אלה פי 2 מהר יותר מתוכניות גרפיות רגילות, ומפחיתים את הפיצול בעוד 40%.
אילו משימות תחזוקה פותרות
- בנייה מחדש וארגון מחדש של אינדקסים — פיצול >30% גורם לפעולות קלט/פלט נוספות ולהידרדרות ביצועים. הסקריפט בוחר אוטומטית בין ארגון מחדש לבנייה מחדש.
- עדכון נתונים סטטיסטיים — ללא נתונים סטטיסטיים עדכניים, האופטימייזר בוחר תוכניות לא אופטימליות; זמן ביצוע השאילתה יכול לגדול פי 10. אנו מעדכנים רק אובייקטים ששונו.
- בדיקת שלמות (DBCC CHECKDB) — מזהה שחיתות בדפים לפני שהיא הופכת לבעיה. אנו מריצים אותה מדי שבוע בלילה.
- גיבויים עם סבב — מלא, דיפרנציאלי, יומן עסקאות עם הסרת קבצים ישנים. שמירה בין 2 ל-30 ימים בהתאם לקריטיות. RPO אופייני הוא 15 דקות.
איזו שיטה: GUI או T-SQL?
תוכניות תחזוקה מ-SSMS GUI הן התחלה מהירה אך שברירית — לחיצה לא זהירה אחת יכולה לשבור את התוכנית, ובקרת גרסאות ב-Git בלתי אפשרית. עבור סביבות רציניות, אנו משתמשים ב-SQL Agent Jobs עם T-SQL. זה נותן שליטה מלאה, תיעוד ויכולת שחזור.
| קריטריון | תוכניות תחזוקה (GUI) | T-SQL + Agent Jobs |
|---|---|---|
| קלות היישום | גבוהה | בינונית |
| גמישות תצורה | נמוכה | גבוהה |
| בקרת גרסאות | בלתי אפשרית | כן (Git) |
| תיעוד (לוגים) | מוגבל | מלא (טבלה) |
| עמידות לשגיאות | נמוכה | גבוהה |
| זמן תחזוקה | בסיסי | מופחת בעד 30% |
מדוע Ola Hallengren הפך לסטנדרט
הסטנדרט דה-פקטו לתחזוקת SQL Server הוא Ola Hallengren
פתרון התחזוקה של SQL Server מאת Ola Hallengren [https://ola.hallengren.com]
-- Обслуживание индексов: reorganize при 10-30% фрагментации, rebuild при >30%
EXECUTE dbo.IndexOptimize
@Databases = 'USER_DATABASES',
@FragmentationLow = NULL,
@FragmentationMedium = 'INDEX_REORGANIZE',
@FragmentationHigh = 'INDEX_REBUILD_ONLINE,INDEX_REBUILD_OFFLINE',
@FragmentationLevel1 = 10,
@FragmentationLevel2 = 30,
@MinNumberOfPages = 1000,
@UpdateStatistics = 'ALL',
@OnlyModifiedStatistics = 'Y',
@LogToTable = 'Y';
-- Проверка целостности (запускать раз в неделю, ночью)
EXECUTE dbo.DatabaseIntegrityCheck
@Databases = 'USER_DATABASES',
@CheckCommands = 'CHECKDB',
@LogToTable = 'Y'; כיצד אנו עושים זאת: תהליך שלב-אחר-שלב
- ניתוח — בדיקת פיצול, נתונים סטטיסטיים, גיבויים, גודל יומן. הערכת SLA ונקודת שחזור.
- עיצוב לוח זמנים — הגדרת חלונות תחזוקה, תדירות משימות, שמירת גיבויים. התחשבות ב-Always On.
- יישום — פריסת Ola Hallengren, כוונון פרמטרים לסביבתכם. יצירת Agent Jobs עם התראות על כשלים.
- בדיקות — הרצה בסביבת בדיקות, סקירת לוגים וביצועים. אימות יכולת שחזור גיבויים.
- פריסה וניטור — מעבר לייצור, הגדרת התראות בדוא"ל או בטלגרם. מתן גישה ללוגים ודוחות.
הגדרות מומלצות לעומסי עבודה שונים
| סוג עומס עבודה | תדירות תחזוקה | הערות |
|---|---|---|
| OLTP | פעם בשבוע | בנייה מחדש של אינדקסים ב->30%, נתונים סטטיסטיים יומית |
| OLAP | פעם בחודש | בנייה מחדש מלאה, נתונים סטטיסטיים לאחר טעינת נתונים |
| מעורב | כל 5 ימים | סף פיצול אדפטיבי |
תצורה לדוגמה למערכת OLTP
פיצול >30%: בנייה מחדש, 10-30%: ארגון מחדש, <1%: דילוג. נתונים סטטיסטיים מתעדכנים רק עבור אובייקטים ששונו. גיבויים: מלא יומי, דיפרנציאלי כל 6 שעות, יומן כל 15 דקות.מה כלול בעבודה
- התקנת תוכנית תחזוקה מלאה ומפתח ביום אחד. עלות החל מ-$500, בדרך כלל $1200 עבור סביבות מורכבות.
- תיעוד המתאר כל Job, לוחות זמנים ופרמטרים.
- הדרכה לצוות שלכם: כיצד לבדוק לוגים, לשחזר גיבויים, לשנות לוחות זמנים.
- תמיכה לאחר הפריסה: חודש אחד של סיוע באירועים.
טעויות נפוצות בהתקנה עצמית
- בנייה מחדש תכופה מדי של אינדקסים — גורמת לעומס מיותר. השתמשו בספי פיצול ובספירת עמודים מינימלית (1000).
- היעדר בדיקות שלמות — ייתכן שתלמדו על שחיתות רק במהלך שחזור. DBCC CHECKDB חודשי מפחית סיכון ב-99%.
- סבב יומן שגוי — יומן העסקאות יכול למלא את הדיסק. אנו הופכים את קיצוץ היומן לאוטומטי לאחר הגיבוי.
לוחות זמנים משוערים: מיום אחד להתקנה סטנדרטית ועד שלושה ימים לתשתית מורכבת. התמחור אישי. קבלו ייעוץ מהמהנדס שלנו — נעזור לכם להגדיר אוטומציה של SQL ולישון בשקט. הזמינו התקנה, ו-SQL Server שלכם יפעל ביציבות.







