הגדרת מסד נתונים של Oracle כמקור להעברה חד-פעמית

בדף הזה מוסבר איך להגדיר את מסד הנתונים של Oracle כמקור להעברה חד-פעמית באמצעות Database Migration Service. כדי להשתמש ב-Database Migration Service כדי לשלוף נתונים ממסד הנתונים של Oracle, צריך להעניק את ההרשאות המתאימות לחשבון המשתמש שישמש לחיבור למסד הנתונים ולגישה לסכימה ולאובייקטים של קוד.

כברירת מחדל, Database Migration Service מנסה לגשת לכל ההגדרות של האובייקטים דרך DBA_VIEWS. הגישה אל DBA_VIEWS ניתנת עם ההרשאה SELECT ANY DICTIONARY. אם חשבון המשתמש להעברה לא יכול לגשת לתצוגות DBA, Database Migration Service חוזר ל- ALL_VIEWS. הגישה הזו מאפשרת לכם גמישות רבה בהגדרת מודל אבטחה שתואם בצורה הטובה ביותר לדרישות שלכם.

לשלבי ההגדרה המדויקים, אפשר לעיין בקטע שמתייחס למסד הנתונים של המקור:

הגדרת מסד נתונים של Amazon RDS ל-Oracle

כדי להגדיר את מסדי הנתונים של מקור אמזון RDS להעברה חד-פעמית, צריך להעניק לחשבון המשתמש שבו ישתמש Database Migration Service את ההרשאות המתאימות.

בכל פקודה, מחליפים את USER_NAME בשם של חשבון המשתמש שבו משתמשים להעברה. הפעלת הפקודות האלה מעניקה הרשאות קריאה מ-V$DATABASE, שנדרשות לאימות.

GRANT CONNECT TO USER_NAME;
GRANT CREATE SESSION TO USER_NAME;
GRANT SELECT ANY TABLE TO USER_NAME;
GRANT SELECT ANY DICTIONARY TO USER_NAME;
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','USER_NAME','SELECT');

הגדרת מסד נתונים של Oracle

כדי להגדיר את מסדי הנתונים של Oracle כמקור להעברה חד-פעמית, צריך להעניק לחשבון המשתמש שבו ישתמש Database Migration Service את ההרשאות המתאימות.

בכל פקודה, מחליפים את USER_NAME בשם של חשבון המשתמש שבו משתמשים להעברה. הפעלת הפקודות האלה מעניקה הרשאות קריאה מ-V$DATABASE, שנדרשות לאימות.

GRANT CONNECT TO USER_NAME;
GRANT CREATE SESSION TO USER_NAME;
GRANT SELECT ANY TABLE TO USER_NAME;
GRANT SELECT ANY DICTIONARY TO USER_NAME;
GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;

הגדרת מסד נתונים של Oracle שאפשר לחבר (PDB)

Database Migration Service תומך בארכיטקטורת מולטי-טננט של Oracle, שבה מסד נתונים של קונטיינר (CDB) אחד מכיל מסד נתונים אחד או יותר שניתן להוספה (PDB). כל מסד נתונים ניתן לחיבור הוא מסד נתונים עצמאי עם מזהה ושם ייחודיים, ואפשר לנהל אותו באופן עצמאי.

כדי להגדיר מסד נתונים של Oracle שאפשר לחבר אותו ל-Database Migration Service, צריך לבצע את השלבים הבאים:

  1. יוצרים משתמש רגיל.

    למשתמש רגיל יש זהות זהה במאגר CDB$ROOT ובמסדי הנתונים הניתנים לחיבור. משתמש רגיל יכול להתחבר למסד הנתונים הבסיסי ולבצע פעולות בתוכו, וגם בכל מסד נתונים שאפשר להוסיף לו תוספים, אם יש לו הרשאות לכך. שם המשתמש הנפוץ חייב להתחיל ב-C## או ב-c##.

  2. נותנים את ההרשאות המתאימות למשתמש הרגיל שישמש לחיבור למסד הנתונים. צריך הרשאות שונות ברמת הקונטיינר CDB$ROOT וברמת מסד הנתונים הניתן לחיבור.

    בכל פקודה, מחליפים את USER_NAME בשם של חשבון המשתמש שבו משתמשים להעברה. הפעלת הפקודות האלה מעניקה הרשאות קריאה מ-V$DATABASE, שנדרשות לצורך אימות.

    • מתחברים למאגר CDB$ROOT ומריצים את הפקודות הבאות:
      GRANT CREATE SESSION TO USER_NAME;
      GRANT SET CONTAINER TO USER_NAME;
      GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
      GRANT EXECUTE_CATALOG_ROLE TO USER_NAME;
    • מתחברים למסד הנתונים הניתן לחיבור ומריצים את הפקודות הבאות:
      GRANT CREATE SESSION TO USER_NAME;
      GRANT SET CONTAINER TO USER_NAME;
      GRANT SELECT ANY TABLE TO USER_NAME;
      GRANT SELECT ANY DICTIONARY TO USER_NAME;
      GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;