Anslutning till Oracle Database (OracleToSQL)

okt 25, 2021
admin
  • 06/04/2020
  • 5 minuter att läsa
    • n
    • T
    • M
    • r
    • S
    • +2

För att migrera Oracle-databaser till SQL Server, måste du ansluta till den Oracle-databas som du vill migrera. När du ansluter hämtar SSMA metadata om alla Oracle-scheman och visar dem sedan i rutan Oracle Metadata Explorer. SSMA lagrar information om databasservern, men lagrar inte lösenord.

Din anslutning till databasen förblir aktiv tills du stänger projektet. När du öppnar projektet igen måste du ansluta igen om du vill ha en aktiv anslutning till databasen.

Metadata om Oracle-databasen uppdateras inte automatiskt. Om du vill uppdatera metadata i Oracle Metadata Explorer måste du istället uppdatera dem manuellt. Mer information finns i avsnittet ”Uppdatera Oracle-metadata” längre fram i det här avsnittet.

Krävda Oracle-behörigheter

Det konto som används för att ansluta till Oracle-databasen måste minst ha följande behörigheter:

  • CONNECT
    Krävs för att ansluta (skapa en session) till databasen.

  • SELECT ANY DICTIONARY
    Krävs för att fråga i systemets ordbokstabeller (till exempel SYS.MLOG$) för att upptäcka alla objekt.

Detta gör det möjligt för SSMA att läsa in alla objekt i schemat som ägs av den anslutande användaren. I de flesta verkliga scenarier finns det referenser mellan scheman mellan lagrade procedurer och SSMA måste kunna upptäcka alla refererade objekt för att konverteringen ska lyckas. För att få metadata för objekt som definierats i andra scheman måste kontot ha följande ytterligare behörigheter:

  • SELECT ANY TABLE
    Behövs för att upptäcka tabeller, vyer, materialiserade vyer och synonymer i andra scheman.

  • SELECT ANY SEQUENCE
    Behövs för att upptäcka sekvenser i andra scheman.

  • CREATE ANY PROCEDURE
    Behövs för att upptäcka PL/SQL för procedurer, funktioner och paket i andra scheman.

  • CREATE ANY TRIGGER
    Behövs för att upptäcka triggerdefinitioner i andra scheman.

  • CREATE ANY TYPE
    Krävs för att upptäcka typer som definierats i andra scheman.

Vissa SSMA-funktioner kräver ytterligare behörigheter. Om du till exempel vill använda funktionerna Tester och Backup Management måste du ge din anslutande användare följande rättigheter:

  • EXECUTE ANY PROCEDURE
    Krävs för att köra procedurer och funktioner som du vill testa i alla scheman.

  • CREATE ANY TABLE och ALTER ANY TABLE
    Behövs för att skapa och ändra tillfälliga tabeller för ändringsspårning och säkerhetskopiering.

  • INSERT ANY TABLE och UPDATE ANY TABLE
    Behövs för att infoga data för ändringsspårning och säkerhetskopiering i tillfälliga tabeller.

  • DROP ANY TABLE
    Behövs för att ta bort tillfälliga tabeller som används för ändringsspårning och säkerhetskopiering.

  • CREATE ANY INDEX och ALTER ANY INDEX
    Behövs för att skapa och ändra index på tillfälliga tabeller som används för spårning av ändringar och säkerhetskopiering.

  • DROP ANY INDEX
    Behövs för att ta bort index på tillfälliga tabeller som används för spårning av ändringar och säkerhetskopiering.

  • CREATE ANY TRIGGER och ALTER ANY TRIGGER
    Krävs för att skapa och ändra tillfälliga utlösare som används för ändringsspårning.

  • DROP ANY TRIGGER
    Krävs för att ta bort tillfälliga utlösare som används för ändringsspårning.

Anm.

Det här är en generisk uppsättning behörigheter som krävs för att SSMA ska fungera korrekt. Om du vill begränsa omfattningen av din migrering till en delmängd av scheman kan du göra det genom att ge ovanstående behörigheter till den begränsade mängden objekt, i stället för ALL. Även om det är möjligt kan det vara mycket svårt att korrekt identifiera alla beroenden och därmed hindra SSMA från att fungera korrekt. Det rekommenderas starkt att hålla sig till den generiska uppsättningen enligt definitionen ovan för att eliminera eventuella problem med behörigheter under migreringsprocessen.

Etablering av en anslutning till Oracle

När du ansluter till en databas läser SSMA databasens metadata och lägger sedan till dessa metadata i projektfilen. Dessa metadata används av SSMA när den konverterar objekt till SQL Server-syntax och när den migrerar data till SQL Server. Du kan bläddra bland metadata i rutan Oracle Metadata Explorer och granska egenskaper för enskilda databasobjekt.

Viktigt

Innan du försöker ansluta dig ska du se till att databasservern körs och kan acceptera anslutningar.

För att ansluta till Oracle

  1. I menyn Arkiv väljer du Anslut till Oracle.
    Om du tidigare har anslutit till Oracle kommer kommandonamnet att vara Återanslut till Oracle.

  2. I rutan Provider väljer du Oracle Client Provider eller OLE DB Provider, beroende på vilken provider som är installerad. Standardvärdet är Oracle client.

  3. I rutan Mode väljer du antingen Standard mode, TNSNAME mode eller Connection string mode.
    Använd standardmode för att ange servernamn och port. Använd läget för servicenamn för att ange Oracle-tjänstens namn manuellt. Använd läget Anslutningssträng för att ange en fullständig anslutningssträng.

  4. Om du väljer Standardläge anger du följande värden:

    1. I rutan Servernamn anger eller väljer du namnet eller IP-adressen för databasservern.
    2. Om databasservern inte är konfigurerad för att acceptera anslutningar på standardporten (1521) anger du det portnummer som används för Oracle-anslutningar i rutan Serverport.
    3. I rutan Oracle SID anger du systemidentifieraren.
    4. I rutan Användarnamn anger du ett Oracle-konto som har nödvändiga behörigheter.
    5. I rutan Lösenord anger du lösenordet för det angivna användarnamnet.
  5. Om du väljer läget TNSNAME anger du följande värden:

    1. I rutan Anslutningsidentifiering anger du anslutningsidentifiering (TNS-alias) för databasen.
    2. I rutan Användarnamn anger du ett Oracle-konto som har nödvändiga behörigheter.
    3. I rutan Lösenord anger du lösenordet för det angivna användarnamnet.
  6. Om du väljer Anslutningssträngläge anger du en anslutningssträng i rutan Anslutningssträng.
    Följande exempel visar en OLE DB-anslutningssträng:

    Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;

    Följande exempel visar en Oracle Client-anslutningssträng som använder integrerad säkerhet:

    Data Source=MyOracleDB;Integrated Security=yes;

    För mer information se Anslut till Oracle (OracleToSQL).

Har du återanslutit dig till Oracle

Din anslutning till databasservern är aktiv tills du stänger projektet. När du öppnar projektet igen måste du återansluta om du vill ha en aktiv anslutning till databasen. Du kan arbeta offline tills du vill uppdatera metadata, ladda databasobjekt till SQL Server och migrera data.

Färskning av Oracle-metadata

Metadata om Oracle-databasen uppdateras inte automatiskt. Metadata i Oracle Metadata Explorer är en ögonblicksbild av metadata när du anslöt för första gången eller när du senast uppdaterade metadata manuellt. Du kan manuellt uppdatera metadata för alla scheman, ett enskilt schema eller enskilda databasobjekt.

För att uppdatera metadata

  1. Säkerställ att du är ansluten till databasen.

  2. I Oracle Metadata Explorer markerar du kryssrutan bredvid varje schema eller databasobjekt som du vill uppdatera.

  3. Högerklicka på Scheman eller det enskilda schemat eller databasobjektet och välj sedan Uppdatera från databasen.
    Om du inte har en aktiv anslutning visar SSMA dialogrutan Anslut till Oracle så att du kan ansluta.

  4. I dialogrutan Uppdatera från databasen anger du vilka objekt som ska uppdateras.

    • För att uppdatera ett objekt klickar du på det aktiva fältet intill objektet tills en pil visas.
    • För att förhindra att ett objekt uppdateras klickar du på det aktiva fältet intill objektet tills ett X visas.
    • För att uppdatera eller avböja en kategori av objekt klickar du på det aktiva fältet intill kategorimappen.

    Om att visa definitionerna av färgkodningen klickar du på knappen Legend.

  5. Klicka på OK.

Nästa steg i migreringsprocessen är att Anslut till en instans av SQL Server.

Se även

Migrering av Oracle-databaser till SQL Server (OracleToSQL)

.

Lämna ett svar

Din e-postadress kommer inte publiceras.