GNU/Linux >> Linux Esercitazione >  >> Linux

mysql (mariadb) ERRORE 1698 (28000):accesso negato per l'utente 'root'@'localhost'

Devi reimpostare la password.so per questo

sudo mysql -u root
use mysql;
update user set plugin='' where User='root';
flush privileges;
exit;

L'idea con la nuova configurazione è che non dovresti usare affatto le password. Vedere Plugin di autenticazione UNIX_SOCKET per i dettagli.

Ciò che è particolarmente rilevante è il contenuto di /usr/share/doc/mariadb-server-10.0/README.Debian.gz su Ubuntu 16.04:

Nelle nuove installazioni non viene impostata alcuna password di root e non viene più creato alcun utente debian-sys-maint. Invece l'account root MariaDB è impostato per essere autenticato utilizzando il socket unix, ad es. qualsiasi invocazione di mysqld da parte di root o tramite sudo consentirà all'utente di vedere il prompt di mysqld.

Non puoi mai eliminare l'utente mysql "root". Sebbene non sia impostata alcuna password, il plug-in unix_auth garantisce che possa essere eseguito solo localmente come utente root.

Le credenziali in /etc/mysql/debian.cnf specificano l'utente utilizzato dagli script init per arrestare il server ed eseguire la registrazione. Questo era l'utente debian-sys-maint che non è più utilizzato come root può essere eseguito direttamente.

Quindi, se disabiliti quel plug-in per root e imposti una password, il cron job giornaliero si interromperà poiché presuppone che effettuerà l'accesso come root senza password, ma con il plug-in.

Più tardi dice:

Gli script devono essere eseguiti quando un utente dispone delle autorizzazioni richieste ed è identificato tramite unix_socket.

Quindi sembra che le password non debbano più essere utilizzate dalle applicazioni.


Ho risolto il problema seguendo la risposta di questo post:

Impossibile reimpostare la password di root di MySQL (MariaDB)

Bisogna cambiare il campo plugin di mysql.user per tutte le radici in una stringa vuota.


Linux
  1. Accesso negato per l'utente 'root'@'localhost' (utilizzando la password:Sì) dopo la reimpostazione della password LINUX

  2. ERRORE 1045 (28000):accesso negato per l'utente 'root'@'localhost' (utilizzando la password:YES)

  3. Qual è la password di root predefinita per MySQL 5.7

  4. Abilita la password semplice per l'utente root su CentOS

  5. determinare ulimit per l'utente root

Modifica il metodo di autenticazione per l'utente root MySQL in Ubuntu

[Risolto] Impossibile accedere al file di archiviazione, autorizzazione negata Errore in KVM Libvirt

Foglio informativo sui comandi del database MySQL per Linux

Risoluzione dei problemi:errore MySQL/MariaDB n. 1044 e n. 1045 accesso negato all'utente

Come accedere come root in MySQL?

Come modificare/reimpostare la password di root di MySQL o MariaDB