7th gennaio 2009

Abilitare connessioni remote su mysql

posted in apache, linux, mysql, web |

Può capitare a volte che sia necessario connettersi a mysql da remoto, pensiamo ad esempio a un sistema in cui il webserver e il server sql risiedano su due macchine differenti.

Dobbiamo quindi permettere al webserver di connettersi in remoto (o anche all’interno della stessa LAN), al server di mysql, per far questo dobbiamo editare il file my.cnf di mysql.

Il sistema che ho utilizzato è ubuntu server 8.04. Ipotizziamo di dover abilitare le connessioni per il nostro server, la macchina che hosta il servizio di mysql avrà indirizzo ip 172.16.46.251.

Editiamo il file

nano /etc/mysql/my.cnf

a questo punto cerchiamo la riga contentente

bind-address            = 127.0.0.1

e sostiuiamola con

bind-address            = 172.16.46.251

ed il gioco è fatto, non abbiamo fatto altro che cambiare il bind del servizio in modo che si mettesse in ascolto sull’ip pubblico invece che solo sul localhost.

Ricordate che dovete anche modificare i permessi di accesso sui database, in quanto sui database già creati l’accesso è consentito solamente da 127.0.0.1.

Se per ipotesi volete permettere connessioni remote dall’ip 172.16.46.250 sul database ‘mysql’ con l’utente root, dovrete eseguire i seguenti comandi

root@localhost #  mysql

mysql > use mysql;

mysql> update db set Host='172.16.46.250' where Db='mysql';

mysql> update user set Host='172.16.46.250' where user='root';

mysql> flush privileges;

Ora dovreste potervi connettere in remoto da mysql, vi ricordo inoltre che se volete usare phpmyadmin dovrete ricordarvi di modificare l’indirizzo ip del server direttametne dal file di configurazione, cambiando quindi l’ip anche li da 127.0.0.1 all’ip che vi interessa, nello specifico del nostro esempio 172.16.46.251.

Saluti

Matteo

This entry was posted on mercoledì, gennaio 7th, 2009 at 11:05 am and is filed under apache, linux, mysql, web. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

There are currently 9 responses to “Abilitare connessioni remote su mysql”

Why not let us know what you think by adding your own comment! Your opinion is as valid as anyone elses, so come on... let us know what you think.

  1. 1 On gennaio 15th, 2009, ale said:

    ciao, vorrei kiederti un aiuto. Ho un PowerBook G4 con Osx 10.4, sono collegato ad internet tramite Airpot, prendendo la rete da un pc collegato con la Lan.
    Ho istallato mysql,poi ho digitato

    volo:/usr/local/mysql/bin mirdog$ ./mysqladmin -u root -p status
    Enter password:

    e poi mi é apparso

    ./mysqladmin: connect to server at ‘localhost’ failed
    error: ‘Access denied for user ‘root’@'localhost’ (using password: YES)’

    Come posso risolvere questo problema?????
    Grazie mille in anticipo.
    Ciao.
    Ale

  2. 2 On gennaio 18th, 2009, admin said:

    Ciao il server mysql risiede sulla stessa macchina dove gira MaxOsx ?

  3. 3 On gennaio 20th, 2009, RedSoul said:

    ciao ho lo stesso problema leggi qui mi hanno consigliato loro la tua guida http://forum.ubuntu-it.org/index.php?topic=253552.new;topicseen mi succede ora che quando faccio il secondo comando mi esce

    mysql> update user set Host=’91.121.11.188′ where user=’root’;
    ERROR 1062 (23000): Duplicate entry ‘91.121.11.188-root’ for key 1

    che posso fare?

  4. 4 On gennaio 20th, 2009, admin said:

    Significa che c’è già una entry associata a quell’utente li che riguarda quel particolare indirizzo IP, prova ad accedere via PhpMyadmin o tool simile dovresti vedere fra i privilegi questa entri ed eventualmente modificarla o aggiungerne una appropriata.

  5. 5 On gennaio 20th, 2009, RedSoul said:

    non ho installato PhpMyadmin ancora qualche consiglio su come installarlo?

  6. 6 On gennaio 20th, 2009, admin said:

    Una guida molto semplice per Phpmyadmin la puoi trovare qua

    http://php.html.it/guide/lezione/2561/installazione-e-configurazione-base-di-phpmyadmin/

    Una domanda, ma visto che ti da quell’errore, che quindi risulta già permesso un accesso su quell’ip li se tu fai

    mysql -u root -p –host=91.121.11.188

    cosa ti dice?

    Hai dato qualcosa di analogo a

    mysql> update db set Host=’91.121.11.188′ where Db=’mysql’;

    in modo da poter fare query in remoto sul db mysql?

  7. 7 On gennaio 20th, 2009, RedSoul said:

    ho messo debian ora appena faccio ti so dire ubuntu non mi convince molto

  8. 8 On gennaio 20th, 2009, admin said:

    Buh a me non da problemi nessuna delle due.

  9. 9 On febbraio 5th, 2009, admin said:

    Ho provato a fare una reinstallazione con una versione di ubuntu a 64bit, in effetti da anche a me quell’errore. Ho provato a fregarmene e pare funzionare lo stesso, evidentemente in alcuni sistemi o versioni particolari provvedere già lui a inserire tale regola.

Leave a Reply

  • Etichette

  • Statistiche