Un'opzione è salvare UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='root';
in un file e quindi avviare manualmente mysqld
con --init-file=FILENAME
. Una volta che il server si avvia, dovrebbe reimpostare la tua password e quindi dovresti essere in grado di accedere. Successivamente, dovresti spegnere il server e avviarlo normalmente.
Un po 'in ritardo per il gioco, ma ho avuto lo stesso problema su un'installazione di Raspberry Pi e ho scoperto che ha bisogno di elevazione. L'aggiunta di un sudo all'inizio della modifica della password gli ha permesso di funzionare.
sudo mysqladmin -u root password 'newpass'
seguito da un accesso sql elevato
sudo mysql -u root -p
Se uno dei due non viene eseguito come sudo, fallirà.
Per impostazione predefinita, la password dell'utente root è una stringa vuota.
E (using password: NO)
dice che non c'è nessuna password.
Provi ad accedere da un altro sistema? Immagino che tu possa accedere solo come utente root localmente.
Ho rimosso l'installazione di MySQL ed eliminato i file di dati, quindi l'ho reinstallato.
Quindi sono stato in grado di impostare la password di root. Una volta impostata la password di root su qualcosa. mysqladmin non ti permetterà di reimpostarlo se non lo conosci.
Per reimpostarlo, devi avere la proprietà su come viene eseguito mysqld e fornirgli un file init per modificare la password di root:https://dev.mysql.com/doc/refman/5.0/en/resetting-permissions .html