Error decode JSON exrate
Dirbant su "MySQL" DBVS labai svarbu žinoti, kaip pakeisti naudotojo slaptažodį. Atrodo, kad šią užduotį galima išspręsti tik turint supernaudotojo teises. Tačiau tam tikromis aplinkybėmis slaptažodį gali pakeisti net ir paprastas naudotojas. Šiame straipsnyje papasakosime, kaip tai padaryti įprastomis aplinkybėmis.
Naudotojo slaptažodį galite pakeisti įvairiais būdais. MySQL aplinkoje šiai užduočiai atlikti yra dvi komandos - SET PASSWORD
ir ALTER USER
. Išsamiai papasakosime apie kiekvieną iš šių dviejų būdų.
Šių metų pradžioje "MySQL" turi dvi pagrindines versijas. Pirmoji yra pasenusi, bet vis dar palaikoma (tai 5.7 versija), o pati naujausia šiuo metu yra 8.0 versija. Kaip sužinoti "MySQL" versiją? Tai galite padaryti naudodami specialią komandą, kurią reikia vykdyti terminale:
$ mysql –version
Kaip matyti iš paveikslėlio, naudojama 8.0.28 versija, tačiau svarbu atkreipti dėmesį, kad ALTER USER
yra aktuali tik ankstesnėse "MySQL" versijose, o naujesnėse versijose galima naudoti abi versijas.
Norėdami patekti į konsolę, turėtumėte prisijungti prie "MySQL" naudodami savo prisijungimo vardą ir slaptažodį. Kai naudotojas jau yra įgaliotas serveryje, visus veiksmus turėtumėte atlikti jo vardu. Kai "MySQL" naudojama pirmą kartą, turėtumėte naudoti root teises.
Komanda, skirta prisijungti kaip root:
$ mysql -u root –p
Po to pasirodys slaptažodžio užklausa. Belieka įvesti slaptažodį, paspausti klavišą Enter, iškart po to bus įkelta "MySQL" sąsaja su visomis galimomis komandomis.
MySQL ypatybė yra ta, kad ji turi atskirą kompiuterio prieglobstį, su kuriuo susieta paskyra. Atkreipkime dėmesį į tris pagrindinius šeimininkus:
Localhost leidžia tik vietinį prisijungimą be nuotolinio ryšio, % reiškia, kad paskyra galima naudotis iš bet kurio kompiuterio, IP adresas / domeno vardas reiškia, kad paskyra galima naudotis tik pasirinktu domeno vardu / IP adresu.
Norėdami sužinoti paskyros prieglobos tipą, turime atlikti šią SQL užklausą:
$ SELECT user, host FROM mysql.user
Šioje ekrano nuotraukoje matome, kad alex naudotojas turi % host'ą. Šis host'as turėtų būti naudojamas keičiant slaptažodį. MySQL vartotojai ir visa informacija apie juos saugomi mysql duomenų bazėje lentelėje user.
Slaptažodį taip pat galite pakeisti naudodami komandą SET PASSWORD
. Norėdami pakeisti naudotojo alex, kurio kompiuterio prieglobstis %, slaptažodį į somepassword666, turite naudoti šią komandą:
$ SET PASSWORD FOR 'alex'@'%' = 'somepassword666';
Naudotojo kodą galite pakeisti naudodami kitą komandą - ALTER USER
. Norėdami pakeisti naudotojo alex su host % slaptažodį į kitokį slaptažodį666, atliksime SQL užklausą:
$ ALTER USER 'alex'@'%' IDENTIFIED BY 'anotherpassword666';
Atkreipkite dėmesį, kad vartotojo vardas ir prieglobstis pateikiami viengubomis kabutėmis, be jų "MySQL" negalės atpažinti eilutės.
Dabar iš naujo nustatykite privilegijų talpyklą:
$ FLUSH PRIVILEGES;
Pakeitę slaptažodį, privilegijas ir iš naujo nustatę talpyklą, turėtumėte atlikti prisijungimo patikrinimą kaip naudotojas, kurio slaptažodis buvo pakeistas.
Išeikite iš
"MySQL" apvalkalo įvykdydami komandą exit
:
$ exit
Dabar prisijunkite prie apvalkalo:
$ mysql -u alex -p
Jei prisijungdami matote sistemos užklausą, viską atlikote teisingai, vadinasi, slaptažodis buvo sėkmingai pakeistas.