וובמאסטר - תיכנות ובניית אתרים

שימוש ב-DTS להעברת בסיס נתונים

entry/‏ 18 נובמבר, 2002
F+
F-

כאשר אנו בונים בסיס נתונים של SQL Server לאתר, לרוב אנחנו מתחילים לעבוד על המחשב המקומי, ורק כאשר הכל עובד, מעבירים אותו לשרת ה"אמיתי".
מכיוון שבסיס נתונים מסוג SQL Server אינו פשוט קובץ אחד, כמו למשל קבצי ה-mdb של אקסס, אנחנו לא יכולים פשוט להעביר אותו לשרת דרך FTP.
ישנה אפשרות להעביר את מבנה בסיס הנתונים ואת הנתונים עצמם, אם משתשים ב-DTS wizard בתוכנת ה-Enterprise Manager. אך פעולה זו היא חלקית בלבד, כי למרות שמבנה הטבלאות והנתונים עצמם מועברים, אינדקסים, מפתחות, constraints ו-user-defined datatypes אינם מועברים כראוי, ויש צורך לעבור על כל בסיס הנתונים וליצור אותם מחדש.
האפשרות השנייה, היא לבנות חבילת DTS ן (Data Transformation Services) אישית, שתבצע את כל פעולת ההעברה. אך אם השרת אינו שלך, סביר להניח שלא יהיו לך ההרשאות המתאימות.

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

חשוב!
לפני שאתה מתחיל בהעברה, ברר מול חברת האחסון שלך, האם ניתן לשלוח להם קובץ גיבוי של בסיס הנתונים, ושהןם ישחזרו אותו עברוך. זה יחסוך לך הרבה מאוד עבודה וזמן.

חילול סקריפט ה-SQL


קליק ימני על שם ה-DB
All Tasks
Generate SQL Script


Select all objects

באפשרותך לבחור, לפי צרכיך, האם להוסיף לסקריפט שורת DROP לכל אובייקט לפני שהוא נוצר.

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

1. פתח את הקובץ בעורך טקסט כלשהו המאפשר חיפוש והחלפה, והחלף את כל המופעים של "dbo" (או שם המשתמש עליו נבנה בסיס הנתונים בשרת המקומי), לשם המשתמש שקיבלת מחברת האחסון.

2. כשה-Enterprise Manager מחולל את הסקריפט, הוא לא מתיד מקפיד על סדר הדברים. לכן יכול להווצר מצב בו קוד היצירה של טבלה, מופיע לפני קוד היצירה של טבלה אחרת בה היא תלויה. לכן יש לעבור על הסקריפט, ולהזיז את הקודים למקומם הנכון.

לבסוף, יש להריץ את הסקריפט על ה-Query Analyzer המחובר לשרת המרוחק, כדי ליצור את האובייקטים.

העברת הנתונים באמצעות DTS


קליק ימני על שם ה-DB
All Tasks
Export Data











בחר all tables אך הורד את הבחירה מ- all views.









עכשיו כל הנתונים אמורים להיות כבר בבסיס הנתונים החדש. נותר רק להעתיק כמה אובייקטים.
חזור על הפעולות עד שתגיע למסך זה:








הורד את הסימון מ-"Show all tables ", כי כל הטבלאות כבר הועברו.



וודא כי כל אפשרויות האבטחה אינן מסומנות.








בהצלחה!

entry

סטודיו לבניית אתרים שהוקם בינואר 2005
תגיות: SQL‏  /  DTS‏  /  SQL Server‏  /  import‏  /  export‏  /  העברה‏  

תגובות בפייסבוק

תגובות למאמר



תגיות פופולאריות

X
הצטרף לעמוד שלנו בפייסבוק להישאר מעודכן!
וובמאסטר © כל הזכויות שמורות