Migrazione dal server del database PostgreSQL a MS SQL

ADSelfService Plus è dotato di un server del database PostgreSQL per archiviare gli attributi di base e i dati di registrazione degli utenti. Consente anche di effettuare la migrazione dal PostgreSQL integrato a MS SQL. Questa guida descrive il processo di migrazione del server del database.

Versioni supportate di MS SQL Server: 2005, 2008, 2008 R2, 2012, 2014, 2016, 2017 e 2019

Prerequisiti

Nell'istanza del server MS SQL utilizzata per la migrazione, controlla che siano soddisfatte le seguenti condizioni:

  1. Il servizio del browser del server SQL deve essere abilitato e in funzione.
  2. Per la configurazione di rete del server SQL, deve essere abilitato il protocollo TCP/IP.
  3. Tutti i protocolli del client devono essere abilitati.
  4. L'accesso al server SQL è delegato a un utente con autorizzazioni sysadmin e db_owner rispettivamente ai livelli di server e database.

Consulta l'appendice A per la configurazione dei prerequisiti 1, 2 e 3. Consulta l'appendice B per la configurazione del prerequisito 4.

Migrazione da PostgreSQL a MS SQL

La migrazione dei dati dal database PostgreSQL di ADSelfService Plus a MS SQL avviene con la seguente procedura:

Passo 1: Backup del database ADSelfService Plus

Se stai installando ADSelfService Plus per la prima volta e non hai nessun dato di cui effettuare il backup, salta questo passo e vai al prossimo passo. Se invece vuoi effettuare il backup dei dati. Segui questa procedura:

  1. Arresta ADSelfService Plus:
    • Se ADSelfService Plus è in esecuzione in modalità console, fai clic sull'icona Windows, cerca ADSelfService Plus e scegli Arresta ADSelfService Plus.
    • Se ADSelfService Plus è in esecuzione come servizio, fai clic sull'icona Windows. Cerca i servizi. Nella finestra che si apre, scegli ManageEngine ADSelfService Plus e seleziona l'opzione di arresto del servizio.
  2. Vai a <directory di installazione di ADSelfService Plus>\bin..
    Nota: Per impostazione predefinita, ADSelfService Plus è installato in: C:\ManageEngine\ADSelfService Plus.
  3. Esegui il file backupDB (Windows Batch) come amministratore. Non terminare finché il processo non è completato.
    Backing up the ADSelfService Plus database
  4. Verrà effettuato il backup dei dati nel database predefinito di ADSelfService Plus e verranno archiviati in <directory di installazione di ADSelfService Plus>\backup\OfflineBackup _<orario del backup>.
    Nota: Se l'errore più in basso viene visualizzato durante l'esecuzione del file backupDB, verifica che il prodotto sia stato arrestato prima di procedere.
    Change PostgreSQL to MS SQL

Passo 2: Migrazione dei dati da PostgreSQL a MS SQL

È importante verificare di aver arrestato la console e i servizi di ADSelfService Plus prima di questo processo.

  1. Se il server MS SQL è installato su un computer remoto, installa gli strumenti necessari della riga di comando e il client nativo di MS SQL sul computer remoto e prosegui con il passo successivo.
    Nota: I link forniti più in basso ti reindirizzeranno alla pagina principale del pacchetto di funzionalità di Microsoft SQL. Premendo il corrispondente pulsante di scaricamento, ottieni una serie di strumenti della riga di comando e i formati client nativi. Installa il corrispondente client nativo SQL o gli strumenti della riga di comando in base alla versione del server SQL e al tipo di CPU della macchina su cui è installato ADSelfService Plus. Gli strumenti della riga di comando contengono il termine SQLCMD e il file del client nativo può essere trovato nel nome sqlncli.
    Versione del server SQL Strumenti della riga di comando (cmdlnutils) Client nativo (ncli) Driver ODBC (odbc)
    2008 https://www.microsoft.com/en-in/download/details.aspx?id=44272 https://www.microsoft.com/en-in/download/details.aspx?id=44272 Non necessario.
    2012 https://www.microsoft.com/en-in/download/details.aspx?id=29065 https://www.microsoft.com/en-in/download/details.aspx?id=29065 Non necessario.
    2014 https://www.microsoft.com/en-US/download/details.aspx?id=53164 Non necessario. https://www.microsoft.com/en-in/download/details.aspx?id=36434
    2016, 2017, and 2019 https://www.microsoft.com/en-us/download/details.aspx?id=56833 Non necessario. https://www.microsoft.com/en-us/download/details.aspx?id=56833
  2. Copia i seguenti file nella cartella <directory di installazione di ADSelfService Plus>\bin.
    • bcp.exe- \Tools\Binn\bcp.exe
    • bcp.rll- \Tools\Binn\Resources\1033\bcp.rll
    Nota: Per garantire che le dipendenze di bcp.exe siano installate correttamente, apri il prompt dei comandi in <directory di installazione di ADSelfService Plus>\bin ed esegui bcp.exe /v. Se viene visualizzata la versione del file bcp.exe, significa che le dipendenze sono installate correttamente.
  3. Vai a <directory di installazione di ADSelfService Plus>\bin.
  4. Se non hai dati da migrare, esegui ChangeDB (file batch di Windows) come amministratore.
    Migrating PostgreSQL Data to MS SQL
    Nota: Per effettuare la migrazione con i dati intatti, apri il prompt dei comandi, vai a <directory di installazione di ADSelfService Plus>\bin ed esegui il comando changeDB.bat true con privilegi di amministratore.
  5. La procedura guidata di configurazione del database si apre. Seleziona server MS SQL come tipo di server e inserisci il Nome dell’host dell'istanza dell server MS SQL.
  6. Controlla che il server browser SQL sia in esecuzione e che le porte 1433 per TCP e 1434 per UDP siano aperte, in modo che le istanze del server MS SQL disponibili vengano recuperate e visualizzate. I valori di Numero di porta e Istanze del server MS SQL disponibili vengono caricati automaticamente. Dall'elenco visualizzato delle istanze, seleziona quella che vuoi utilizzare e inserisci il Nome del database.
  7. Se scegli Autenticazione Windows, inserisci Nome del dominio, Nome utente e Password dell'account utente che ha accesso al server.
    Nota:
    • L'autenticazione Windows non può essere utilizzata quando il server di ADSelfService Plus e il server MS SQL si trovano in domini diversi. In questo caso, utilizza l'autenticazione del server SQL.
    • Se ADSelfService Plus è già in esecuzione come servizio di Windows, puoi utilizzare il suo account di servizio per la configurazione del database o creare un account separato. Se crei un account separato, verifica che l'account di servizio ADSelfService Plus abbia anche l'autorizzazione necessaria per accedere al server MS SQL. Dai un'occhiata all'appendice B per maggiori informazioni sulle autorizzazioni necessarie.
    MS SQL database setup
  8. Fai clic su Prova per verificare che le credenziali inserite siano corrette. Se la connessione non riesce, è possibile che le credenziali inserite non siano corrette. Verifica che le credenziali siano corrette.
  9. Fai clic su Salva.

Appendice A

Configurazione del server MS SQL

Se hai già un'istanza MS SQL funzionante, questo passo non è necessario. Segui questa procedura per configurare un'istanza del server MS SQL appena installato:

  1. Apri il gestore delle configurazioni del server SQL o esegui compmgmt.msc nel prompt dei comandi.
  2. Vai a Servizi del server SQL > Browser del server SQL. Verifica che il browser del server SQL sia in esecuzione.
    Configuring MS SQL Server
  3. Vai alla Configurazione della rete del server SQL e fai doppio clic su Protocolli per <nome dell'istanza>.
  4. Fai clic sul protocollo TCP/IP e abilitalo.
  5. Torna al gestore della configurazione del server SQL. Nel pannello di sinistra:
    • Vai a Configurazione di rete del server SQL > Protocolli per SQLEXPRESS e abilita tutti i protocolli.
    • Vai a Configurazione del client nativo SQL > Protocolli del client e abilita tutti i protocolli.
  6. Riavvia il servizio del server SQL affinché le modifiche vengano applicate.
    Nota: SQLEXPRESS è il nome dell'istanza fornita durante la configurazione del server MS SQL in generale; può tuttavia essere modificato. In questo documento, viene utilizzato SQLEXPRESS.

Appendice B

Delega dell'accesso al server MS SQL agli utenti

Per completare il processo di migrazione, hai bisogno di un account amministratore del database per la connessione a MS SQL. Se ADSelfService Plus è già in esecuzione come servizio di Windows, puoi utilizzare il suo account di servizio come account amministratore del database. Verifica che l'account abbia i privilegi necessari. Se questo account non è presente in MS SQL, segui la procedura più in basso per creare un nuovo account utente e assegnare le autorizzazioni necessarie.

  1. Effettua l'accesso a SQL Server Management Studio.
  2. Nel pannello di sinistra, vai a Nome della macchina > SQLEXPRESS > Sicurezza > Accessi.
  3. Fai clic destro su Accessi e seleziona Nuovo accesso.
  4. Inserisci un Nome di accesso e scegli se utilizzare autenticazione di Windows o autenticazione del server SQL.
    • Se scegli autenticazione di Windows, inserisci il nome dell'utente Windows NT a cui deve essere fornito l'accesso.
    • Se scegli autenticazione del server SQL, ti verrà richiesto di creare un nuovo Nome utente e Password.
  5. Il nuovo utente deve avere il ruolo sysadmin a livello di server e il ruolo db_owner a livello di database. Segui questa procedura per fornire le autorizzazioni dei ruoli sysadmin e db_owner:
    • Vai a Nome della macchina > SQLEXPRESS > Sicurezza > Accessi. Fai clic destro sull'utente > Proprietà.
    • Vai ai Ruoli del server, seleziona la casella di controllo sysadmin e fai clic su OK.
    • Vai a Mappatura degli utenti nel pannello di sinistra. Tra gli Utenti mappati a questo elenco di accesso, seleziona la casella vicina al database. Nell'appartenenza del ruolo database per l'elenco, seleziona db_owner e fai clic su OK.
      Delegating MS SQL Server access to users
      Nota: Per i dettagli sui ruoli utente, consulta i seguenti documenti:

In generale, l'account configurato ha bisogno di uno di questi tre insiemi di privilegi per completare correttamente il processo di migrazione:

  Ruolo di database necessario Autorizzazioni necessarie
Insieme 1 db_owner Non richiesto
Insieme 2 db_datareader,
db_datawriter,
db_ddladmin,
db_backupoperator.
Non richiesto
Insieme 3 db_ddladmin ALTER ANY TABLE,
ALTER ANY AGGREGATE,
ALTER ANY DEFAULT,
ALTER ANY FUNCTION,
ALTER ANY PROCEDURE,
ALTER ANY QUEUE,
ALTER ANY RULE,
ALTER ANY SYNONYM,
ALTER ANY TYPE,
ALTER ANY VIEW,
ALTER ANY XML SCHEMA COLLECTION,
ALTER ANY REFERENCES,
CONTROL ON CERTIFICATE::[ZOHO_CERT] TO [user],
CONTROL ON SYMMETRIC KEY::[##MS_DatabaseMasterKey##] TO [user],
CONTROL ON SYMMETRIC KEY::[ZOHO_SYMM_KEY] TO [user]
Importante: Nota che devi avere l'autorizzazione db_owner durante la migrazione da PostgreSQL a MS SQL per la prima volta. Dopo aver effettuato correttamente una migrazione, puoi revocare l'autorizzazione db_owner per l'account e fornire le autorizzazioni dell'insieme 2 o dell'insieme 3.