2011-01-22 6 views
8

Per farla breve, ho finito per eliminare l'utente root da PHPMyAdmin in EasyPHP. Dopo alcune ricerche, ho usato skip-grant-tables per recuperare l'accesso al database. Ora, tuttavia, non posso fare nulla in quanto l'utente root ha 'Nessun privilegio.'phpMyAdmin segnala "Nessun privilegio"

Detto ciò, quando ho effettuato il login come "root", ho effettivamente la possibilità di creare un database tramite SQL.

Ho provato quanto segue e simili:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'; 
FLUSH PRIVILEGES; 

Eppure, non posso fare nulla. Inoltre, ho questo messaggio:

Le funzionalità aggiuntive per lavorare con tabelle collegate sono state disattivate. Per scoprire perché clicca qui.

Cliccando attraverso spettacoli:

$cfg['Servers'][$i]['pmadb'] ... OK 
$cfg['Servers'][$i]['relation'] ... not OK [ Documentation ] 
General relation features: Disabled 

$cfg['Servers'][$i]['table_info'] ... not OK [ Documentation ] 
Display Features: Disabled 

$cfg['Servers'][$i]['table_coords'] ... not OK [ Documentation ] 
$cfg['Servers'][$i]['pdf_pages'] ... not OK [ Documentation ] 
Creation of PDFs: Disabled 

$cfg['Servers'][$i]['column_info'] ... not OK [ Documentation ] 
Displaying Column Comments: Disabled 
Browser transformation: Disabled 

$cfg['Servers'][$i]['bookmarktable'] ... not OK [ Documentation ] 
Bookmarked SQL query: Disabled 

$cfg['Servers'][$i]['history'] ... not OK [ Documentation ] 
SQL history: Disabled 

$cfg['Servers'][$i]['designer_coords'] ... not OK [ Documentation ] 
Designer: Disabled 

$cfg['Servers'][$i]['tracking'] ... not OK [ Documentation ] 
Tracking: Disabled 

reinstallazione EasyPHP non risolve il problema, e nulla esiste in VirtualStore (come uno post sul forum suggerito). C'è un file MySQL specifico che dovrei cercare?

Qualche idea? Ciò ha davvero fermato lo sviluppo della mia applicazione.

Grazie.

+0

Sembra che sia sufficiente impostare correttamente le tabelle di sovvenzione. Se potessi farmi un favore e 'SELECT * FROM mysql.user WHERE user = 'root'' (con --skip-grant-tables on ovviamente) e incolla quello che ti dà, potrebbe aiutare. – cHao

+0

root @ localhost ha tutti gli Y's – Peter

+0

E quando ti connetti ti connetti a "localhost"? (Talvolta MySQL può essere ottuso: se ti connetti al tuo indirizzo IP, ti piace vederti come proveniente dal tuo IP piuttosto che dal localhost.) – cHao

risposta

15

Questo è stato super fastidioso.

Sembra un bug con phpMyAdmin.

Cancella i cookie del browser, quello che sta succedendo è phpMyAdmin ha "memorizzato nella cache" il fatto che non hai (o forse non hai avuto a un certo punto) l'accesso al database.

Non c'è modo di ripristinarlo se non eliminare i cookie per phpMyAdmin nella finestra del browser (per ottenere un nuovo 'id di sessione'), o eliminare i file di sessione sul server web phpMyAdmin.

+3

Questo ha funzionato per me. Ho appena aperto la scheda Risorse nella Console per gli sviluppatori di Chrome (Ctrl + Maiusc + I) e ho eliminato manualmente tutti i cookie su localhost. –

+0

Questo non funziona per me .... – maxisme

3

Se la macchina è abilitata per IPv6, "localhost" verrà risolto in ::1 anziché in 127.0.0.1. Questo può causare problemi.

Provare a connettersi a "127.0.0.1" anziché a "localhost". Ciò dovrebbe forzare mysql ad autenticarsi tramite l'indirizzo IPv4, quindi assicurati che 127.0.0.1 sia lì.

In alternativa, se si dispone dell'accesso di amministratore, è possibile eseguire il mapping di localhost su 127.0.0.1 in c:\Windows\System32\Drivers\etc\hosts.

+0

Quando mi collego, uso 127.0.0.1, secondo la configurazione di EasyPHP. – Peter

+0

E c'è una riga nella tabella utente per [email protected]? – cHao

+0

Sì, ma si è rivelato un problema del browser. Apprezzo l'aiuto! – Peter

1

Si rivela essere una sorta di problema specifico per Google Chrome, in quanto ora funziona in IE. Proverò a far girare CCleaner.

Grazie a tutti.

+2

Strano. Stavo avendo lo stesso problema con i privilegi di root in Chrome. Dopo aver letto questa risposta, ho effettuato l'accesso con Firefox e tutto è a posto. Questo è su OSX, quindi non penso sia collegato a nulla del tuo computer Windows. – ray

+0

La stessa cosa è successa a me, qualcuno sa perché o come risolverlo? –

+1

Non è una cosa specifica del browser e non può essere. Prova a svuotare la cache e i cookie. –

2

cHao e le risposte di Andrew hanno risolto il problema per me. Ho resettato tutte le autorizzazioni nel db MySQL, tabella utente, a sì. Tutti i dbs sono poi riapparsi in phpMyAdmin, ma non ho avuto il privilegio di 'creare db'. Cancellato il cookie phpMyAdmin e persino aggiornato phpMyAdmin senza successo. Poi sono entrato nella directory tmp/php e ho cancellato un file di sessione che ho trovato lì (chiamato sess + random ascii), e successo!

0

Ho appena riscontrato lo stesso problema (accesso perso ai miei database locali). Il problema sembra essere relativo ai browser che eseguono Gecko o simili (come KHTML ... I'm on Opera). Dopo aver eliminato il cookie phpMyAdmin, come suggerito, avevo ancora Nessun privilegio. Così sono andato su localhost/xampp, poi ho cliccato su Sicurezza. Su quella pagina è un link (http: //localhost/security/xamppsecurity.php), che mi ha portato a una pagina intitolata Sicurezza console MySQL & XAMPP protezione directory)

ho lasciato il password corrente campo vuoto e ha inserito una nuova password; Penso di aver selezionato i cookie come metodo di autenticazione PhpMyAdmin (in realtà dice PhpMyAdmin authentification, ma hey ...). Dopo aver inviato la modifica della password e aver provato di nuovo ad accedere a phpMyAdmin, ho recuperato tutti i miei database e sono nuovamente in grado di crearne altri; il messaggio Nessun privilegio è scomparso!

C'è ancora il messaggio in fondo dicendo

L'archiviazione di configurazione phpMyAdmin non è completamente configurato, alcune caratteristiche estese sono disattivati. Per scoprire perché clicca qui.

Ma questo è un altro fiume per un'altra volta.