מחיקת גיבוי

roy22222

New member
מחיקת גיבוי

שלום,
יש לי שרת SQL 2000
ומספר שרתים של 2005 ו2008

אני רוצה למחוק גיבויים שהם יותר מX ימים .
ניסיתי להשתמש בxp_delete_file אולם ה2000 לא מכיר אותו.
אז אמרתי הבא נתחכמה, ונעשה את זה מ2005/2008 .
הבעיה היא שמסיבה לא ברורה הוא לא מוחק לי שהם לא מקומיים, דהיינו הגיבוי יושב בשרת אחר ברשת.
מצורף הקוד בקובץ, הפורום לא ממש מחבב את הקוד ומסרב לתת לי לרשום אותו בתוך ההודעה.
בדקתי שעל התיקייה יש הרשאות מלאות.
ושהוא מזהה את המיקום. (זאת אומרת שאם השורה של מיקום הקבצים קצת לא נכונה, הוא נותן לי שגיאה כי הוא לא מוצא את הקבצים.)

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

pitoach

New member
2 נקודות להתחלה (עדיין לא פתחתי את הקוד)

1.בדקת הרשאות?
לא מספיק הרשאות כתיבה בשביל למחוק אלא הרשאות מלאות. נסה להריץ סקריפט פשוט לבדוק שאתה מצליח בלי קשר ל JOB. למשל נסה לבצע מחיקה כללית קודם.

2. כשאתה אומר שאתה מריץ מ 2005 למה הכוונה? השרת שלך 2000 ואתה מריץ את זה משרת אחר? או רק התקנת SSMS בגרסה מתקדמת יותר?
אתה יכול להבהיר את הנקודה הזו

* אתה תמיד יכול אם אתה רוצה לעבוד ישירות בגרסה 2000 עם xp_cmdshell ולכתוב כל פקודת SHELL שאתה רוצה. ככה שאתה תמיד יכול לבצע מחיקה
 

pitoach

New member
דרך אגב ברור לך שכל עזרה תתבסס על זכרון רחוק

והשרת בגרסה הכי ישנה שיש לי זה 2008 (כבר אין לי אפילו 2005 כרגע ואני בשלבי מעבר של כל השרתים החיים ל 2012... שרת הפיתוח הוא כמובן 2012)
לא הגיע הזמן לשדרג ?
 

roy22222

New member
שדרוג עולה כסף לא?

יש משפט עם זה עובד לא נוגעים...

וכמו שציינתי, יש ארגונים לא גדולים שלשדרג זה יקר בעיקר כאשר הכל עובד תקין.

חוץ ממחיקה של גיבויים.
 

pitoach

New member
ועוד פתרון פשוט זה שימוש ב vbscript שנתמך

ב SQL Agent של גרסת 2000

כך שיש לך כבר 2 פתרונות מהירים ויעילים ישירות על 2000:
הרצת VBS או הרצת פקודת SHELL
 

roy22222

New member
לא מכיר VB

לגבי Agent, איפה יש שם מחיקה על פי ימים?

תודה רועי
 

pitoach

New member
בקוד של ה VBS
אותו מריצים ב Agent

 

roy22222

New member
הרשאות

כן בדקתי יש הרשאות מלאות. זה הדבר הראשון שבדקתי.
שרת אחר שהוא 2005 . כנ"ל משרת אחר שהוא בגרסת 2008.

לגבי הכוכבית לא בטוח שהבנתי
 

pitoach

New member
אם אתה יודע לעבוד עם Agent ולהריץ סקריפטים אז

אני יכול להעלות לך קוד קצר שיבצע את זה

* אם אתה יודע לכתוב סקריפטים של SHELL אז כמו שאמרתי זה עוד אופציה שהיא בדרך כלל יותר אהודה על VBA-ים

* לגבי ההרשאות כמובן שאני מדבר על הרשאות בשרת שמבצע את המחיקה ולא זה שכותב את הקבצים. אם הקבצים נכתבו על ידי שרת אחד אז יש סיכוי טוב שהקובץ קיבל הרשאות לפי המשתמש בשרת שכתב את הקובץ ואולי זה לא מתאים למשתמש של השרת האחר... תבדוק אני מציע

* לגבי הכוכבית אתה מתכוון שאתה לא יודע מה זה הכוכבית או לא יודע לעבוד עם xp_cmdshell ?
xp_cmdshell מאפשר להריץ כל פקודת SHELL דרך ה SQL. פקודות SHELL
אתה יכול לעבור על המדריך הקצר הזה: http://www.horstmann.com/bigj/help/windows/tutorial.html

** בקיצור: תבחר איזה דרך הכי קרובה למה שאתה יודע ושיש לך בסיס בה ונוכל להתמקד בדרך הזו.
 

roy22222

New member
הרשאות ועוד

בדקתי שוב את נושא ההרשאות. יש הרשאות לכל העולם וחברים לעשות מה בא להם בקבצים (נכון לא אובטח אבל נעשה לצורך הבדיקה. )

עם זה קוד VB אני יכול להכניס אותו לקובץ BAT ולהריץ אותו עם הסקזולר של מערכת ההפעלה לא?
אשמח לסקריפט כזה.

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

תודה בכל מקהר
 
למעלה