PDA

View Full Version : Problema con PhpMyAdmin e MySql


anonimizzato
13-11-2004, 18:51
ho installati sul pc di casa con Win XP Home il server Apache 2.0, il modulo PHP 4.3.9 che funzionano senza problemi.

Pomeriggio ho deciso di installare anche MySql 4.1.7 e PhpMyAdmin 2.6.0 ma non c'è verso di connettersi ad DB che pure è segnalto attivo come servizio. vengo sempre rimandato alla schermata di login.

credo di aver settato correttamente i parametri del file config.inc.php di PhpMyAdmin:

ho settato queste voci:
$cfg['PmaAbsoluteUri'] = 'http://localhost/test/phpadmin/';
$cfg['Servers'][$i]['auth_type'] = 'http';
$cfg['Servers'][$i]['user'] = 'MioNomeUtente';
$cfg['Servers'][$i]['password'] = 'MiaPw';

la pw ovviamente corrisponde a quella utilizzata nell'istallazione di MySql, sapresete aiutarmi?

qui un'altro thread con tutti i passaggi del mio problema (http://forum.html.it/forum/showthread.php?s=&threadid=744215)

cionci
13-11-2004, 23:48
Se non sbaglio se metti http devi configurare Apache per fare l'autenticazione...e l'account specificato nel config.php serve soltanto per visualizzare la lista dei database...

cionci
13-11-2004, 23:57
http://www.phpmyadmin.net/pma_localized_docs/Documentation-it.html#config

Infatti...se vuoi usare i dati inseriti in config.inc.php devi specificare config come auth_type... Ovviamente non è adatto per un server pubblico...

Per un server pubblico devi spcificare http o cookie...ma ti devi cerare un sistema di autenticazione... Per il primo devi creare un file .htaccess nella directory di phpMyAdmin (e gli altri fiel relativi) per permettere l'autenticazione HTTP (trovi come fare sulla documentazione di Apache)... Per il secondo devi creare un form e tramite il php settare i cookie con username e password come letti dal form...

anonimizzato
14-11-2004, 09:20
se metto config come valore di auth_type ho questo messaggio di errore:

"phpMyAdmin ha provato a connettersi al server MySQL, e il server ha rifiutato la connessione. Si dovrebbe controllare il nome dell'host, l'username e la password nel file config.inc.php ed assicurarsi che corrispondano alle informazioni fornite dall'amministratore del server MySQL."

Messaggio di MySQL: Documentazione
#1045 - Access denied for user 'sgurbat'@'localhost' (using password: YES)

:(

cionci
14-11-2004, 09:46
E giusto...hai sbagliato a configurare l'utente sul server MySQL...

Devi inserire questa nel client testuale di MySQL:
GRANT ALL PRIVILEGES ON * TO 'sgurbat'@'localhost' IDENTIFIED BY 'tuapassword';

anonimizzato
14-11-2004, 09:52
scusa ma mysql l'ho visto ieri per la prima volta dove devo apportare queste modifiche.

tra l'altro è normale che non abbia nessuna icona (il classico semaforino) nella tray bar?

cionci
14-11-2004, 11:44
mysql\bin\mysql -u root -p

Sperando che tu abbia creato l'utente root...
Riguardo al semaforo...quello serve a poco...l'importante è che il servizio sia attivo...

anonimizzato
14-11-2004, 11:54
Originariamente inviato da cionci
mysql\bin\mysql -u root -p

Sperando che tu abbia creato l'utente root...
Riguardo al semaforo...quello serve a poco...l'importante è che il servizio sia attivo...

da start>esegui: mysql\bin\mysql -u root -p
impossibile trovare il file "mysql\bin\mysql -u root -p" che faccio? :(

cionci
14-11-2004, 12:31
Ovviamente devi mettere il percorso sul quale hai isntallato mysql ;)

anonimizzato
14-11-2004, 12:46
Questo è il percorso:

"C:\Programmi\MySQL\MySQL Server 4.1\bin\mysql.exe"

scusami veramente ma non riesco a capire come devo impartirgli il comando:

-u root -p

cionci
14-11-2004, 13:15
"C:\Programmi\MySQL\MySQL Server 4.1\bin\mysql.exe -u root -p"

anonimizzato
14-11-2004, 13:25
non funziona mi dà sempre lo stesso errore.

Impossibile trovare il file in bla bla bla

Non c'è un'altra soluzione?

E se reinstallssi MySql qual'è la procedura corretta per la disinstallazione?

anonimizzato
14-11-2004, 13:27
Aspè così

"C:\Programmi\MySQL\MySQL Server 4.1\bin\mysql.exe" -u root -p


mi ha aperto un prompt in cui mi viene chiesto enter password che faccio?

cionci
14-11-2004, 13:46
Cid evi mettere la password dell'utente root che dovresti avere già specificato da qualche altra parte... Se non la conosci prova a premere invio...

anonimizzato
14-11-2004, 13:48
ho usato la pw "sgurbat" che è quella che ho impostato d'appertutto per MySql e mi si è aperto il MySql monitor

anonimizzato
14-11-2004, 17:11
nel prompt ho provato a digitare questo:

GRANT ALL PRIVILEGES ON * TO 'sgurbat'@'localhost' IDENTIFIED BY 'sgurbat'

ma sembra non sortire alcun effetto perchè sempre nel prompt mi manda a capo la linea di comando così:
->

e non riesco ancora ad accedere da phpMyAdmin.

sbaglio qualcosa nella sintassi o nelle procedura?

cionci
14-11-2004, 18:57
Ci vuole il ; in fondo alla riga ;)

Premi invio e scrivi:

FLUSH PRIVILEGES;

QUIT

E poi prova con phpMyAdmin...

anonimizzato
14-11-2004, 19:14
ho eseguito anche FLUSH PRIVILEGES; e QUIT

ma ora in phpMyAdmin mi dice:

"#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
"

devo cambiare qualcosa nel file config.inc.php?

adesso i settaggi sono questi:

$cfg['PmaAbsoluteUri'] = 'http://localhost/test/phpadmin/';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'sgurbat';
$cfg['Servers'][$i]['password'] = 'sgurbat';

cionci
14-11-2004, 19:18
Giusto... Il probelma è che hai messo MySQL 4.1 che non supporta il sistema di autenticazione della 4.0.x...
il problema è questo: http://forum.hwupgrade.it/showthread.php?s=&threadid=801549&highlight=MySQL+4.1

anonimizzato
14-11-2004, 19:21
quindi? :confused:

io uso l'ultima versione di PhpMyAdmin ovvero la 2.6.0 e:

Apache 2.0
PHP 4.3.9
MySql 4.1.7

cionci
14-11-2004, 19:24
Quindi vai a vedere in quel thread come fare per risolvere (c'è un link al sito MySQL)...

anonimizzato
14-11-2004, 19:33
ho letto il post ed anche l'articolo su dev.mysql.com ma non l'ho capito

lo sò rompo ma l'articolo non l'ho capito benissimo e per me è quasi arabo. :(

Cosa devo digitare in sequenza nel prompt di MySql?

cionci
14-11-2004, 22:38
SET PASSWORD FOR 'sgurbat'@'localhost' = OLD_PASSWORD('sgurbat');

Sempre dentro al client testuale di MySQL...

anonimizzato
16-11-2004, 18:54
ho reinstallato MySql con account anonimo.

Grazie ancora ;)

cionci
16-11-2004, 19:00
Non puoi tenere l'account anonimo...ti entrano sul computer !!!

anonimizzato
17-11-2004, 19:09
ho impedito tramite Sygate l'accesso esterno di mysld-nt.exe non è sufficiente? :(

cionci
17-11-2004, 19:22
Sì...ma bene o male è un problema banale da risolvere... Bastava mettere la stringa sopra nel client testuale di mysql...

anonimizzato
17-11-2004, 19:24
se la mettessi ora non ci sarebbero problemi giusto?

devo solo cambiare user e password nel config.inc e settarli come 'sgurbat' lasciando auth_type su 'config' esatto?

cionci
17-11-2004, 19:27
A questo punto...se è senza utenti devi prima rimettere il GRANT (l'istruzione di prima) e poi questo set PASSWORD...
Basta rimettere gli stessi dati nel config.inc.php...

anonimizzato
17-11-2004, 19:30
non per contraddirti ma sei sicuro che (parlo sempre di accessi dall'esterno) non sia accessibile solo da localhost?

cionci
17-11-2004, 19:35
Sempre dal client testuale fai:

SELECT user, host FROM mysql.user;

Ti da la lista dei nomi utente con accanto l'host da cui ci si può connettere...

Copia il risutlato ed incollalo qui...

anonimizzato
17-11-2004, 19:39
perchè? :mbe:

cionci
17-11-2004, 19:41
Perchè così vedo se senza nome utenti ti puoi o emno connettere da ogni host... In tal caso tid evo dare anche altri comandi...

anonimizzato
17-11-2004, 19:58
.

cionci
17-11-2004, 23:45
Devi mettere questi comandi:

REVOKE ALL PRIVILEGES ON *.* FROM ''@'localhost' , ''@'%';
GRANT ALL PRIVILEGES ON * TO 'sgurbat'@'localhost' IDENTIFIED BY 'sgurbat' ;
FLUSH PRIVILEGES;
SET PASSWORD FOR 'sgurbat'@'localhost' = OLD_PASSWORD('sgurbat');
FLUSH PRIVILEGES;
QUIT

anonimizzato
19-11-2004, 18:31
Grazie ancora ;)