GNU/Linux >> Znalost Linux >  >> Linux

mysql (mariadb) ERROR 1698 (28000):Přístup odepřen uživateli 'root'@'localhost'

Musíte resetovat heslo. Za tímto účelem

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

Myšlenka nového nastavení je taková, že byste neměli používat hesla vůbec. Podrobnosti naleznete v modulu UNIX_SOCKET Authentication Plugin.

Obzvláště relevantní je obsah /usr/share/doc/mariadb-server-10.0/README.Debian.gz na Ubuntu 16.04:

Při nových instalacích není nastaveno žádné root heslo a již není vytvořen žádný uživatel debian-sys-maint. Místo toho je kořenový účet MariaDB nastaven tak, aby byl autentizován pomocí unixového soketu, např. jakékoli vyvolání mysqld uživatelem root nebo přes sudo umožní uživateli zobrazit výzvu mysqld.

Uživatele mysql „root“ možná nikdy nesmažete. Ačkoli nemá nastaveno žádné heslo, unix_auth plugin zajišťuje, že jej lze spustit pouze lokálně jako uživatel root.

Pověření v /etc/mysql/debian.cnf určují uživatele, kterého používají inicializační skripty k zastavení serveru a provedení logrotace. Dříve to byl uživatel debian-sys-maint, který se již nepoužívá, protože root může běžet přímo.

Takže pokud deaktivujete tento plug-in pro root a nastavíte heslo, denní úloha cron se přeruší, protože předpokládá, že se bude přihlašovat jako root bez hesla, ale s plug-inem.

Později to říká:

Skripty by se měly spouštět, protože uživatel má požadovaná povolení a je identifikován pomocí unix_socket.

Zdá se tedy, že by aplikace již neměly používat hesla.


Vyřešil jsem problém po odpovědi z tohoto příspěvku:

Nelze resetovat kořenové heslo MySQL (MariaDB)

Je třeba změnit pole pluginu mysql.user pro všechny kořeny na prázdný řetězec.


Linux
  1. Chyba Přístup odepřen, potřebujete oprávnění PROCESS [MySQL]

  2. Přístup odepřen uživateli 'root'@'localhost' (pomocí hesla:Ano) po resetování hesla LINUX

  3. Povolit jednoduché heslo pro uživatele root na CentOS

  1. určit ulimit pro uživatele root

  2. Přístup odepřen konkrétnímu uživateli konfigurací účtu PAM

  3. Povolit linuxovému root uživateli mysql root přístup bez hesla

  1. Jak resetovat kořenové heslo MySQL nebo MariaDB

  2. Řízení přístupu k rootless Podman pro uživatele

  3. MySQL - CHYBA 1045 - Přístup odepřen