Portál AbcLinuxu, 12. května 2025 19:18
bash-3.2# mysql -u root ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)Hesla mám úplně všude stejná, žádné heslo jsem při instalaci MySQL nezadával. Když zkusím s parametrem -p a zadám své normální heslo tak mi to hodí úplně stejnou chybu (akorát using password mám YES). Rád bych si nastavil nulové heslo, najde se prosím někdo kdo by mi poradil? Předem děkuji
mysql -u root --password=tvojenovehesloSice to funguje, ale pracoval bych s tim dost opatrne:
martin@martin:~$ tail -n2 ~/.bash_history clear mysql -u root --password=MOJE_TAJNE_HESLO martin@martin:~$
mysqld_safe --skip-grant-tables &zůstane viset (neukončí se), takže pro provedení dalších kroků v návodu jsem si musel otevřít další konsoli. Po zadání tohohle příkazu se mi už povedlo do MySQL přihlásit - bez hesla za jakéhokoliv uživatele, jenže problém je když restartuji MySQL server... Poté je opět nemožné se přihlásit (píše mi to access denied). Předem díky
mysqld_safe --skip-grant-tables &zůstane viset (neukončí se), takže pro provedení dalších kroků v návodu jsem si musel otevřít další konsoli. Po zadání tohohle příkazu se mi už povedlo do MySQL přihlásit - bez hesla za jakéhokoliv uživatele, jenže problém je když restartuji MySQL server... Poté je opět nemožné se přihlásit (píše mi to access denied). Předem díky
pacman -Rnd mysql rm -rf /usr/share/mysql rm /etc/rc.d/mysql rm /etc/conf.d/mysqldNějaká rada?
UPDATE `user` SET `Password`='' WHERE `User` LIKE 'root'
. Celou db si pochopitelně zazálohujte.
bash-3.2# mysqld_safe --skip-grant-tables & [1] 5049 bash-3.2# nohup: ignoring input and redirecting stderr to stdout Starting mysqld daemon with databases from /var/lib/mysql bash-3.2# mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.0.60 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> UPDATE `user` SET `Password`='' WHERE `User` LIKE 'root'; ERROR 1046 (3D000): No database selected mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> UPDATE `user` SET `Password`='' WHERE `User` LIKE 'root'; Query OK, 0 rows affected (0.00 sec) Rows matched: 0 Changed: 0 Warnings: 0Po restartování mysqld to opět nefunguje, což je patrné i z hlášení kde je 0 rows affected... Možná ale vím kde je problém, koukal jsem totiž do tabulky user a ta je prázdná, možná by stačilo přidat tam roota, jenže tahle tabulka má hodně sloupců, tak bych nerad podělal něco čemu nerozumím. Díky
INSERT INTO `user` VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0)Třetí sloupec je to heslo, zkuste prázdné, případně nějaké s funkcí PASSWORD().
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.