In questa guida installeremo Microsoft Server 2019 in Rocky Linux/Alma Linux 8 o qualsiasi server basato su RHEL. Quindi ci connettiamo con sqlcmd per creare il tuo primo database ed eseguire query.
Controlla anche:
- Come installare MsSQL Server 2019 su Ubuntu 20.04
- Come installare Ms SQL Server 2019 su Ubuntu 20.04
- Installa e configura php per la connessione a MsSQL Server Centos 8
- Come eseguire MsSQL Server 2019 con Docker e Docker-Compose
Sommario
- Aggiornamento del server
- Installazione di Ms SQL Server 2019
- Installa gli strumenti della riga di comando di SQL Server
- Connessione locale
Aggiornamento del server
Assicurati che il tuo server sia aggiornato:
sudo dnf -y update
Installazione di Ms SQL Server 2019
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
Quindi usa questo comando per installare il server
sudo dnf install -y mssql-server
Esegui mssql-conf setup e segui le istruzioni per impostare la password SA e scegli la tua edizione.
sudo /opt/mssql/bin/mssql-conf setup
Uscita:
$ sudo /opt/mssql/bin/mssql-conf setup
usermod: no changes
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): 3
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...
The licensing PID was successfully processed. The new edition is [Express Edition].
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.
Una volta completata la configurazione, verifica che il servizio sia in esecuzione:
sudo systemctl status mssql-server
Uscita:
$ sudo systemctl status mssql-server
● mssql-server.service - Microsoft SQL Server Database Engine
Loaded: loaded (/usr/lib/systemd/system/mssql-server.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2021-08-05 10:31:20 UTC; 31s ago
Docs: https://docs.microsoft.com/en-us/sql/linux
Main PID: 70366 (sqlservr)
Tasks: 131
Memory: 677.2M
CGroup: /system.slice/mssql-server.service
├─70366 /opt/mssql/bin/sqlservr
└─70393 /opt/mssql/bin/sqlservr
Aug 05 10:31:26 prod-db sqlservr[70366]: [318B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [78B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [84B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [145B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [96B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [66B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [96B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [100B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [71B blob data]
Aug 05 10:31:26 prod-db sqlservr[70366]: [124B blob data]
Per consentire le connessioni remote, aprire la porta SQL Server sul firewall su RHEL. La porta predefinita di SQL Server è TCP 1433. Se utilizzi FirewallD per il firewall, 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 di SQL Server
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
Esegui i seguenti comandi per installare mssql-tools con il pacchetto per sviluppatori unixODBC.
sudo yum install -y mssql-tools unixODBC-devel
Per comodità, aggiungi /opt/mssql-tools/bin/ alla tua variabile di ambiente PATH.
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
Connessione locale
Esegui sqlcmd con i parametri per il tuo nome SQL Server (-S), il nome utente (-U) e la password (-P)
sqlcmd -S <ip_address>,1433 -U SA -P "<[email protected]>"
sqlcmd -S localhost -U SA -P '<YourPassword>'
In caso di successo, dovresti arrivare a un prompt dei comandi sqlcmd:1>.
Crea un nuovo database
CREATE DATABASE TestDB
Nella riga successiva, scrivi una query per restituire il nome di tutti i database sul tuo server:
SELECT Name from sys.Databases
I due comandi precedenti non sono stati eseguiti immediatamente. Devi digitare GO su una nuova riga per eseguire i comandi precedenti:
GO
Inserisci dati
USE TestDB
Crea una nuova tabella denominata Inventario:
CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
Inserisci i dati nella nuova tabella:
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
Digita GO per eseguire i comandi precedenti:
GO
Seleziona dati
SELECT * FROM Inventory WHERE quantity > 152;
GO
Per terminare la sessione di sqlcmd, digita QUIT:
QUIT
Conclusione
In questa guida, siamo riusciti a installare Ms SQL Server 2019 in Rocky Linux/Centos 8