Macchina MySQL Database Server

Da Webmobili Wiki.

MediaWiki:Breadcrumbs

Installazione Database Server MySQL.

Creazione istanza privata

Creare una istanza Ubuntu Server privata.
Durante la creazione farsi generare la chiave privata pem (no ppk).
Durante la creazione esplicitare IP privato come 172.31.200.10
(configurazione di rete avanzata => IP Primario)

L'istanza privata non esce su internet, bisogna creare il Gateway NAT prima.

Configurazione dell'istanza

sudo apt update
sudo apt upgrade
sudo dpkg-reconfigure tzdata
sudo adduser designbest

sudo apt install mysql-server mysql-client

Permettere il binding da remoto andando a modificare il file /etc/mysql/mysql.conf.d/mysqld.cnf,
decommentando la riga con bind-address e fissandola a

bind-address = 0.0.0.0

e riavviare

sudo systemct restart mysql.service

Creazione utente Database

Creare un utente in mysql che abbia tutti i privilegi perché phpmyadmin non permette più il login da root

sudo mysql -u root -p

Creare l'utente ( % significa qualsiasi provenienza) ed assegnargli tutti i privilegi a qualsiasi database.

CREATE USER 'designbest'@'%' IDENTIFIED WITH mysql_native_password BY 'W3bm0b1l!';
GRANT ALL PRIVILEGES ON *.* to 'designbest'@'%';
FLUSH PRIVILEGES;
exit

AutoMySQLBackup

Programma che fa in automatico i backup dei database.

sudo apt install automysqlbackup

Settare alcuni parametri editando il file /etc/default/automysqlbackup

BACKUPDIR="/opt/backup/databases"

Schedulare l'esecuzione con

sudo crontab -e

E inserire

25 4 * * * /usr/sbin/automysqlbackup

Ricordarsi: In questo modo i backup crescono di continuo, prima o poi satureranno lo spazio disponibile.
Conviene implementare qualcosa che cancelli automaticamente i backup troppo vecchi.