Databasemigratieservice wordt om verschillende redenen essentieel, waaronder migratie van een propriëtaire database naar een open source-database, migratie tussen propriëtaire of open source-databases en migratie naar een beheerde service. We onderzoeken de migratie van een Oracle-database van EC2 naar RDS en in de eerste van vier artikelen, "Een Oracle-database migreren van AWS EC2 naar AWS RDS, deel 1", hebben we een Oracle Database-instantie op EC2 en een andere op RDS gemaakt. In dit tweede artikel zullen we een databasegebruiker maken, een databasetabel maken om te migreren en een DMS-replicatie-instantie maken, inclusief replicatie-eindpunten.
Dit artikel heeft de volgende secties:
- Een databasegebruiker maken
- Een databasetabel maken
- Een AWS DMS-replicatie-instantie maken
- Replicatie-eindpunten maken
- Conclusie
Een databasegebruiker maken
Maak een Oracle Database-gebruiker voor gebruik met DMS:
SQL> CREATE USER DVOHRA IDENTIFIED BY Calgary_10 DEFAULT TABLESPACE SYSTEM QUOTA 10M ON SYSTEM TEMPORARY TABLESPACE TEMP QUOTA 5M ON SYSTEM; 2 3 4 5 User created.
Verleen de gebruikersrechten in de Oracle-database. Slechts een subset van privileges (http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.Privileges) is vereist, maar verleent alle privileges.
SQL> grant all privileges to DVOHRA identified by password; Grant succeeded.
Oracle Database, wanneer gebruikt als brondatabase-eindpunt in Database Migration Service, moet in ARCHIVELOG staan modus. Controleer of de database in de ARCHIVELOG-modus staat.
SQL> select log_mode from v$database; LOG_MODE ------------ ARCHIVELOG
Een databasetabel maken
We zullen twee soorten migratietaken bespreken:
- Alleen bestaande gegevens migreren
- Bestaande gegevens migreren en lopende wijzigingen repliceren
Om bestaande gegevens te migreren, maakt u een databasetabel in het DVOHRA-schema met de volgende DDL-instructie:
SQL> CREATE TABLE DVOHRA.wlslog(time_stamp VARCHAR2(255) PRIMARY KEY,category VARCHAR2(255),type VARCHAR2(255), servername VARCHAR2(255),code VARCHAR2(255),msg VARCHAR2(255)); Table created.
Voeg tabelgegevens toe met de volgende DMS-instructies.
SQL> INSERT INTO DVOHRA.wlslog(time_stamp,category,type, servername,code,msg) VALUES('Apr-8-2014-7:06:16-PM-PDT', 'Notice','WebLogicServer','AdminServer','BEA-000365', 'Server state changed to STANDBY'); INSERT INTO DVOHRA.wlslog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:17-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to STARTING'); INSERT INTO DVOHRA.wlslog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:18-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to ADMIN'); INSERT INTO DVOHRA.wlslog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:19-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to RESUMING'); INSERT INTO DVOHRA.wlslog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:20-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000361','Started WebLogic AdminServer'); INSERT INTO DVOHRA.wlslog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:21-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000365','Server state changed to RUNNING'); INSERT INTO DVOHRA.wlslog(time_stamp,category,type,servername, code,msg) VALUES('Apr-8-2014-7:06:22-PM-PDT','Notice', 'WebLogicServer','AdminServer','BEA-000360','Server started in RUNNING mode'); 1 row created. SQL> 1 row created. SQL> 1 row created. SQL> 1 row created. SQL> 1 row created. SQL> 1 row created. SQL> 1 row created. SQL> COMMIT; Commit complete.
Een AWS DMS-replicatie-instantie maken
We zullen dezelfde replicatie-instantie gebruiken voor het maken van twee verschillende soorten migratietaken. Als u een replicatie-instantie wilt maken, klikt u op Migratie maken in het DMS-dashboard, zoals weergegeven in afbeelding 1.
Figuur 1: Migratie maken
Klik op de welkomstpagina voor Database Migration Service op Volgende , zoals weergegeven in afbeelding 2.
Figuur 2: Welkom>Volgende
In de Replicatie-instantie maken , geef een naam en beschrijving op, zoals weergegeven in Afbeelding 3. Selecteer een instantieklasse en versie van de replicatie-engine; de standaardinstellingen hiervoor worden gebruikt. Selecteer VPC als de VPC waarin de RDS DB-instantie is gemaakt. Selecteer de optie Nee om geen Multi-AZ te maken replicatie instantie. Selecteer het selectievakje Openbaar toegankelijk om de replicatie-instantie openbaar toegankelijk te maken.
Figuur 3: Replicatie-instantie maken
In Geavanceerd , selecteer de Toegewezen opslagruimte (standaard is 50 GB), de Replicatie Subnet Group , en Beschikbaarheidszone (moet Geen voorkeur zijn ). Selecteer de VPC-beveiligingsgroep(en) als de beveiligingsgroep waarin het RDS DB-exemplaar wordt gemaakt. Selecteer de KMS-hoofdsleutel als dms . De geavanceerde instellingen worden weergegeven in Afbeelding 4.
Figuur 4: Geavanceerde instellingen
Selecteer het standaard Onderhoud instellingen en klik op Volgende , zoals weergegeven in afbeelding 5.
Figuur 5: Replicatie-instantie maken>Volgende
De Verbind bron- en doeldatabase-eindpunten pagina wordt weergegeven en de replicatie-instantie wordt gemaakt, zoals aangegeven door het bericht in Afbeelding 6.
Figuur 6: Replicatie-instantie wordt gemaakt
Wanneer de replicatie-instantie is gemaakt, wordt het bericht Replicatie-instantie succesvol aangemaakt wordt weergegeven (zie afbeelding 7).
Figuur 7: Replicatie-instantie gemaakt
Een nieuwe replicatie-instantie wordt toegevoegd in DMS>Replicatie-instanties , zoals weergegeven in afbeelding 8.
Figuur 8: DMS>Replicatie-instanties
Replicatie-eindpunten maken
De Verbind bron- en doeldatabase-eindpunten pagina heeft velden voor Servernaam voor bron- en doeldatabase-eindpunten, zoals eerder weergegeven in afbeelding 6. De naam van de brondatabase-eindpuntserver is de openbare DNS van de EC2-instantie waarop de Oracle-database wordt uitgevoerd. De openbare DNS kan worden verkregen via de EC2-beheerconsole, zoals weergegeven in afbeelding 9.
Figuur 9: Openbare DNS-naam
De servernaam voor het doeldatabase-eindpunt is afgeleid van het RDS DB-instantie-eindpunt dat wordt vermeld in de RDS-console in Afbeelding 10. Het eindpunt heeft de indeling Hostnaam:Poort .
Figuur 10: Eindpunt RDS DB-instantie
Selecteer Bron-engine en Doel-engine als orakel (zie afbeelding 11). Geef de servernaam op voor bron- en doeldatabase-eindpunten. Specificeer Poort als 1521 voor zowel bron- als doeldatabase-eindpunten.
Figuur 11: Bron- en doelverbindingsdetails
Specificeer SSL-modus als geen voor zowel bron- als doeldatabase-eindpunten. Specificeer Gebruikersnaam voor brondatabase als DVOHRA en doeldatabase als de gebruiker geconfigureerd in de RDS DB-instantie. Specificeer het Wachtwoord voor de brondatabase als het wachtwoord dat is opgegeven bij het maken van een database-instance op EC2 en geef het wachtwoord voor de doeldatabase op als het wachtwoord dat wordt gebruikt in de configuratie van de RDS DB-instance. Specificeer SID voor de brondatabase als de Oracle SID (ORCL) die is opgegeven bij het maken van Oracle Database op EC2. Geef de SID voor het doeldatabase-eindpunt op als de SID (ORCL) die is opgegeven bij het maken van de RDS DB-instantie, zoals weergegeven in Afbeelding 12.
Figuur 12: Verbindingsgegevens bron- en doeldatabase
In de Geavanceerde sectie, selecteer de KMS-hoofdsleutel als dms voor zowel bron- als doeldatabase-eindpunten, zoals weergegeven in Afbeelding 13.
Figuur 13: Geavanceerde instellingen
Klik op Test uitvoeren om de verbinding met de brondatabase te testen, zoals weergegeven in Afbeelding 14.
Figuur 14: Test uitvoeren
Klik op dezelfde manier op Test uitvoeren voor de doeldatabaseverbinding.
Het bericht Eindpuntverbinding testen wordt weergegeven voor zowel bron- als doeldatabaseverbindingen, zoals weergegeven in Afbeelding 15.
Figuur 15: Eindpuntverbindingen testen
Als er een verbinding tot stand wordt gebracht, verschijnt het bericht Verbinding getest wordt weergegeven (zie afbeelding 16).
Figuur 16: Verbinding succesvol getest
Een database-eindpunt kan ook worden toegevoegd met Eindpunt maken in DMS>Endpoints. Wanneer u de optie Eindpunt maken gebruikt, heeft de testeindpuntverbinding ook de mogelijkheid om de VPC te selecteren en Replicatie-instantie voor het eindpunt, zoals weergegeven in Afbeelding 17. Klik op Opslaan om de eindpuntverbinding op te slaan.
Figuur 17: Eindpuntverbinding testen en opslaan
De bron- en doeldatabase-eindpuntverbindingen worden weergegeven in DMS>Eindpunten in Afbeelding 18.
Figuur 18: Bron- en doeldatabase-eindpunten
Conclusie
In dit tweede van vier artikelen hebben we een databasegebruiker gemaakt, een databasetabel gemaakt om te migreren en een replicatie-instantie gemaakt met inbegrip van replicatie-eindpunten. In het derde artikel gaan we in op het migreren van bestaande gegevens van de bron (EC2) naar doeleindpunten (RDS).