Project

General

Profile

MySQLInitConf » History » Version 10

Amministratore Truelite, 11/13/2007 03:41 PM

1 2 Amministratore Truelite
[[TracNav(TOC)]]
2 1 Amministratore Truelite
= Configurazione di base per MySQL = 
3 1 Amministratore Truelite
4 9 Amministratore Truelite
La configurazione di base di MySQL eseguita da Debian subito dopo l'installazione del pacchetto consente l'accesso database con l'utente di amministrazione ''root'' senza password. Per questo motivo il primo passo da fare, immediatamente dopo l'installazione, è impostare una password per ''root''; questo si fa con il comando:
5 1 Amministratore Truelite
6 1 Amministratore Truelite
{{{
7 1 Amministratore Truelite
/usr/bin/mysqladmin -u root password NuovaPassword
8 1 Amministratore Truelite
}}}
9 1 Amministratore Truelite
10 9 Amministratore Truelite
Se invece si è persa la password di ''root'' del database il precedente
11 9 Amministratore Truelite
comando non funziona in quanto una volta impostata la password questa diventa
12 9 Amministratore Truelite
necessaria per poterlo utilizzare, per questo per poterla recuperare occorre
13 10 Amministratore Truelite
seguire la seguente procedura: il primo passo è fermare il database e farlo
14 10 Amministratore Truelite
ripartire senza meccanismi di controllo di autenticazione con i comandi:
15 9 Amministratore Truelite
16 8 Amministratore Truelite
{{{
17 8 Amministratore Truelite
/etc/init.d/mysql stop
18 1 Amministratore Truelite
/usr/bin/mysqld_safe --skip-grant-tables --skip-networking &
19 10 Amministratore Truelite
}}}
20 10 Amministratore Truelite
21 10 Amministratore Truelite
a questo punto ci si potrà collegare al database direttamente con:
22 10 Amministratore Truelite
23 10 Amministratore Truelite
{{{
24 1 Amministratore Truelite
mysql -u root
25 10 Amministratore Truelite
}}}
26 10 Amministratore Truelite
27 10 Amministratore Truelite
ottenendo una shell SQL con privilegi di amministrazione; qui si dovranno dare
28 10 Amministratore Truelite
seguenti comandi:
29 10 Amministratore Truelite
30 10 Amministratore Truelite
{{{
31 8 Amministratore Truelite
use mysql;
32 1 Amministratore Truelite
UPDATE user SET Password=PASSWORD("NuovaPassword") WHERE User="root";
33 1 Amministratore Truelite
exit
34 10 Amministratore Truelite
}}}
35 10 Amministratore Truelite
36 10 Amministratore Truelite
fatto questo la passord di ''root'' è stata modificata e si potrà fermare il
37 10 Amministratore Truelite
database e riavviarlo con:
38 10 Amministratore Truelite
39 10 Amministratore Truelite
{{{
40 1 Amministratore Truelite
/etc/init.d/mysql stop
41 1 Amministratore Truelite
/etc/init.d/mysql start
42 8 Amministratore Truelite
}}}
43 8 Amministratore Truelite
44 9 Amministratore Truelite
Dopo di che si potrà verificare che l'accesso è possibile con la nuova
45 9 Amministratore Truelite
password con:
46 1 Amministratore Truelite
47 1 Amministratore Truelite
{{{
48 1 Amministratore Truelite
server:~# mysql -u root -p
49 1 Amministratore Truelite
Enter password:
50 1 Amministratore Truelite
Welcome to the MySQL monitor.  Commands end with ; or \g.
51 1 Amministratore Truelite
Your MySQL connection id is 9 to server version: 4.0.24_Debian-5-log
52 1 Amministratore Truelite
53 1 Amministratore Truelite
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
54 1 Amministratore Truelite
55 1 Amministratore Truelite
mysql> show databases;
56 1 Amministratore Truelite
+-------------+
57 1 Amministratore Truelite
| Database    |
58 1 Amministratore Truelite
+-------------+
59 1 Amministratore Truelite
| mysql       |
60 1 Amministratore Truelite
| test        |
61 1 Amministratore Truelite
+-------------+
62 1 Amministratore Truelite
2 rows in set (0.00 sec)
63 1 Amministratore Truelite
64 1 Amministratore Truelite
mysql> \q
65 1 Amministratore Truelite
Bye
66 1 Amministratore Truelite
server:~#
67 1 Amministratore Truelite
}}}
68 1 Amministratore Truelite
69 9 Amministratore Truelite
Si tenga presente infine che le ultime versioni del pacchetto Debian non
70 9 Amministratore Truelite
richiedono più un intervento manuale per abilitare l'ascolto su localhost in
71 9 Amministratore Truelite
quanto la riga:
72 1 Amministratore Truelite
73 1 Amministratore Truelite
{{{
74 1 Amministratore Truelite
bind-address            = 127.0.0.1
75 1 Amministratore Truelite
}}}
76 1 Amministratore Truelite
77 9 Amministratore Truelite
è già presente in {{{/etc/my.cnf}}}.
78 3 Amministratore Truelite
79 3 Amministratore Truelite
Fatto questo si potrà passare alla creazione di un proprio database con il comando:
80 3 Amministratore Truelite
{{{
81 3 Amministratore Truelite
mysqladmin -u root -p create nomedb
82 3 Amministratore Truelite
}}}
83 3 Amministratore Truelite
che chiederà la precedente password, creando il database, a questo punto ci si potrà collegare al nuovo database con:
84 3 Amministratore Truelite
{{{
85 3 Amministratore Truelite
mysql -u root -p nomedb
86 3 Amministratore Truelite
}}}
87 3 Amministratore Truelite
e si potrà dare l'accesso allo stesso ad uno specifico utente con i comandi:
88 3 Amministratore Truelite
{{{
89 7 Amministratore Truelite
GRANT SELECT, INSERT, UPDATE, DELETE 
90 7 Amministratore Truelite
ON nomedb.* TO utentedb@localhost IDENTIFIED BY 'password';
91 3 Amministratore Truelite
}}}
92 6 Amministratore Truelite
e per garantirsi che questi siano immediatamente disponibili, si dovrà aggiuntere:
93 6 Amministratore Truelite
{{{
94 6 Amministratore Truelite
FLUSH PRIVILEGES;
95 6 Amministratore Truelite
}}}
96 5 Amministratore Truelite
97 5 Amministratore Truelite
Nel caso si sia fatto un errore nell'assegnare i permessi e nel creare l'utente, lo si potrà cancellare con i comandi:
98 5 Amministratore Truelite
{{{
99 1 Amministratore Truelite
use mysql;
100 6 Amministratore Truelite
DELETE FROM user WHERE user="utentedacancellare";
101 5 Amministratore Truelite
}}}