Questo articolo fornisce istruzioni dettagliate per l'installazione di SQL Server 2019 per Linux su Red Hat Enterprise Linux (RHEL) 8.
Ho eseguito questi passaggi utilizzando RHEL 8.3, ma dovrebbero funzionare anche sulle edizioni RHEL da 7.3 a 7.8 e da 8.0 a 8.2.
È necessario disporre di almeno 2 GB di memoria prima di installare SQL Server sulla macchina Red Hat. Se lo stai installando su una macchina virtuale, dovresti avere almeno 2 GB di memoria allocati.
Installa Python 2
SQL Server richiede Python 2 e OpenSSL 1.0, che non è incluso in RHEL 8.
Per installare python2 e openssl10, apri il terminale ed esegui i seguenti comandi:
sudo yum install python2
sudo yum install compat-openssl10
Il codice seguente configura python2 come interprete predefinito:
sudo alternatives --config python
Quando eseguo quel codice, mi sono state presentate le seguenti opzioni:
There are 3 programs which provide 'python'. Selection Command *+ 1 /usr/libexec/no-python 2 /usr/bin/python3 3 /usr/bin/python2 Enter to keep the current selection[+], or type selection number:
Nel mio caso, ho selezionato 3
, perché rappresenta /usr/bin/python2
. Questo creerà un collegamento simbolico da /usr/bin/python2
a /usr/bin/python
.
Sulla tua macchina potrebbe essere diverso. Assicurati di selezionare il numero che corrisponde a /usr/bin/python2
sul tuo sistema.
Ora che l'abbiamo fatto, possiamo procedere e installare SQL Server.
Installa SQL Server
I seguenti passaggi sono quelli che ho usato per installare SQL Server 2019 per Linux su Red Hat Enterprise Linux 8.3. Questi dovrebbero funzionare anche sulle edizioni RHEL da 7.3 a 7.8 e da 8.0 a 8.2.
Scarica il file di configurazione del repository Red Hat di Microsoft SQL Server 2019:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
Nota :Se stai installando su RHEL 7, cambia il percorso da /rhel/8/
a /rhel/7/
.
Installa SQL Server:
sudo yum install -y mssql-server
Lascia che funzioni durante l'installazione. Al termine, dovresti vedere un messaggio come questo:
+--------------------------------------------------------------+ Please run 'sudo /opt/mssql/bin/mssql-conf setup' to complete the setup of Microsoft SQL Server +--------------------------------------------------------------+
Seguito da vicino da:
Complete!
Questo è il tuo segnale per eseguire impostazione di mssql-conf :
sudo /opt/mssql/bin/mssql-conf setup
Segui le istruzioni per scegliere la tua edizione, accettare il contratto di licenza e impostare la password sa.
Assicurati di impostare una password complessa (lunghezza minima 8 caratteri, comprese lettere maiuscole e minuscole, 10 cifre in base e/o simboli non alfanumerici).
Ecco le varie edizioni di SQL Server tra cui puoi scegliere, così come gli altri messaggi presentati in questo passaggio:
Choose an edition of SQL Server: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded 7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum 8) I bought a license through a retail sales channel and have a product key to enter. Details about editions can be found at https://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409 Use of PAID editions of this software requires separate licensing through a Microsoft Volume Licensing program. By choosing a PAID edition, you are verifying that you have the appropriate number of licenses in place to install and run this software. Enter your edition(1-8): 2 The license terms for this product can be found in /usr/share/doc/mssql-server or downloaded from: https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409 The privacy statement can be viewed at: https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409 Do you accept the license terms? [Yes/No]:Yes Enter the SQL Server system administrator password: Confirm the SQL Server system administrator password: Configuring SQL Server… ForceFlush is enabled for this instance. ForceFlush feature is enabled for log durability. Created symlink /etc/systemd/system/multi-user.target.wants/mssql-server.service → /usr/lib/systemd/system/mssql-server.service. Setup has completed successfully. SQL Server is now starting.
Nel mio caso, ho selezionato 2
per l'edizione Developer, ma assicurati di selezionare l'edizione applicabile ai tuoi scopi.
Verifica lo stato di SQL Server
È possibile eseguire il comando seguente per verificare che SQL Server sia in esecuzione:
systemctl status mssql-server
Questo dovrebbe essere eseguito rapidamente e restituire un insieme conciso di informazioni, comprese le parole attivo (in esecuzione) .
Connessioni remote
Per consentire le connessioni remote, dovrai aprire la porta di SQL Server sul firewall.
La porta predefinita di SQL Server è TCP 1433.
Se stai utilizzando FirewallD , puoi utilizzare i seguenti comandi:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload
Installa gli strumenti della riga di comando
Ora che hai installato SQL Server, avrai bisogno di una sorta di strumento per connetterti ad esso.
I seguenti passaggi ti consentiranno di configurare due strumenti della riga di comando di SQL Server:sqlcmd e bcp .
Scarica il file di configurazione del repository Microsoft Red Hat:
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
Se hai una versione precedente di mssql-tools installato, il codice seguente rimuoverà tutti i pacchetti unixODBC precedenti:
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
Se non sei sicuro, puoi andare avanti ed eseguirlo comunque. Se mssql-tools non è installato, potresti ricevere un messaggio come questo:
Updating Subscription Management repositories. No match for argument: unixODBC-utf16 No match for argument: unixODBC-utf16-devel No packages marked for removal. Dependencies resolved. Nothing to do. Complete!
Ora puoi installare mssql-tools con il pacchetto per sviluppatori unixODBC:
sudo yum install -y mssql-tools unixODBC-devel
Ti verrà chiesto di accettare i termini della licenza due volte. Se accetti i termini, inserisci YES
in entrambe le occasioni.
Aggiungi al PERCORSO
Puoi facoltativamente aggiungere il /opt/mssql-tools/bin/
alla tua variabile di ambiente PATH, in modo da poter eseguire gli strumenti senza dover fornire il percorso completo.
Per creare sqlcmd/bcp accessibile dalla shell bash per le sessioni di accesso:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Per creare sqlcmd/bcp accessibile dalla shell bash per sessioni interattive/non di accesso:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
Connetti a SQL Server
Ora che SQL Server è installato e sono installati anche gli strumenti della riga di comando, è possibile utilizzare gli strumenti della riga di comando per connettersi a SQL Server.
Inserisci quanto segue, ma sostituisci <YourPassword>
con la tua password:
sqlcmd -S localhost -U SA -P '<YourPassword>'
In alternativa, puoi omettere -P '<YourPassword>'
e ti verrà invece richiesto.
Per connetterti a un'istanza remota, cambia localhost
al nome della macchina o all'indirizzo IP e assicurati di avere la porta 1433 aperta sul firewall.
Una volta che ti sei connesso correttamente, dovresti vedere un messaggio simile a questo:
1>
Da qui, puoi utilizzare T-SQL per creare database, eseguire query e altro.
Per ora, inserisci il codice seguente per verificare la tua versione di SQL Server:
SELECT @@version
GO
Dovresti vedere qualcosa del genere:
Microsoft SQL Server 2019 (RTM-CU8) (KB4577194) - 15.0.4073.23 (X64) Sep 23 2020 16:03:08 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Red Hat Enterprise Linux 8.3 (Ootpa))
Un'opzione GUI
Azure Data Studio è uno strumento GUI che puoi usare per amministrare i database di SQL Server, sul computer locale o remoto.
Vedere Come installare Azure Data Studio su Red Hat per le istruzioni di installazione, inclusi gli screenshot. Puoi installarlo tramite la GUI o dalla riga di comando.
Inoltre, se non conosci SQL Server, dai un'occhiata al mio tutorial su SQL Server su Quackit.