Macchina MSSQL Server: differenze tra le versioni
Nessun oggetto della modifica |
|||
| (29 versioni intermedie di uno stesso utente non sono mostrate) | |||
| Riga 1: | Riga 1: | ||
{{#breadcrumb: Amazon_Web_Services | Macchina MySQL Database Server}} | <!-- {{#breadcrumb: Amazon_Web_Services | Macchina MySQL Database Server}} --> | ||
Fonte: https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-ver16&tabs=ubuntu2204<br/> | Fonte: https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-ver16&tabs=ubuntu2204<br/> | ||
| Riga 16: | Riga 16: | ||
sudo apt update | sudo apt update | ||
sudo apt-get install -y mssql-server | sudo apt-get install -y mssql-server mssql-server-fts | ||
sudo /opt/mssql/bin/mssql-conf setup | sudo /opt/mssql/bin/mssql-conf setup | ||
| Riga 44: | Riga 44: | ||
Per avere accesso al file system di questa macchina condividiamo i folder tramite '''Samba'''.<br/> | Per avere accesso al file system di questa macchina condividiamo i folder tramite '''Samba'''.<br/> | ||
Sarà possibile accedervi solo passando dalla rete interna, dalla macchina <code>IIS</code> | Sarà possibile accedervi solo passando dalla rete interna, dalla macchina <code>IIS</code> | ||
Liberare la '''porta del gruppo di sicurezza''' <code>445</code> (si trova nei preconfigurati col nome <code>Samba</code>) | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
| Riga 53: | Riga 55: | ||
# password la solita: W3bm0b1l! | # password la solita: W3bm0b1l! | ||
# Aggiungere designbest al gruppo dei sudoers | # Aggiungere designbest al gruppo dei sudoers e di mssql | ||
sudo adduser designbest sudo | sudo adduser designbest sudo | ||
sudo adduser designbest mssql | |||
# Assegnare i corretti permessi alla cartella dei backup | |||
sudo chown designbest:mssql /opt/mssql/backup -R | |||
sudo chmod 775 /opt/mssql/backup -R | |||
# Installare Samba | # Installare Samba | ||
| Riga 79: | Riga 86: | ||
sudo nano /etc/hostname | sudo nano /etc/hostname | ||
</syntaxhighlight> | </syntaxhighlight> | ||
ad esempio <code> | ad esempio <code>mssql</code> | ||
| Riga 87: | Riga 94: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Il '''collegamento a SAMBA da Windows non funziona''' perché [[Macchina_IIS_Web_Server#SAMBA_abilitazione|di default è disattivato]]. | |||
https://learn.microsoft.com/en-us/troubleshoot/windows-server/networking/guest-access-in-smb2-is-disabled-by-default | |||
== Licenza == | |||
* '''CAL (5 utenti)''' <p><code>FG86G-CHH2T-CB7NJ-XT7D2-V8V4X</code><br/> | |||
Acquistata da [https://macrosoft.store/it/ MACROSOFT] con l'account di Cerutty.<br/> | |||
Non la usiamo più, ha il limite degli utenti.</p> | |||
* '''Standard 16 Core''' <p><code>BDJ3K-DRFGP-CNVTG-QHK7F-FC6B6</code><br/> | |||
Acquistata da [https://lalicenza.it LALICENZA] con l'account di Vinci (<span style="font-family:monospace;font-size:0.7rem">s.vincenzi@webmobili.it - W3bm0b1l!</span>).</p> | |||
Per verificare i '''core''' visibili ed effettivamente assegnati, usare | |||
<syntaxhighlight lang="sql> | |||
SELECT scheduler_id, cpu_id, status, is_online FROM sys.dm_os_schedulers | |||
GO | |||
</syntaxhighlight> | |||
Altro script che fa un check di quelle utilizzabili. | |||
<syntaxhighlight lang="sql"> | |||
---------------------------------------------------------------------------------------------------------------- | |||
-- CPU VISIBLE ONLINE CHECK | |||
---------------------------------------------------------------------------------------------------------------- | |||
DECLARE @OnlineCpuCount int | |||
DECLARE @LogicalCpuCount int | |||
SELECT @OnlineCpuCount = COUNT(*) FROM sys.dm_os_schedulers WHERE status = 'VISIBLE ONLINE' | |||
SELECT @LogicalCpuCount = cpu_count FROM sys.dm_os_sys_info | |||
SELECT @LogicalCpuCount AS 'ASSIGNED ONLINE CPU #', @OnlineCpuCount AS 'VISIBLE ONLINE CPU #', | |||
CASE | |||
WHEN @OnlineCpuCount < @LogicalCpuCount | |||
THEN 'You are not using all CPU assigned to O/S! If it is VM, review your VM configuration to make sure you are not maxout Socket' | |||
ELSE 'You are using all CPUs assigned to O/S. GOOD!' | |||
END as 'CPU Usage Desc' | |||
---------------------------------------------------------------------------------------------------------------- | |||
GO | |||
</syntaxhighlight> | |||
== Aggiornamenti == | |||
⚠ Prestare attenzione, quando si aggiorna questa macchina col comando | |||
<syntaxhighlight lang="bash"> | |||
sudo apt update && sudo apt upgrade -y | |||
</syntaxhighlight> | |||
il database rimane in down per circa 5/10 minuti, aggiornare solo in pausa pranzo o di sera. | |||
[[Category:AWS]] | [[Category:AWS]] | ||
Versione attuale delle 09:03, 30 lug 2025
Creare un' istanza privata con almeno 2GB di RAM (min t2.small)
Assegnare all'istanza il Ruolo IAM creato in precedenza
IAM_Identity_Center#Assegnare_Ruolo_IAM_alle_istanze_EC2
sudo apt update
sudo apt upgrade
curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
sudo apt update
sudo apt-get install -y mssql-server mssql-server-fts
sudo /opt/mssql/bin/mssql-conf setup
sudo systemctl status mssql-server --no-pager
Prima di restorare qualsiasi database,
è importanto settare la default collation lanciando
# Stoppare il servizio
sudo systemctl stop mssql-server
# Eseguire il comando a servizio stoppato
sudo /opt/mssql/bin/mssql-conf set-collation
# Startare il servizio
sudo systemctl start mssql-server
e digitare Latin1_General_CI_AS
Sql Management Studio
[modifica]Per collegarsi da Sql Management Studio utilizzare aws cli per creare il port forwarding verso la porta 1433
Importante: il parametro Server name non deve avere localhost ma 127.0.0.1
Condivisione Samba
[modifica]Per avere accesso al file system di questa macchina condividiamo i folder tramite Samba.
Sarà possibile accedervi solo passando dalla rete interna, dalla macchina IIS
Liberare la porta del gruppo di sicurezza 445 (si trova nei preconfigurati col nome Samba)
# Creare una cartella di condivisione dei backup
sudo mkdir /opt/mssql/backup
# Creare l'utente designbest
sudo adduser designbest
# password la solita: W3bm0b1l!
# Aggiungere designbest al gruppo dei sudoers e di mssql
sudo adduser designbest sudo
sudo adduser designbest mssql
# Assegnare i corretti permessi alla cartella dei backup
sudo chown designbest:mssql /opt/mssql/backup -R
sudo chmod 775 /opt/mssql/backup -R
# Installare Samba
sudo apt install samba cifs-utils
# Aggiungere l'utente a Samba
sudo smbpasswd -a designbest
Poi editare il file di configurazione principale
sudo nano /etc/samba/smb.conf
andare al fondo e aggiungere una sezione
[DatabaseBackup] comment = Cartella di condivisione dei backup dei database read only = no locking = yes path = /opt/mssql/backup guest ok = no
specificando in path la cartella da condividere.
Cambiare l'hostname con un nome "amico"
sudo nano /etc/hostname
ad esempio mssql
Restartare il servizio
sudo systemctl restart smbd
Il collegamento a SAMBA da Windows non funziona perché di default è disattivato.
Licenza
[modifica]- CAL (5 utenti)
FG86G-CHH2T-CB7NJ-XT7D2-V8V4X
Acquistata da MACROSOFT con l'account di Cerutty.
Non la usiamo più, ha il limite degli utenti.
- Standard 16 Core
BDJ3K-DRFGP-CNVTG-QHK7F-FC6B6
Acquistata da LALICENZA con l'account di Vinci (s.vincenzi@webmobili.it - W3bm0b1l!).
Per verificare i core visibili ed effettivamente assegnati, usare
SELECT scheduler_id, cpu_id, status, is_online FROM sys.dm_os_schedulers
GO
Altro script che fa un check di quelle utilizzabili.
----------------------------------------------------------------------------------------------------------------
-- CPU VISIBLE ONLINE CHECK
----------------------------------------------------------------------------------------------------------------
DECLARE @OnlineCpuCount int
DECLARE @LogicalCpuCount int
SELECT @OnlineCpuCount = COUNT(*) FROM sys.dm_os_schedulers WHERE status = 'VISIBLE ONLINE'
SELECT @LogicalCpuCount = cpu_count FROM sys.dm_os_sys_info
SELECT @LogicalCpuCount AS 'ASSIGNED ONLINE CPU #', @OnlineCpuCount AS 'VISIBLE ONLINE CPU #',
CASE
WHEN @OnlineCpuCount < @LogicalCpuCount
THEN 'You are not using all CPU assigned to O/S! If it is VM, review your VM configuration to make sure you are not maxout Socket'
ELSE 'You are using all CPUs assigned to O/S. GOOD!'
END as 'CPU Usage Desc'
----------------------------------------------------------------------------------------------------------------
GO
Aggiornamenti
[modifica]⚠ Prestare attenzione, quando si aggiorna questa macchina col comando
sudo apt update && sudo apt upgrade -y
il database rimane in down per circa 5/10 minuti, aggiornare solo in pausa pranzo o di sera.