Error decode JSON exrate Промяна на потребителската парола в MySQL
Начини на плащане Abuse

Промяна на потребителската парола в MySQL

10.10.2022, 21:52

Когато работите с MySQL СУБД, е изключително важно да знаете как да промените паролата на потребителя. Изглежда, че тази задача може да бъде решена само ако имате права на суперпотребител. Но дори и обикновен потребител може да промени паролата при определени обстоятелства. В тази статия ще ви разкажем как да го направите при нормални обстоятелства.

Промяна на потребителска парола в СУБД MySQL

Можете да промените паролата на потребител по различни начини. В средата на MySQL има две команди за тази задача - SET PASSWORD и ALTER USER. Нека ви разкажем подробно за всеки от тези два метода.

Нека да разберем версията на MySQL

В началото на тази година MySQL има две основни версии. Първата е остаряла, но все още се поддържа (това е версия 5.7), а най-актуалната в момента е версия 8.0. Как да разберете версията на MySQL? Можете да направите това със специална команда, която трябва да се изпълни в терминала:

$ mysql –version

Узнаем версию MySQL

Както можете да видите от изображението по-горе, използва се версия 8.0.28, но е важно да се отбележи, че ALTER USER е от значение само за предишните версии на MySQL.В по-новите версии можете да използвате и двете версии.

Как да влезете в конзолата

За да влезете в конзолата, трябва да влезете в MySQL, като използвате потребителското си име и парола. Когато даден потребител вече е оторизиран в сървъра, трябва да извършвате всички действия от негово име. Когато MySQL се използва за първи път, трябва да използвате правата на root.

Командата за влизане като root:

$ mysql -u root –p

Как зайти в консоль

След това ще се появи подкана за въвеждане на парола. Остава да въведете паролата, да натиснете клавиша Enter, като веднага след това ще се зареди интерфейсът на MySQL с всички налични команди.

Преглед на хостове

Особеност на MySQL е, че тя има отделен хост, към който е свързан даден акаунт. Нека отбележим трите основни хоста:

  • Localhost;
  • %;
  • IP адрес/име на домейн.

Localhost позволява само локално влизане в системата без възможност за отдалечена връзка, % означава, че акаунтът може да се използва от всеки хост, IP адрес/име на домейн означава, че акаунтът може да се използва само на избраното име на домейн/IP адрес.

За да разберем типа на хоста на акаунта, трябва да изпълним следната SQL заявка:

$ SELECT user, host FROM mysql.user

Просмотр хостов

На горната снимка на екрана виждаме, че потребителят alex има хост от %. Този хост трябва да се използва при смяна на паролата. Потребителите в MySQL и цялата информация за тях се съхраняват в базата данни на mysql в таблицата user.

Промяна на паролата с помощта на SET PASSWORD

Можете също така да промените паролата с командата SET PASSWORD. За да промените паролата на потребител alex с хост % на somepassword666, трябва да използвате следната команда:

$ SET PASSWORD FOR 'alex'@'%' = 'somepassword666';

Меняем пароль с помощью SET PASSWORD

Промяна на паролата с помощта на ALTER USER

Можете да промените кода на потребителя, като използвате друга команда - ALTER USER. За да сменим паролата на потребителя alex с хост % с другапарола666, ще изпълним SQL заявка:

$ ALTER USER 'alex'@'%' IDENTIFIED BY 'anotherpassword666';

Меняем пароль с помощью ALTER USER

Моля, обърнете внимание, че потребителското име и хостът са затворени в единични кавички, без които MySQL няма да може да разпознае низа.

Сега възстановете кеша за привилегии:

$ FLUSH PRIVILEGES;

Как да проверим новата парола

След като сте променили паролата, привилегиите и сте нулирали кеша, трябва да извършите проверка на влизането като потребителя, чиято парола е променена.

Излезте от MySQL shell, като изпълните командата exit:

$ exit

Как проверить новый пароль

Сега влезте в шела:

$ mysql -u alex -p

Как проверить новый пароль

Ако видите системния промпт, докато влизате в системата, значи сте направили всичко правилно, което означава, че паролата е била успешно променена.