existuje několik způsobů, jak nastavit uživatelské heslo MySQL:
– Vytvořit uživatele … identifikovaný
– GRANT … identifikovaný
– nastavit heslo
– heslo mysqladmin
– aktualizovat grantové tabulky (nedoporučuje se)
u všech metod jsou oprávnění potřebná ke změně hesla:
1. Všichni uživatelé mohou změnit své vlastní heslo.
2. Uživatelé s aktualizací databáze mysql mohou aktualizovat hesla pro ostatní uživatele pomocí nastaveného hesla nebo v MySQL 5.7 a později pomocí ALTER USER.
3., Pokud je povolena možnost read_only, kromě výše uvedených oprávnění je vyžadován SUPER.
nastavit heslo
nejčastějším způsobem, jak změnit heslo existujícího účtu bez změny některého z jeho oprávnění, je použít příkaz SET PASSWORD. Chcete-li například nastavit heslo pro tom na lokálním hostiteli na new_password, použijte následující příkaz:
mysql> SET PASSWORD FOR tom@localhost = PASSWORD('new_password');Query OK, 0 rows affected (0.00 sec)
Pokud jste přihlášeni jako nekorenový uživatel a váš uživatel nemá oprávnění k aktualizaci databáze mysql, můžete změnit pouze své vlastní heslo., Udělat to pomocí NASTAVIT HESLO, prohlášení, aniž by NA článek:
mysql> SET PASSWORD = PASSWORD('new_password');
MySQL 5.7 a novější (NASTAVIT HESLO)
V MySQL 5.7 a novější je nutné použít HESLO() funkce:
MySQL 5.7> SET PASSWORD FOR myuser@localhost = 'my_new_password';Query OK, 0 rows affected (0.01 sec)
Chcete-li změnit heslo pro aktuálního uživatele:
MySQL 5.7> SET PASSWORD = 'my_new_password';Query OK, 0 rows affected (0.00 sec)
mysqladmin
mysqladmin nástroj umožňuje změnit heslo pro uživatele, víte, stávající heslo pro., Použití je:
$ mysqladmin --defaults-file=etc/my.cnf --user=tom --password my_new_passwordEnter password:New password:Confirm new password:
ALTER USER
příkaz ALTER USER lze také použít ke změně hesla existujícího uživatele:
MySQL 5.7> ALTER USER tom@localhost IDENTIFIED BY 'my_new_password';Query OK, 0 rows affected (0.01 sec)
ALTER USER také podporuje manipulaci s několika uživateli s jedním příkazem, například:
MySQL 5.7> ALTER USER myuser@localhost, tom@localhost IDENTIFIED BY 'my_new_password';Query OK, 0 rows affected (0.01 sec)