Questa pagina illustra i seguenti metodi:
- Esportare e importare un database
- Eseguire la migrazione utilizzando la funzionalità di backup e ripristino di SQL
Il metodo di migrazione ideale è influenzato dal tempo di inattività accettabile per un database specifico e dalle sue dimensioni. La tecnica più utilizzata è il metodo di backup e ripristino.
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
Per generare una stima dei costi in base all'utilizzo previsto,
utilizza il Calcolatore prezzi.
Al termine delle attività descritte in questo documento, puoi evitare la fatturazione continua eliminando le risorse che hai creato. Per ulteriori informazioni, consulta la sezione Pulizia.
Prima di iniziare
Assicurati di disporre di quanto segue:
- Un Google Cloud project e un virtual private cloud (VPC) con connettività ai controller di dominio Active Directory.
- Una sottorete da utilizzare per le istanze di macchine virtuali (VM) del cluster di failover di Windows Server (WSFC).
Per completare la guida, hai bisogno anche di un Google Cloud progetto:
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
Al termine di questo tutorial, puoi evitare la fatturazione continua eliminando le risorse che hai creato. Per ulteriori informazioni, vedi Eseguire la pulizia.
Le sezioni seguenti descrivono come eseguire la migrazione di un database SQL Server da un server basato su Windows a uno basato su Linux.
Importare un database SQL in Linux
Questa sezione illustra come esportare un database SQL da un SQL Server basato su Windows e importarlo in un SQL Server basato su Linux utilizzando SQL Server Management Studio (SSMS).
Prerequisiti
Per importare un database SQL in Linux, sono necessari:
Computer Windows con quanto segue:
- SQL Server installato.
- SSMS installato.
- Il database SQL di cui vuoi eseguire la migrazione è presente su questa macchina. Questo tutorial utilizza un database AdventureWorks2022 di esempio.
Macchina Linux con SQL Server installato.
Esportare un database SQL da un server SQL basato su Windows
Per esportare un database SQL da un server SQL basato su Windows, svolgi i seguenti passaggi:
- Sul computer Windows, crea una nuova cartella sull'unità C: e chiamala
export
(c:\export
). - Apri SSMS.
- Nella finestra Connessione, inserisci localhost e fai clic su Connetti.
- In Esplora oggetti, espandi Database.
Fai clic con il tasto destro del mouse sul database di destinazione, seleziona Attività, poi fai clic su Esporta applicazione a livello di dati. Viene visualizzata la procedura guidata Esporta dati.
Nella procedura guidata Esporta dati, seleziona Avanti.
Nella scheda Impostazioni, configura la procedura guidata Esporta dati per salvare il file del pacchetto di backup (BACPAC) (.bacpac) sul disco locale.
Specifica la cartella e il nome del file, come segue:
c:\export\MigrationFile.bacpac
Fai clic su Avanti.
Controlla le impostazioni specificate e fai clic su Fine per avviare il processo di esportazione. Il file .bacpac viene creato correttamente nella posizione scelta. Ora puoi importarli in un SQL Server di destinazione.
Importare un database in Linux
Per importare un database SQL in un server SQL basato su Linux, segui questi passaggi:
- Apri SSMS.
- Nella finestra Connessione, inserisci l'indirizzo IP del server di destinazione e fai clic su Connetti.
- Fai clic con il tasto destro del mouse sulla cartella Database in Esplora oggetti e seleziona Importa applicazione a livello di dati.
Specifica il file .bacpac creato nella procedura di esportazione.
c:\export\MigrationFile.bacpac
Fai clic su Avanti.
Specifica AdventureWorks2022.
AdventureWorks2022
Verifica che il percorso dei dati e dei log mostri le impostazioni predefinite dell'istanza Linux.
Fai clic su Avanti.
Rivedi le impostazioni di importazione e fai clic su Fine per avviare l'importazione.
Fai clic su Chiudi per chiudere la procedura guidata di importazione. Il database è pronto per le connessioni.
Esegui la migrazione utilizzando il backup e il ripristino di SQL
Puoi eseguire la migrazione di un database da SQL Server su Windows a SQL Server su Linux utilizzando la funzionalità di backup e ripristino. Questa sezione fornisce una guida passo passo per aiutarti a trasferire il database nell'ambiente Linux utilizzando questo metodo.
Prerequisiti
Per eseguire la migrazione di un database utilizzando il metodo di backup e ripristino, sono necessari quanto segue:
Computer Windows con quanto segue:
- SQL Server installato.
- SQL Server Management Studio (SSMS) installato.
- Database di cui eseguire la migrazione. Questo documento utilizza il database AdventureWorks2022.
Una macchina Linux con SQL Server installato.
Esegui il backup del database sul computer Windows
Puoi eseguire il backup di un database in un file con Windows utilizzando SSMS nel seguente modo:
- Apri SSMS sulla macchina Windows.
- Nella finestra Connessione, inserisci localhost.
- In Esplora oggetti, espandi Database.
Fai clic con il tasto destro del mouse sul database di destinazione, seleziona Attività e poi fai clic su Esegui il backup….
Nella finestra Esegui il backup del database, verifica che Tipo di backup sia impostato su Completo e che Esegui il backup su sia impostato su Disco. Prendi nota del nome e della posizione del file di backup. Ad esempio, un backup del database su SQL Server 2022 ha una posizione predefinita C:\Programmi\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Backup.
Fai clic su OK per iniziare il backup.
Copia il file di backup sulla tua macchina Linux
Puoi utilizzare un client Secure Copy Protocol (SCP) per caricare il file di backup sulla tua macchina Linux. La procedura seguente utilizza un client riga di comando SCP. Tuttavia, puoi anche utilizzare WinSCP o la shell Git Bash per caricare il file.
Apri un nuovo prompt dei comandi sul computer Windows e vai alla directory contenente il file di backup creato nella sezione Eseguire il backup del database sul computer Windows. Ad esempio:
cd 'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Backup\'
Utilizza il comando
scp
per copiare il file sulla macchina Linux di destinazione. L'esempio seguente utilizza il fileMigrationBackup.bak
creato in precedenza.scp MigrationBackup.bak sysadmin@
LINUX_INTERNAL_IP
:./Sostituisci LINUX_INTERNAL_IP con l'IP della tua macchina Linux.
Spostare il file di backup
Per ripristinare il database in SQL Server su una macchina Linux, devi assicurarti che il file di backup si trovi nella posizione predefinita di proprietà dell'utente mssql
, ovvero /var/opt/mssql
.
Per spostare il file di backup nella directory mssql
, segui questi passaggi:
Dalla macchina Windows, connettiti alla macchina Linux di destinazione utilizzando SSH.
ssh sysadmin@
LINUX_INTERNAL_IP
Sostituisci LINUX_INTERNAL_IP con l'IP della tua macchina Linux.
Crea una nuova directory di backup.
sudo mkdir -p /var/opt/mssql/backup
Sposta il file di backup nella directory appena creata.
sudo mv ~/MigrationBackup.bak /var/opt/mssql/backup
Ripristina il database
Puoi ripristinare il database su una macchina Linux utilizzando SSMS seguendo i seguenti passaggi:
- Apri SSMS sulla tua macchina Windows.
- Nella finestra Connessione, inserisci l'indirizzo IP o il nome host della macchina Linux.
- Specifica le informazioni di Accesso e Password.
Fai clic su Connetti.
In Esplora oggetti, fai clic con il tasto destro del mouse sulla cartella Database e seleziona Ripristina database.
Nella finestra Ripristina database, imposta Origine su Dispositivo, fai clic su … per aprire la finestra di dialogo di selezione del backup.
Nella finestra di dialogo Seleziona dispositivo di backup, fai clic su Aggiungi.
Nel browser di file, fai clic sulla directory \var\opt\mssql\backup e seleziona il file di backup caricato.
Fai clic su OK per accettare la selezione e chiudere la finestra di dialogo.
Esamina i dati inseriti nel supporto di backup e fai clic su OK.
Prima di iniziare a ripristinare il database su una macchina Linux, devi aggiornare la posizione dei file del database ripristinati sulla macchina Linux perché il percorso dal server Windows non esiste sul server Linux.
- Nel menu a sinistra, fai clic su File.
- Seleziona Rilocazione di tutti i file nella cartella per spostare i file ripristinati nella directory dei dati predefinita di SQL Server.
- Fai clic su OK per avviare la procedura di ripristino.
Verifica il ripristino elencando tutti i database sul server. Il database ripristinato dovrebbe essere elencato.
SELECT Name FROM sys.Databases GO
Esegui altre query sul database sottoposto a migrazione.
USE AdventureWorks2022 SELECT top 100 * FROM [Person].[Person] GO
Esegui la pulizia
Al termine del tutorial, puoi eliminare le risorse che hai creato in modo che smettano di utilizzare la quota e di generare addebiti. Le sezioni seguenti descrivono come eliminare o disattivare queste risorse.
Elimina il progetto
Il modo più semplice per eliminare la fatturazione è eliminare il progetto che hai creato per il tutorial.
Per eliminare il progetto:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.