MSSQL:SQL Server su Linux
From Aino Wiki
Contents
Installazione su Red Hat 8.3
Memo utili:
le aperture come suggerito dal sito di Red Hat sono:
- subscription.rhn.redhat.com:443
- subscription.rhsm.redhat.com:443
- cdn.redhat.com:443
- *.akamaiedge.net:443
- *.akamaitechnologies.com:443
E vs Microsoft:
- packages.microsoft.com:443
Registrazione:
$ subscription-manager register --username xxxxx --password wwwww --auto-attach
Doc installaizone:
Prerequisiti:
$ sudo alternatives --config python # If not configured, install python2 and openssl10 using the following commands: $ sudo yum install python2 $ sudo yum install compat-openssl10 # Configure python2 as the default interpreter using this command: $ sudo alternatives --config python
Installazione SQL Server (RHEL8):
$ sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
Configurazione:
$ sudo /opt/mssql/bin/mssql-conf setup
Verifica:
$ systemctl status mssql-server
Per abilitare le connessioni remote:
$ sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent $ sudo firewall-cmd --reload
Installazione Tools necessari
- ( install the SQL Server command-line tools: sqlcmd and bcp.):
$ sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
- ( install mssql-tools with the unixODBC developer package):
$ sudo yum install -y mssql-tools unixODBC-devel
- ( For convenience, add /opt/mssql-tools/bin/ to your PATH environment variable):
$ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile $ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc $ source ~/.bashrc
Prima connessione ( use sqlcmd to locally connect):
$ sqlcmd -S localhost -U SA -P '<YourPassword>'
If successful, you should get to a sqlcmd command prompt:
1>.
Tools
E' fondamentale installare (vedi Tool RH 8.3) gli strumenti di lavoro da linea comando come:
-
sqlcmd
è un management studio da linea comando; -
bcp
per importare ed esportare files.
Sul come installarli leggere il paragrafo precedente eventualmente rimuovendo la versione precedente.
Dopo l'installazione entrambi i tools non sono visibili all'utente non SU pertanto occorrerà rendere visibile il path e concederne l'accesso come segue:
#To make sqlcmd/bcp accessible from the bash shell for login sessions echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile #To make sqlcmd/bcp accessible from the bash shell for interactive/non-login sessions echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc
Configurazione
Vedi: datavail.com BLOG
Lo scripting tool mssql-conf
per SQL su Linux (SQL on Linux) è l'equivalente di SQL Server Configuration Manager (SSCM) e della stored procedure sp_configure
stored procedure for SQL on Windows. Si potrà usare per impostare i parametri seguenti:
- Agent
- Collation
- Default data directory
- Default log directory
- Default dump directory
- Default error log directory
- Default backup directory
- Memory limit
- TCP port
- Traceflags
- And many others
Elenco completo: docs.microsoft.com
Restart
sudo systemctl restart mssql-server
Operazioni comuni
Backup e Restore
Premesso che converrebbe usare l'ambiente grafico magari usando un altro server anche con Windows e SSMS (UI SQL Server Management Studio.
Eseguire il backup
- lo si può eseguire anche fuori dal server stesso, tramite SSMS da altro server (Windows), la cartella di defaul sarà:
- /var/opt/mssql/data
- /var/opt/mssql/data
per poter accedere alla cartella mssql occorre avere i diritti di amministratore (mediante "sudo su")
- poi copiare\spostare il file nella cartella dove si accede in SFTP con WinSCP:
- /home/UserName
- poi copiare\spostare il file nella cartella dove si accede in SFTP con WinSCP:
Eseguire il restore
- lo si può eseguire anche fuori dal server stesso, tramite SSMS da altro server (Windows), la cartella di defaul sarà:
- /var/opt/mssql/data
Tools
bcp
Esempi
bcp FileToTransferLocally out ~/FileDaEsportare.txt -S localhost,1300 -U UtenteDB -P <your_password> -d SRC_FileTransfer -c -t ','
sqlcmd
Esempi
sqlcmd -S localhost -d BcpSampleDB -U sa -P <your_password> -I -Q "SELECT * FROM TestEmployees;"
SSIS
Leggere Install SQL Server Integration Services (SSIS) on Linux
Varie
-- Commento SELECT * FROM Tabella WHERE 1=1
-- Commento SELECT * FROM Tabella WHERE 1=1
Mappa e Link
MS SQL |
Parole chiave: