Per Server Linux

In questo articolo ti spieghiamo come rendere un server MySQL accessibile dall'esterno.

Quando un server viene creato, normalmente non è possibile alcun accesso esterno al server MySQL. Tuttavia, in alcuni casi, è necessario accedere al server MySQL attraverso la rete. Questo include l'utilizzo di alcuni software di amministrazione di database o l'utilizzo del server come server di database dedicato.

Personalizzare la configurazione di MySQL

Per abilitare l'accesso di rete ad un database MySQL, modifica la configurazione del server MySQL e riavvialo. Puoi modificare la configurazione nel file /etc/my.cnf.

  • Accedi come root sul tuo Server Dedicato e apri il file /etc/my.cnf, per esempio con l'editor vi:

    root@p12345678:~ # vi /etc/my.cnf

  • Cerca la riga bind-address = 127.0.0.1.
    Poiché tramite questo comando il database MySQL accetta connessioni di rete in entrata solo dall'interfaccia loopback, disabilitalo con un carattere di commento ('#'):

    #bind-address = 127.0.0.1

    In alcune distribuzioni Linux la riga di cui sopra non è disponibile. In questo caso la riga che viene commentata è la seguente:

    Skip Networking

  • Riavvia il server del database affinché la modifica della configurazione abbia effetto:

    root@p12345678:~ # /etc/init.d/mysql restart

    Il server MySQL accetta ora connessioni esterne tramite la porta predefinita per MySQL (3306).

Limitare l'accesso al database ad indirizzi IP specifici

  • Usa il seguente comando per accedere alla tua shell MySQL sul tuo server e tieni pronta la password dell'utente root o amministratore:

    root@serverName:~$ mysql -u admin -p

  • Immetti il seguente comando:

    use mysql;

  • Utilizza i seguenti comandi per limitare l'accesso al database ad un indirizzo IP specifico, sostituendo i nomi di esempio e l'indirizzo IP con i dati corrispondenti. Assicurati anche di premere il tasto INVIO dopo ogni ";":

    mysql> update db set Host='123.123.123.123' where Db='yourdatabasename';
    mysql> update user set Host='123.123.123.123' where user='yourdatabaseUsername';

  • Esci dalla shell MySQl con il comando Exit.