Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Migration von Oracle Database zu Amazon RDS for Oracle mit AWS Schema Conversion Tool
Einige Dinge, die Sie bei der Migration von Oracle-Schema und Code zu Amazon RDS for Oracle beachten sollten:
-
AWS SCT kann Verzeichnisobjekte zum Objektbaum hinzufügen. Verzeichnisobjekte sind logische Strukturen, die jeweils ein physisches Verzeichnis im Dateisystem des Servers darstellen. Sie können Verzeichnisobjekte mit Paketen wie DBMS _LOB, UTL _FILE, DBMS FILE _ _TRANSFER, dem DATAPUMP Hilfsprogramm usw. verwenden.
-
AWS SCT unterstützt die Konvertierung von Oracle-Tablespaces in eine Amazon RDS for Oracle-DB-Instance. Oracle speichert Daten logisch in Tabellenräumen und physisch in Datendateien, die dem entsprechenden Tabellenraum zugeordnet sind. In Oracle können Sie einen Tabellenraum mit Datendateinamen erstellen. Amazon RDS unterstützt Oracle Managed Files (OMF) nur für Datendateien, Protokolldateien und Kontrolldateien. AWS SCT erstellt die benötigten Datendateien während der Konvertierung.
-
AWS SCT kann Rollen und Rechte auf Serverebene konvertieren. Die Oracle-Datenbank-Engine verwendet rollenbasierte Sicherheit. Eine Rolle ist eine Sammlung von Sonderrechten, die Sie einem Benutzer gewähren oder entziehen können. Eine vordefinierte Rolle in AmazonRDS, genanntDBA, gewährt normalerweise alle Administratorrechte auf einer Oracle-Datenbank-Engine. Die folgenden Rechte sind für die DBA Rolle in einer RDS Amazon-DB-Instance, die die Oracle-Engine verwendet, nicht verfügbar:
-
Ändern der Datenbank
-
Ändern des Systems
-
Erstellen eines Verzeichnisses
-
Gewähren von Sonderrechten
-
Gewähren einer Rolle
-
Erstellen eines externen Auftrags
Sie können einer Amazon RDS for Oracle-Benutzerrolle alle anderen Rechte gewähren, einschließlich erweiterter Filter- und Spaltenberechtigungen.
-
-
AWS SCT unterstützt die Konvertierung von Oracle-Jobs in Jobs, die auf Amazon RDS for Oracle ausgeführt werden können. Es gibt einige Einschränkungen für die Konvertierung, unter anderem:
-
Ausführbare Aufträge werden nicht unterstützt.
-
Zeitplanjobs, die den ANYDATA Datentyp als Argument verwenden, werden nicht unterstützt.
-
-
Oracle Real Application Clusters (RAC) One Node ist eine Option zur Oracle Database Enterprise Edition, die mit Oracle Database 11g Release 2 eingeführt wurde. Amazon RDS for Oracle unterstützt die RAC Funktion nicht. Verwenden Sie Amazon RDS Multi-AZ für eine hohe Verfügbarkeit.
In einer Multi-AZ-Bereitstellung stellt Amazon RDS automatisch ein synchrones Standby-Replikat in einer anderen Availability Zone bereit und verwaltet es. Die primäre DB-Instance wird über die Availability Zone synchron auf eine Standby-Replikation repliziert. Diese Funktionalität sorgt für Datenredundanz, vermeidet das Einfrieren von E/A-Vorgängen und minimiert Latenzspitzen während der Durchführung von Systemsicherungen.
-
Oracle Spatial bietet ein SQL Schema und Funktionen, die das Speichern, Abrufen, Aktualisieren und Abfragen von Geodatensammlungen in einer Oracle-Datenbank erleichtern. Oracle Locator bietet Funktionen, die normalerweise zur Unterstützung von auf Internet- und Mobilfunkdiensten basierenden Anwendungen und partnerbasierten Lösungen erforderlich sind. GIS Oracle Locator ist ein begrenzter Teilbereich von Oracle Spatial.
Um die Funktionen von Oracle Spatial und Oracle Locator zu verwenden, fügen Sie die SPATIAL Option oder LOCATOR Option (sich gegenseitig ausschließend) zur Optionsgruppe Ihrer DB-Instance hinzu.
Es gibt einige Voraussetzungen für die Verwendung von Oracle Spatial und Oracle Locator auf einer Amazon RDS for Oracle DB-Instance:
-
Die Instance sollte Oracle Enterprise Edition Version 12.1.0.2.v6 oder höher oder 11.2.0.4.v10 oder höher verwenden.
-
Die Instanz sollte sich in einer virtuellen privaten Cloud () befinden. VPC
-
Die Instance sollte die Version der DB-Instance-Klasse sein, die die Oracle-Funktion unterstützen kann. Beispiel: Oracle Spatial wird für die DB-Instance-Klassen db.m1.small, db.t1.micro, db.t2.micro und db.t2.small nicht unterstützt. Weitere Informationen finden Sie unter Unterstützung von DB-Instance-Klassen für Oracle.
-
Die Instance muss die Option „Auto Minor Version Upgrade“ (Upgrade einer Unterversion automatisch durchführen) aktiviert haben. Amazon RDS aktualisiert Ihre DB-Instance auf die neueste Version von Oracle, PSU wenn Sicherheitslücken mit einem CVSS Wert von mehr als 9 oder andere gemeldete Sicherheitslücken vorliegen. Weitere Informationen finden Sie unter
-
Wenn Ihre DB-Instance Version 11.2.0.4.v10 oder höher ist, müssen Sie die Option installieren. XMLDB Weitere Informationen finden Sie unter
-
Sie sollten über eine Oracle Spatial-Lizenz von Oracle verfügen. Weitere Informationen finden Sie unter Oracle Spatial and Graph
in der Oracle-Dokumentation.
-
-
Data Guard ist in der Oracle Database Enterprise Edition enthalten. Verwenden Sie für eine hohe Verfügbarkeit die Amazon RDS Multi-AZ-Funktion.
In einer Multi-AZ-Bereitstellung stellt Amazon RDS automatisch ein synchrones Standby-Replikat in einer anderen Availability Zone bereit und verwaltet es. Die primäre DB-Instance wird über die Availability Zone synchron auf eine Standby-Replikation repliziert. Diese Funktionalität sorgt für Datenredundanz, vermeidet das Einfrieren von E/A-Vorgängen und minimiert Latenzspitzen während der Durchführung von Systemsicherungen.
-
AWS SCT unterstützt die Konvertierung von DBMS SCHEDULER Oracle_-Objekten bei der Migration zu Amazon RDS for Oracle. Aus dem AWS SCT Bewertungsbericht geht hervor, ob ein Zeitplanobjekt konvertiert werden kann. Weitere Informationen zur Verwendung von Zeitplanobjekten mit Amazon RDS finden Sie in der RDSAmazon-Dokumentation.
-
Für Konvertierungen von Oracle zu Amazon RDS für Oracle wird DB Links unterstützt. Ein Datenbanklink ist ein Schemaobjekt in einer Datenbank, mit dessen Hilfe Sie auf Objekte in einer anderen Datenbank zugreifen können. Die andere Datenbank muss keine Oracle-Datenbank sein. Für den Zugriff auf andere als Oracle-Datenbanken müssen Sie jedoch Oracle Heterogeneous Services verwenden.
Sobald Sie einen Datenbank-Link erstellt haben, können Sie den Link in SQL Anweisungen verwenden, um auf Tabellen, Ansichten und SQL PL/Objekte in der anderen Datenbank zu verweisen. Um einen Datenbank-Link zu verwenden, fügen Sie ihn
@dblink
an den Tabellen-, View- oder SQL PL/Objektnamen an. Mit der Anweisung können Sie eine Tabelle oder Ansicht in der anderen Datenbank abfragen. SELECT Weitere Informationen zur Verwendung von Oracle-Datenbanklinks finden Sie in der Oracle-Dokumentation. Weitere Informationen zur Verwendung von Datenbank-Links mit Amazon RDS finden Sie in der RDSAmazon-Dokumentation.
-
Der AWS SCT Bewertungsbericht enthält Servermetriken für die Konvertierung. Zu diesen Metriken über Ihre Oracle-Instance gehören:
-
Datenverarbeitungs- und Speicherkapazität der Ziel-DB-Instance.
-
Nicht unterstützte Oracle-Funktionen wie Real Application Clusters, die Amazon RDS nicht unterstützt.
-
Datenträger-Lese-/Schreib-Last
-
Durchschnittlicher Datenträger-Gesamtdurchsatz
-
Serverinformationen wie Servername, Betriebssystem, Hostname und Zeichensatz.
-
Rechte RDS für Oracle als Ziel
Um zu Amazon RDS for Oracle zu migrieren, erstellen Sie einen privilegierten Datenbankbenutzer. Sie können das folgende Codebeispiel verwenden.
CREATE USER
user_name
IDENTIFIED BYyour_password
; -- System privileges GRANT DROP ANY CUBE BUILD PROCESS TOuser_name
; GRANT ALTER ANY CUBE TOuser_name
; GRANT CREATE ANY CUBE DIMENSION TOuser_name
; GRANT CREATE ANY ASSEMBLY TOuser_name
; GRANT ALTER ANY RULE TOuser_name
; GRANT SELECT ANY DICTIONARY TOuser_name
; GRANT ALTER ANY DIMENSION TOuser_name
; GRANT CREATE ANY DIMENSION TOuser_name
; GRANT ALTER ANY TYPE TOuser_name
; GRANT DROP ANY TRIGGER TOuser_name
; GRANT CREATE ANY VIEW TOuser_name
; GRANT ALTER ANY CUBE BUILD PROCESS TOuser_name
; GRANT CREATE ANY CREDENTIAL TOuser_name
; GRANT DROP ANY CUBE DIMENSION TOuser_name
; GRANT DROP ANY ASSEMBLY TOuser_name
; GRANT DROP ANY PROCEDURE TOuser_name
; GRANT ALTER ANY PROCEDURE TOuser_name
; GRANT ALTER ANY SQL TRANSLATION PROFILE TOuser_name
; GRANT DROP ANY MEASURE FOLDER TOuser_name
; GRANT CREATE ANY MEASURE FOLDER TOuser_name
; GRANT DROP ANY CUBE TOuser_name
; GRANT DROP ANY MINING MODEL TOuser_name
; GRANT CREATE ANY MINING MODEL TOuser_name
; GRANT DROP ANY EDITION TOuser_name
; GRANT CREATE ANY EVALUATION CONTEXT TOuser_name
; GRANT DROP ANY DIMENSION TOuser_name
; GRANT ALTER ANY INDEXTYPE TOuser_name
; GRANT DROP ANY TYPE TOuser_name
; GRANT CREATE ANY PROCEDURE TOuser_name
; GRANT CREATE ANY SQL TRANSLATION PROFILE TOuser_name
; GRANT CREATE ANY CUBE TOuser_name
; GRANT COMMENT ANY MINING MODEL TOuser_name
; GRANT ALTER ANY MINING MODEL TOuser_name
; GRANT DROP ANY SQL PROFILE TOuser_name
; GRANT CREATE ANY JOB TOuser_name
; GRANT DROP ANY EVALUATION CONTEXT TOuser_name
; GRANT ALTER ANY EVALUATION CONTEXT TOuser_name
; GRANT CREATE ANY INDEXTYPE TOuser_name
; GRANT CREATE ANY OPERATOR TOuser_name
; GRANT CREATE ANY TRIGGER TOuser_name
; GRANT DROP ANY ROLE TOuser_name
; GRANT DROP ANY SEQUENCE TOuser_name
; GRANT DROP ANY CLUSTER TOuser_name
; GRANT DROP ANY SQL TRANSLATION PROFILE TOuser_name
; GRANT ALTER ANY ASSEMBLY TOuser_name
; GRANT CREATE ANY RULE SET TOuser_name
; GRANT ALTER ANY OUTLINE TOuser_name
; GRANT UNDER ANY TYPE TOuser_name
; GRANT CREATE ANY TYPE TOuser_name
; GRANT DROP ANY MATERIALIZED VIEW TOuser_name
; GRANT ALTER ANY ROLE TOuser_name
; GRANT DROP ANY VIEW TOuser_name
; GRANT ALTER ANY INDEX TOuser_name
; GRANT COMMENT ANY TABLE TOuser_name
; GRANT CREATE ANY TABLE TOuser_name
; GRANT CREATE USER TOuser_name
; GRANT DROP ANY RULE SET TOuser_name
; GRANT CREATE ANY CONTEXT TOuser_name
; GRANT DROP ANY INDEXTYPE TOuser_name
; GRANT ALTER ANY OPERATOR TOuser_name
; GRANT CREATE ANY MATERIALIZED VIEW TOuser_name
; GRANT ALTER ANY SEQUENCE TOuser_name
; GRANT DROP ANY SYNONYM TOuser_name
; GRANT CREATE ANY SYNONYM TOuser_name
; GRANT DROP USER TOuser_name
; GRANT ALTER ANY MEASURE FOLDER TOuser_name
; GRANT ALTER ANY EDITION TOuser_name
; GRANT DROP ANY RULE TOuser_name
; GRANT CREATE ANY RULE TOuser_name
; GRANT ALTER ANY RULE SET TOuser_name
; GRANT CREATE ANY OUTLINE TOuser_name
; GRANT UNDER ANY TABLE TOuser_name
; GRANT UNDER ANY VIEW TOuser_name
; GRANT DROP ANY DIRECTORY TOuser_name
; GRANT ALTER ANY CLUSTER TOuser_name
; GRANT CREATE ANY CLUSTER TOuser_name
; GRANT ALTER ANY TABLE TOuser_name
; GRANT CREATE ANY CUBE BUILD PROCESS TOuser_name
; GRANT ALTER ANY CUBE DIMENSION TOuser_name
; GRANT CREATE ANY EDITION TOuser_name
; GRANT CREATE ANY SQL PROFILE TOuser_name
; GRANT ALTER ANY SQL PROFILE TOuser_name
; GRANT DROP ANY OUTLINE TOuser_name
; GRANT DROP ANY CONTEXT TOuser_name
; GRANT DROP ANY OPERATOR TOuser_name
; GRANT DROP ANY LIBRARY TOuser_name
; GRANT ALTER ANY LIBRARY TOuser_name
; GRANT CREATE ANY LIBRARY TOuser_name
; GRANT ALTER ANY MATERIALIZED VIEW TOuser_name
; GRANT ALTER ANY TRIGGER TOuser_name
; GRANT CREATE ANY SEQUENCE TOuser_name
; GRANT DROP ANY INDEX TOuser_name
; GRANT CREATE ANY INDEX TOuser_name
; GRANT DROP ANY TABLE TOuser_name
; GRANT SELECT_CATALOG_ROLE TOuser_name
; GRANT SELECT ANY SEQUENCE TOuser_name
; -- Database Links GRANT CREATE DATABASE LINK TOuser_name
; GRANT CREATE PUBLIC DATABASE LINK TOuser_name
; GRANT DROP PUBLIC DATABASE LINK TOuser_name
; -- Server Level Objects (directory) GRANT CREATE ANY DIRECTORY TOuser_name
; GRANT DROP ANY DIRECTORY TOuser_name
; -- (for RDS only) GRANT EXECUTE ON RDSADMIN.RDSADMIN_UTIL TOuser_name
; -- Server Level Objects (tablespace) GRANT CREATE TABLESPACE TOuser_name
; GRANT DROP TABLESPACE TOuser_name
; -- Server Level Objects (user roles) /* (grant source privileges with admin option or convert roles/privs as DBA) */ -- Queues grant execute on DBMS_AQADM touser_name
; grant aq_administrator_role touser_name
; -- for Materialized View Logs creation GRANT SELECT ANY TABLE TOuser_name
; -- Roles GRANT RESOURCE TOuser_name
; GRANT CONNECT TOuser_name
;
Ersetzen Sie im vorherigen Beispiel user_name
durch den Namen Ihres Benutzers. Dann ersetze your_password
mit einem sicheren Passwort.
Einschränkungen bei der Konvertierung von Oracle zu Amazon RDS for Oracle
Einige Einschränkungen, die Sie bei der Migration von Oracle-Schema und Code zu Amazon RDS for Oracle berücksichtigen sollten:
Eine vordefinierte Rolle in AmazonRDS, genanntDBA, gewährt normalerweise alle Administratorrechte auf einer Oracle-Datenbank-Engine. Die folgenden Rechte sind für die DBA Rolle in einer RDS Amazon-DB-Instance, die die Oracle-Engine verwendet, nicht verfügbar:
-
Ändern der Datenbank
-
Ändern des Systems
-
Erstellen eines Verzeichnisses
-
Gewähren von Sonderrechten
-
Gewähren einer Rolle
-
Erstellen eines externen Auftrags
Sie können einer RDS Oracle-Benutzerrolle alle anderen Rechte gewähren.
-
-
Amazon RDS for Oracle unterstützt traditionelle Prüfungen, detaillierte Prüfungen mit dem FGA Paket DBMS _ und Oracle Unified Auditing.
-
Amazon RDS für Oracle unterstützt keine Erfassung von Änderungsdaten (CDC). Um dies CDC während und nach einer Datenbankmigration zu tun, verwenden Sie AWS Database Migration Service.