MySQL : Dump, restore, password root e creazione utenti da shell

http://www.stenoweb.it/files/blog/mysql.jpg

e restore

Eseguiamo il :

mysqldump -u nomeutente -p > .sql

Ora, dopo aver fornito la password di “nomeutente” mi viene creato un bel file con le istruzione per ricreare e ripopolare il in puro e semplice formato SQL.

Portiamoci il file “.sql” dove ci pare e ricreiamo il DB

mysql -u -p nomeutente < .sql

oppure

mysql –one- < .sql -u nomeutente -p

Digitiamo la password et voilà gioco fatto.

Cambio password di root

Ma voglio allargarmi, siccome oggi ho letto su Pettinix un semplice articoletto su come modificare la password di root, mi permetto di accodarlo qui con uno spudorato cut & paste per (mia) futura memoria.

Metodo 1 (tramite ):

permette di effettuare alcune operazioni di del . Passando l’opzione password, seguita dalla nuova password, sarà possibile impostare in un solo passaggio la nuova password scelta. Per effettuare l’operazione dovete eseguire da terminale:

-u root password <nuovapassword>

Qualora abbiate già configurato una password e volete cambiarla dovrete invece usare il comando:

-u root password <vecchiapassword> <nuovapassword>

Metodo 2 (tramite il client mysql e il metodo SET PASSWORD):

Con il client mysql potete eseguire le operazioni comuni che si effettuano su un ed inoltre anche le operazioni di . Per entrare nel client dovete digitare da terminale:

mysql -u root

a questo punto siete nella shell del client (identificata dalla stringa “mysql>”), mediante il metodo SET PASSWORD potete ora configurare la nuova password scrivendo:

SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(’nuovapassword’);

Metodo 3 (tramite il client mysql e il metodo ):

Oltre al metodo descritto prima, si può utilizzare il client mysql per aggiornare i dati nelle tabelle di sistema mediante il comando . Bisogna come prima accedere alla shell di mysql digitando da terminale:

mysql -u root

A questo punto dalla shell di MySQL bisognerà digitare:

mysql> use mysql;
mysql> user SET Password = PASSWORD(’nuovapassword’) WHERE User = ‘root’;
mysql> FLUSH PRIVILEGES;

Questo è tutto, scegliete il metodo che più vi aggrada.

Creare

Per creare un utente in MySQL è necessario accedere da root (o da altro utente che ha i privilegi di creazione degli ), per farlo aprite un terminale e digitate:

mysql -uroot -p

vi verrà chiesta la password di root, una volta digitata vi troverete nella solita shell del client mysql.

A questo punto bisognerà creare l’utente e dare i permessi sul , ricordate di sostituire a <nome_database> il nome del db su cui dare i permessi, sostituire a <nome_utente> il nome dell’utente da creare ed infine in <pass_utente> la password da assegnare all’utente. Per fare ciò digitate nella shell di MySQL:

GRANT ALL PRIVILEGES ON <nome_db>.* TO ‘<nome_utente>’@’localhost’ IDENTIFIED BY ‘<pass_utente>’ WITH GRANT OPTION;

Ad esempio se si vuole creare l’utente “ragioniere”, con la password “contabile”, associato al “fatture”, bisognerà digitare nella shell:

GRANT ALL PRIVILEGES ON fatture.* TO ‘ragioniere’@’localhost’ IDENTIFIED BY ‘contabile’ WITH GRANT OPTION;

E’ anche possibile creare l’utente e dargli i permessi su tutti i mediante il comando:

GRANT ALL PRIVILEGES ON *.* TO ‘<nome_utente>’@’localhost’ IDENTIFIED BY ‘<pass_utente>’ WITH GRANT OPTION;

Naturalmente sostituendo come prima opportunamente i campi <nome_utente> e <pass_utente>.

Quanto abbiamo visto fin’ora permette all’utente creato di accedere solo da locale, però è possibile scegliere un altro host, sostituendo nelle stringhe riportate sopra, alla voce “localhost” l’indirizzo da cui l’utente può eccedere.

In alternativa è possibile far accedere l’utente da un qualsiasi host, sostituendo alla voce “localhost” il simbolo “%”. Il comando da digitare nella shell di MySQL sarà quindi:

GRANT ALL PRIVILEGES ON <nome_db>.* TO ‘<nome_utente>’@’%’ IDENTIFIED BY ‘<pass_utente>’ WITH GRANT OPTION;

Questo è tutto, notate che questa è una breve guida con delle opzioni abbastanza basilari, MySQL permette una gestione degli molto più complessa e avanzata, ma per questo vi rimando ad un futuro articolo.

fonte : http://www.stenoweb.it

Lascia un commento