Come resettare o modificare la password di root di MySQL?


180

Come posso cambiare la password di root di MySQL e il nome utente nel server Ubuntu? Devo interrompere il servizio mysql prima di impostare eventuali modifiche?

Ho anche una configurazione di phpmyadmin, phpmyadmin verrà aggiornato automaticamente?


Se non hai bisogno dei dati, puoi "reimpostare" la password rimuovendo mysql nella sua interezza: stackoverflow.com/questions/10853004/…, quindi installandolo di nuovo (ti chiederà la "nuova" password di root) FWIW: )
rogerdpack,

Conosci la password di root di MySQL?
Franck Dernoncourt,

2
in mysql-server-5.7 questi metodi non funzionano. usa 'sudo' senza password come menzionato in askubuntu.com/a/848504
Pragalathan M

Risposte:


225

Imposta / modifica / reimposta la password di root di MySQL su Ubuntu Linux. Inserisci le seguenti righe nel tuo terminale.

  1. Arresta il server MySQL: sudo /etc/init.d/mysql stop
  2. Inizia la mysqldconfigurazione:sudo mysqld --skip-grant-tables &

    In alcuni casi, devi creare il /var/run/mysqldprimo:

    sudo mkdir -v /var/run/mysqld && sudo chown mysql /var/run/mysqld
  3. Correre: sudo service mysql start
  4. Accedi a MySQL come root: mysql -u root mysql
  5. Sostituisci YOURNEWPASSWORDcon la tua nuova password:

    UPDATE
      mysql.user
    SET
      Password = PASSWORD('YOURNEWPASSWORD')
    WHERE
      User = 'root';
    FLUSH PRIVILEGES;
    exit;

Nota: su alcune versioni, se la passwordcolonna non esiste, potresti provare:
UPDATE user SET authentication_string=password('YOURNEWPASSWORD') WHERE user='root';

Nota: questo metodo non è considerato il modo più sicuro di reimpostare la password, tuttavia funziona.

Riferimenti:

  1. Imposta / Cambia / Reimposta la password di root di MySQL su Ubuntu Linux
  2. Come reimpostare la password di root

20
Ovviamente, dopo questo punto dovrai interrompere il processo temporaneo senza password del server che hai iniziato nel passaggio 2. potresti usare sudo killall -9 mysqld? e poi sudo service mysql startper riavviare il demone normale ...
Lambart

7
Il metodo in questa risposta è necessario solo per ripristinare una password di root di MySQL che non conosci [sorgente ]. Se lo sai, l' SET PASSWORDistruzione MySQL è per te.
tanius,

53
ho seguito fino al 3 ° passaggio e non riesco a connettermi al server MySQL locale tramite socket "/var/run/mysqld/mysqld.sock" (2) quando
eseguo l'

12
in alcuni casi, devi anche correre mkdir /var/run/mysqlde chown mysql: /var/run/mysqldtra i passaggi 1 e 2
Neville Nazerane,

9
il passaggio 3 non ha funzionato per me con Ubuntu 18.04. Ho appena effettuato l'accesso utilizzando sudo mysql
itsols il

122

L'unico metodo che ha funzionato per me è quello descritto qui (sto eseguendo Ubuntu 14.04). Per motivi di chiarezza, questi sono i passaggi che ho seguito:

  1. sudo vim /etc/mysql/my.cnf
  2. Aggiungi le seguenti righe alla fine:

    [Mysqld]
    
    saltare-grant-tables
  3. sudo service mysql restart

  4. mysql -u root

  5. use mysql

  6. select * from mysql.user where user = 'root';- Guarda in alto per determinare se la colonna della password è chiamata password o authentication_string

  7. UPDATE mysql.user set *password_field from above* = PASSWORD('your_new_password') where user = 'root' and host = 'localhost'; - Utilizzare la colonna password corretta dall'alto

  8. FLUSH PRIVILEGES;

  9. exit

  10. sudo vim /etc/mysql/my.cnf

  11. Rimuovere le linee aggiunte nel passaggio 2 se si desidera mantenere gli standard di sicurezza.

  12. sudo service mysql restart

Per riferimento: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html


8
Finalmente ha funzionato per me! Sto eseguendo MySQL 5.7.18 su Ubuntu 16.04. Ho provato dpkg-reconfigure, la risposta di Anvesh, la risposta di Christian Mark e persino le istruzioni nella pagina di aiuto di MySQL.
mbuc91,

9
Ho dovuto eseguire UPDATE mysql.user SET authentication_string = PASSWORD ('newpwd') WHERE User = 'root'; invece per la linea 5.
mbuc91,

2
L'unica soluzione che ha funzionato per me. Ho Ubuntu 17.04 e mysql 5.7
Mohamed

1
Purtroppo questo non funziona per me mysql 5.7.22 ubuntu 18.04
Mario,

1
Tutto funzionava come previsto. Ma quando si tenta di accedere si dice Inserisci password: ERRORE 1698 (28000): Accesso negato per l'utente 'root' @ 'localhost'
Dipak Chatterjee

101

Il modo ufficiale e semplice per ripristinare la password di root su un server Ubuntu ...

Se sei il 16.04, 14.04, 12.04:

sudo dpkg-reconfigure mysql-server-5.5

Se sei su 10.04:

sudo dpkg-reconfigure mysql-server-5.1

Se non sei sicuro di quale versione di mysql-server è installata, puoi provare:

dpkg --get-selections | grep mysql-server

Note aggiornate per mysql-server-5.7

Notare che se si utilizza mysql-server-5.7 non è possibile utilizzare il metodo dpkg-reconfigure più semplice mostrato sopra.

Se conosci la password, accedi ed esegui questo:

UPDATE mysql.user SET authentication_string=PASSWORD('my-new-password') WHERE USER='root';
FLUSH PRIVILEGES;

In alternativa, è possibile utilizzare quanto segue:

sudo mysql_secure_installation

Questo ti farà una serie di domande su come proteggere la tua installazione (altamente raccomandato), incluso se vuoi fornire una nuova password di root.

Se NON conosci la password di root, fai riferimento a questo Ubuntu-centric scrivere sul processo .

Vedi per maggiori informazioni:

https://help.ubuntu.com/16.04/serverguide/mysql.html https://help.ubuntu.com/14.04/serverguide/mysql.html


3
Funziona anche quando hai perso la password di root originale di MySQL - bello.
tanius,

4
Funziona conVer 14.14 Distrib 5.5.38, for debian-linux-gnu
justinpage

Ha funzionato anche con mysql v 5.0 ...sudo dpkg-reconfigure mysql-server-5.0
dsghi,

4
sudo dpkg-reconfigure mysql-server-5.7 non funziona per Ubuntu 18.04 per reimpostare la password di root. Qualche altro sostituto?
Jagdeep Singh,

Ubuntu:sudo dpkg-reconfigure mysql-server-5.7; sudo mysql_secure_installation
Kenorb,

77

Cosa ha funzionato per me (Ubuntu 16.04, mysql 5.7):

Ferma MySQL

sudo service mysql stop

Crea directory di servizio MySQL.

sudo mkdir /var/run/mysqld

Autorizzare l'utente MySQL a scrivere nella directory di servizio.

sudo chown mysql: /var/run/mysqld

Avviare MySQL manualmente, senza controlli di autorizzazione o di rete.

sudo mysqld_safe --skip-grant-tables --skip-networking &

Su un'altra console, accedi senza password.

mysql -uroot mysql

Poi:

UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';
EXIT;

Disattiva MySQL.

sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

Avviare normalmente il servizio MySQL.

sudo service mysql start

Gli altri modi non hanno funzionato per me ma questo (grazie!), Oppure puoi anche andare qui rricketts.com/reset-root-password-mysql-5-7-ubuntu-16-04-lts
Dung

10
Molto utile ! Nel mio caso specifico (Ubuntu 18.04 LTS), ho dovuto sostituire l'host '%' a 'localhost'
FredericK

Questo non ha funzionato in Ubuntu 18.04. Ma ha funzionato con questo piccolo cambiamento descritto qui stackoverflow.com/a/53385753/1591143
Aleksandar Popovic

76

Sto condividendo la soluzione finale passo dopo passo per ripristinare una password MySQL in Linux Ubuntu.

Riferimento tratto dal blog (dbrnd.com)

Passaggio 1: interrompere il servizio MySQL.

sudo stop mysql

Passaggio 2: uccidi tutti i mysqld in esecuzione.

sudo killall -9 mysqld

Passaggio 3: avvio di mysqld in modalità provvisoria.

sudo mysqld_safe --skip-grant-tables --skip-networking &

Passaggio 4: avviare il client mysql

mysql -u root

Passaggio 5: dopo aver eseguito correttamente l'accesso, eseguire questo comando per modificare qualsiasi password.

FLUSH PRIVILEGES;

Passaggio 6: è possibile aggiornare la password di root di mysql.

UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';

Nota : su MySQL 5.7, Passwordviene chiamata colonnaauthentication_string .

Passaggio 7: eseguire questo comando.

FLUSH PRIVILEGES;

Infatti. Inoltre, è più vicino alla documentazione ufficiale . Nel caso in cui si esegue in questo modo: "ERRORE 1524 (HY000): Plugin 'auth_socket' non è caricato”, dare un'occhiata a stackoverflow.com/questions/37879448/...
Wtower

Ho anche dovuto cambiare mysql.user.plugin da 'auth_socket' a 'mysql_native_password' per il mio utente root con host di 'localhost'.
Brandon,

1
Ho dovuto usare "sudo /etc/init.d/mysql stop" per interrompere il servizio e "AGGIORNA SET mysql.user SET authentication_string = PASSWORD ('newpwd') WHERE User = 'root';" per aggiornare la password
L Bahr,

1
_string autenticato aiutato
Faiyaz Md Abdul

42

Ho riscontrato problemi con Ubuntu 18.04 e mysql 5.7, questa è la soluzione

Prova a riavviare mysql-server prima di eseguire i comandi

sudo service mysql restart

MYSQL-SERVER> = 5.7

sudo mysql -uroot -p
USE mysql;
UPDATE user SET authentication_string=PASSWORD('YOUR_PASSWORD') WHERE User='root';
UPDATE user SET plugin="mysql_native_password";
FLUSH PRIVILEGES;
quit;

MYSQL-SERVER <5.7

sudo mysql -uroot -p
USE mysql;
UPDATE user SET password=PASSWORD('YOUR_PASSWORD') WHERE User='root';
UPDATE user SET plugin="mysql_native_password";
FLUSH PRIVILEGES;
quit;

1
Grazie, sto eseguendo anche Ubuntu 18.04 qui e la MYSQL-SERVER >= 5.7versione era l'unica cosa che ha effettivamente risolto il problema
Miguelgraz,

1
Questo è quello che ha funzionato nell'installazione mysql di Ubuntu 18.04. MYSQL-SERVER >= 5.7versione per essere precisi.
Sathish Manohar,

34

Cambia la password di root di MySQL.

Questo metodo espone la password alla cronologia della riga di comando, questi comandi devono essere eseguiti come root.

  1. Accedi tramite lo strumento da riga di comando mysql:

    mysql -uroot -poldpassword
  2. Esegui questo comando:

    SET PASSWORD FOR root@'localhost' = PASSWORD('newpassword');

o

  1. Esegui questo comando, che imposta una password per l'utente corrente ('root' per questo caso):

    SET PASSWORD = PASSWORD ('newpassword');


26

A prima vista esegui questo comando:

sudo mysql

e quindi dovresti controllare quale metodo di autenticazione dei tuoi account utente MySQL usa. Quindi esegui questo comando

SELECT user,authentication_string,plugin,host FROM mysql.user;

ora puoi già vedere qualcosa del genere:

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+

nella tabella che precede, puoi vedere che tutti gli stati degli account degli utenti mysql e se hai impostato una password per l'account root prima di vederli mysql_native_passwordnella colonna dei plugin auth_socket. Tutto sommato per modificare la password di root è necessario eseguire:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Assicurati di cambiare la password con una password sicura di tua scelta. Quindi, per ricaricare il server per rendere effettive le nuove modifiche, eseguire questo;

FLUSH PRIVILEGES;

Quindi, controlla nuovamente i metodi di autenticazione utilizzati dal tuo mysql, con questo comando:

SELECT user,authentication_string,plugin,host FROM mysql.user;

e ora l'output è:

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             | *3636DACC8616D997782ADD0839F92C1571D6D78F | mysql_native_password | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+

come puoi vedere nella tabella delle sovvenzioni del tuo account root mysql_native_password . ora puoi uscire dalla shell MYSQL

exit;

Ecco, basta riavviare mysql sudo service mysql restart. Ora puoi accedere facilmente a mysql come account root con la tua password.


Penso che questo provenga da DigitalOcean, che è stata l'unica soluzione funzionante per me su Ubuntu 18.04 in esecuzione su Virtual Box
Kemal

funziona perfettamente in Ubuntu 18.04. Grazie.
Mahfuz,

12

Se desideri cambiare la password di root di MySQL, in un terminale inserisci:

sudo dpkg-reconfigure mysql-server-5.5

Il demone MySQL verrà arrestato e ti verrà chiesto di inserire una nuova password.


1
Questo è un modo molto migliore per farlo. Non sono stato in grado di eseguire i comandi precedenti a causa di un errore mysql ...
Andy,

sudo dpkg-reconfigure mysql-server-5.7 su ubuntu 16.04
Nick Barrett,

2
Ho eseguito sudo dpkg-reconfigure mysql-server-5.7Ubuntu 16.04, non ha richiesto di inserire una nuova password.
Franck Dernoncourt,

Se lo dice mysql-server is broken or not fully installed, si può usare sudo apt purge mysql*esudo apt install mysql-server
Pavel il

12

Funziona così come l'ho fatto per Ubuntu 16.04. Credito completo al link qui sotto come l'ho preso da lì. [ https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-lts[[1]

Ferma MySQL

sudo service mysql stop

Crea directory di servizio MySQL. sudo mkdir / var / run / mysqld

Autorizzare l'utente MySQL a scrivere nella directory di servizio.

sudo chown mysql: /var/run/mysqld

Avviare MySQL manualmente, senza controlli di autorizzazione o di rete.

sudo mysqld_safe --skip-grant-tables --skip-networking &

Accedi senza password.

mysql -uroot mysql

Aggiorna la password per l'utente root. assicurati che all'account atleast root venga aggiornato dalla query seguente. effettuare una selezione e verificare i valori esistenti, se lo si desidera

UPDATE mysql.user SET 
authentication_string=PASSWORD('YOURNEWPASSWORD'), 
plugin='mysql_native_password' WHERE User='root';
EXIT;

Disattiva MySQL.

sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

Avviare normalmente il servizio MySQL.

sudo service mysql start

11
  1. Stop MySQL sudo service mysql stop

  2. Crea directory di servizio MySQL. sudo mkdir / var / run / mysqld

  3. Autorizzare l'utente MySQL a scrivere nella directory di servizio. sudo chown mysql: / var / run / mysqld

  4. Avviare MySQL manualmente, senza controlli di autorizzazione o di rete. sudo mysqld_safe --skip-grant-tables --skip-networking &

5.Accedere senza password. mysql -uroot mysql

6. Aggiornare la password per l'utente root.

AGGIORNA mysql.user SET authentication_string = PASSWORD ('YOURNEWPASSWORD'), plugin = 'mysql_native_password' DOVE Utente = 'root' AND Host = '%'; USCITA;

  1. Disattiva MySQL. sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

  2. Avviare normalmente il servizio MySQL. sudo service mysql start


1
Ciao, questa risposta funziona per me, ma ho dovuto usare un altro comando: UPDATE mysql.user SET authentication_string=PASSWORD('solutionclub3@*^G'), plugin='mysql_native_password' WHERE User='root';senza AND Host='%'. Grazie!
David Corral,

10

Questa soluzione appartiene alla versione precedente di MySQL. Accedendo a MySQL utilizzando l'autenticazione socket, è possibile farlo.

sudo mysql -u root

Quindi è possibile eseguire il comando seguente.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

I dettagli sono disponibili qui .


1
Non riesco ad accedere come sudo mysql -u rootma sono stato in grado di farlo come sudo mysqled eseguire il ALTER USERcomando.
itsols,

Stavo ricevendo questo errore: "La tua password non soddisfa i requisiti attuali della politica". Sono stato in grado di correggere questo qui: stackoverflow.com/a/43094873/9073437 . Dopo aver impostato una politica password modificata, tutto ha funzionato bene.
Grandtour

10

Questa è la soluzione per me Lavoro a Ubuntu 18.04: https://stackoverflow.com/a/46076838/2400373

Ma è importante questo cambiamento nell'ultimo passaggio:

UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost'; 

Perbacco! Molte grazie! Questo è l'unico modo che funzionava nel mio caso. Dimentica quello stupido script di installazione sicuro in quanto ha tenuto aperto il mio 5.7 appena installato agli utenti senza mai chiedere una password ... se Linux / Ubuntu è per utenti attenti alla sicurezza perché è così difficile proteggere un'applicazione cruciale come il server MySQL ?
Thomas Urban

7

Per Ubuntu 18.04 e mysql versione 14.14 Distrib 5.7.22 segui il passaggio seguente per resettare la password mysql.

Passo 1

sudo systemctl stop mysql

Passo 2

sudo systemctl edit mysql

Questo comando aprirà un nuovo file nell'editor nano, che verrà utilizzato per modificare le sostituzioni del servizio MySQL. Questi cambiano i parametri di servizio predefiniti per MySQL. Questo file sarà vuoto, quindi aggiungi il seguente contenuto:

[Service]
ExecStart=
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid --skip-grant-tables --skip-networking

Passaggio 3

sudo systemctl daemon-reload
sudo systemctl start mysql

Passaggio 4

sudo mysql -u root

Passaggio 5

FLUSH PRIVILEGES;

Passaggio 6

UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHEREuser = 'root';

Passaggio 7

UPDATE mysql.user SET plugin ='mysql_native_password' WHERE user = 'root';

Passaggio 8

sudo systemctl revert mysql

e infine

sudo systemctl restart mysql

Adesso divertiti


Penso che ti sia mancato il contenuto del passaggio 2. È incompleto.
Lucas Mendes Mota Da Fonseca,

6

Facendo eco al commento di rogerdpack: se non conosci la password di root di MySQL e non ti interessano i dati / le impostazioni di MySQL, puoi reinstallarla e reimpostare la password di root come segue:

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo rm -rf /var/lib/mysql
sudo apt-get install -y mysql-server mysql-client 

Durante l'installazione, puoi scegliere la password del root:

inserisci qui la descrizione dell'immagine


2
Vorrei aver iniziato qui invece di perdere un'ora a sbattere la testa nel tentativo di reimpostare la password.
Eric Seastrand,

3

Se conosci la tua password attuale, non è necessario arrestare il server mysql. Apri il terminale Ubuntu. Accedi a mysql usando:

mysql - username -p

Quindi digitare la password. Questo ti porterà nella console mysql. All'interno della console, digitare:

> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

Quindi scaricare i privilegi utilizzando:

> flush privileges;

Allora hai finito.


2

Quando si utilizza MySQL PASSWORD()sul sistema in cui si desidera modificare la password, è possibile che la password venga visualizzata in un registro MySQL in chiaro [ sorgente ]. Mantenerli, i loro backup ecc. Sicuri quanto la password mi sembra un incubo, quindi preferisco farlo nel modo seguente:

  1. Sul tuo computer locale , eseguilo con la tua password:

     mysql -u someuser -p < <(echo "SELECT PASSWORD('mypass');")

    Nota lo spazio davanti per evitare che compaia nella storia di Bash (per altre distro Ubuntu, potrebbe funzionare diversamente - fonte ).

  2. Sul tuo computer server, esegui il comando seguente per modificare la password di root di MySQL (sostituisci myhashcon l'hash della password come stampato dal primo comando):

    mysql -u root -p < <(echo "SET PASSWORD FOR root@localhost = 'myhash';")
  3. Facoltativamente, diventiamo un po 'paranoici: sul tuo computer locale, cancella lo schermo del tuo terminale cleared elimina lo scrollback del tuo terminale virtuale, per nascondere la password in chiaro che appare nel comando sopra.


2

Per aggiornare la password utente "root" di Mysql devi tenere presente che per questo avrai bisogno di autorizzazioni per superutente. Se si dispone di privilegi di superutente, provare i seguenti comandi:

MySQL 5.7.6 e versioni successive

sudo su
service mysql stop
mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
\q;
exit
mysql -u root -p MyNewPass

MySQL 5.7.5 e precedenti

sudo su
service mysql stop
mysql -u root
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
\q;
exit
mysql -u root -p MyNewPass

2

Non hai bisogno di tutto questo. Accedi semplicemente:

mysql -u root -p

Quindi modificare la password dell'utente corrente come mysql>richiesta:

mysql> set password=password('the_new_password');
mysql> flush privileges;

1
Questo è un modo più semplice! Funziona per me con mysql 5.7.21-0ubuntu0.17.10.1
Sergio Belevskij

2

La maggior parte delle risposte su questo argomento sono obsolete; due importanti cambiamenti si sono verificati in MySQL fino alla stesura di questa risposta:

1- il campo "Password" nella tabella utente è stato sostituito dalla colonna "autenticazione_stringa".

2- la funzione di crittografia "Password": PASSWORD ("di alcuni testi") è obsoleta.

Fare riferimento a questo link per ulteriori informazioni: dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html


1

Invece di reimpostare la password, è possibile aggirare il computer locale se si è configurato il phpmyadmincollegamento senza fornire la password o il nome utente. Dai un'occhiata all'avvio mysql, apacheecc. Ho xamppinstallato sul mio computer locale. Quindi l'avvio di xampp avvierà tutti i servizi necessari. Ora vado a http://localhost/phpmyadminmostrarmi tutti i database. Ciò conferma che hai salvato il nome utente e la password nel file di configurazione di phpmyadmin che si trova nel phpmyadminpercorso di installazione. Se xamppla phpmyadmincartella è stata installata, è possibile trovarla nella cartella principale xamppdell'installazione. Cerca la parola passwordnel config.inc.phpfile. Lì troverai il password e username.


1

Puoi facilmente cambiare la password mysql se distribuita su xampp attraverso la GUI phpadmin fornita.

phpMyAdmin -> User Accounts -> Edit Privileges (Select the intended user) -> Change Password (Tab)

1

per mysql 5.6 questo comando funziona ed è possibile impostare la password tramite la procedura guidata:

sudo dpkg-reconfigure mysql-server-5.6

Ho provato ma non funziona .. Sto ricevendo questo errore seguente .. potresti per favore aiutare? Questa installazione di MySQL è già stata aggiornata alla 5.7.21, utilizzare --force se è ancora necessario eseguire mysql_upgrade
Vijaysinh Parmar

1

Puoi provare questi alcuni passaggi per ripristinare la password di root di mysql 5.7:

Arresta il servizio Mysql 1 °

sudo /etc/init.d/mysql stop 

Accedi come root senza password sudo mysqld_safe --skip-grant-tablese

Dopo il login mysql terminal dovresti aver bisogno di eseguire altri comandi:

use mysql;




UPDATE mysql.user SET authentication_string=PASSWORD('solutionclub3@*^G'), plugin='mysql_native_password' WHERE User='root';


flush privileges;


sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

Dopo aver riavviato il tuo server mysql Se riscontri ancora errori devi visitare: Ripristina la password di root di MySQL 5.7 Ubuntu 16.04


1

Puoi usare questo comando:

UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';

dopodiché si prega di utilizzare flush:

FLUSH PRIVILEGES;

1

Impostazione della password MySQL

  1. interrompere il servizio di database MySQL

sudo /etc/init.d/mysql stop

  1. crea una nuova directory mysqld

sudo mkdir / var / run / mysqld /

  1. dare accesso all'utente mysql

sudo chown mysql / var / run / mysqld /

  1. avviare MySQL in modalità provvisoria ...

sudo mysqld_safe --skip-grant-tables &

  1. accedere al server database senza password

sudo mysql -u root

  1. usa il database mysql predefinito

usa mysql;

  1. cambia la password di root

update user set authentication_string=PASSWORD("New_Passwore_Here") where = Utente 'root';

  1. Salva le modifiche

    privilegi di scarico; Uscita;

  2. arrestare MySQL safe_mode e avviare il servizio predefinito MySQL

sudo /etc/init.d/mysql stop

sudo /etc/init.d/mysql start

  1. accedere nuovamente al database MySQL utilizzando la nuova password di root

sudo mysql -u root -p

*** Fonte: https://websiteforstudents.com/resetting-mysql-root-password-on-ubuntu-16-04-17-10-and-18-04-lts/


1

Se conosci la password degli utenti "root", accedi a mysql con quelle credenziali. Quindi eseguire la query seguente per aggiornare la password.

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_passowrd';

0

durante la modifica / reimpostazione della password di MySQL i seguenti comandi elencati sopra non sono stati utili. Ho scoperto che entrare nel terminale e usare questi comandi è inutile. invece usa il comando sudo per fermare tutto. DELETE SYSTEM 32 per Windows se questo aiuta.


1
La domanda riguarda il ubuntusistema operativo non Windows. Cosa intendi con DELETE SYSTEM 32 per Windows ?
Ehsan,

0

Per reimpostare o modificare la password, immettere sudo dpkg-reconfigure mysql-server-X.X(XX è la versione mysql installata, ovvero 5.6, 5.7) e quindi verrà visualizzata una schermata in cui è necessario impostare la nuova password, quindi nel passaggio successivo confermare la password e attendere solo un momento. Questo è tutto.


0

Ho dovuto seguire questa strada su Ubuntu 16.04.1 LTS. È un po 'un mix di alcune delle altre risposte sopra - ma nessuna di queste ha aiutato. Ho trascorso un'ora o più a provare tutti gli altri suggerimenti dal sito Web MySql a tutto su SO, finalmente ho funzionato con:

Nota: mentre mostrava Enter password per root utente, non avevo la password originale, quindi ho appena inserito la stessa password in essere usato come nuova password.

Nota: non esisteva /var/log/mysqld.log solo /var/log/mysql/error.log

Nota anche che questo non ha funzionato per me:
sudo dpkg-reconfigure mysql-server-5.7

Nemmeno:
sudo dpkg-reconfigure --force mysql-server-5.5

crea la directory di servizio MySQL.
sudo mkdir /var/run/mysqld

Autorizzare l'utente MySQL a scrivere nella directory di servizio.
sudo chown mysql: /var/run/mysqld

Poi:

  1. uccide l'attuale mysqld pid
  2. esegui mysqld con sudo / usr / sbin / mysqld &
  3. run / usr / bin / mysql_secure_installation

    Output da mysql_secure_installation

    root @ myServer: ~ # / usr / bin / mysql_secure_installation

    Protezione della distribuzione del server MySQL.

    Inserisci la password per l'utente root:

    VALIDATE PLUGIN PASSWORD può essere utilizzato per testare le password e migliorare la sicurezza. Controlla la forza della password e consente agli utenti di impostare solo quelle password che sono abbastanza sicure. Desideri installare il plug-in VALIDATE PASSWORD?

    Premere y | Y per Sì, qualsiasi altro tasto per No: no Uso della password esistente per root. Cambia la password per root? ((Premere y | Y per Sì, qualsiasi altro tasto per No): y

    Nuova password:

    Reinserisci nuova password: per impostazione predefinita, un'installazione MySQL ha un utente anonimo, che consente a chiunque di accedere a MySQL senza che sia necessario creare un account utente. Questo è inteso solo per i test e per rendere l'installazione un po 'più fluida. È necessario rimuoverli prima di trasferirsi in un ambiente di produzione.

    Rimuovere utenti anonimi? (Premere y | Y per Sì, qualsiasi altro tasto per No): y Successo.

    Normalmente, root dovrebbe essere autorizzato a connettersi solo da 'localhost'. Questo assicura che qualcuno non possa indovinare la password di root dalla rete.

    Non consentire l'accesso root da remoto? (Premere y | Y per Sì, qualsiasi altro tasto per No): y Successo.

    Per impostazione predefinita, MySQL viene fornito con un database denominato "test" a cui chiunque può accedere. Anche questo è destinato esclusivamente ai test e deve essere rimosso prima di trasferirsi in un ambiente di produzione.

    Rimuovere il database di prova e accedervi? (Premere y | Y per Sì, qualsiasi altro tasto per No): y

    • Eliminazione del database dei test ... Esito positivo.

    • Rimozione dei privilegi sul database di test ... Operazione riuscita.

    Il ricaricamento delle tabelle dei privilegi garantirà che tutte le modifiche apportate finora abbiano effetto immediato.

    Ricarica le tabelle dei privilegi ora? (Premere y | Y per Sì, qualsiasi altro tasto per No): y Successo.

    Tutto fatto!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.