MySQL 8.0-ൽ റൂട്ട് പാസ്uവേഡ് എങ്ങനെ പുനഃസജ്ജമാക്കാം


നിങ്ങളുടെ MySQL റൂട്ട് പാസ്uവേഡ് മറക്കുകയോ നഷ്uടപ്പെടുകയോ ചെയ്യുന്ന നിർഭാഗ്യകരമായ ഒരു സംഭവത്തിൽ, അത് എങ്ങനെയെങ്കിലും വീണ്ടെടുക്കാൻ നിങ്ങൾക്ക് തീർച്ചയായും ഒരു വഴി ആവശ്യമാണ്. നമുക്ക് അറിയേണ്ടത്, പാസ്uവേഡ് യൂസർ ടേബിളിൽ സൂക്ഷിച്ചിരിക്കുന്നു എന്നതാണ്. ഇതിനർത്ഥം MySQL പ്രാമാണീകരണം ബൈപാസ് ചെയ്യുന്നതിനുള്ള ഒരു മാർഗം ഞങ്ങൾ കണ്ടെത്തേണ്ടതുണ്ട്, അതിനാൽ നമുക്ക് പാസ്uവേഡ് റെക്കോർഡ് അപ്uഡേറ്റ് ചെയ്യാം.

ഭാഗ്യവശാൽ, നേടാൻ എളുപ്പമാണ്, MySQL 8.0 പതിപ്പിൽ റൂട്ട് പാസ്uവേഡ് വീണ്ടെടുക്കുന്നതിനോ പുനഃസജ്ജമാക്കുന്നതിനോ ഉള്ള പ്രക്രിയയിലൂടെ ഈ ട്യൂട്ടോറിയൽ നിങ്ങളെ നയിക്കും.

MySQL ഡോക്യുമെന്റേഷൻ പ്രകാരം റൂട്ട് MySQL പാസ്uവേഡ് പുനഃസജ്ജമാക്കാൻ രണ്ട് വഴികളുണ്ട്. ഞങ്ങൾ രണ്ടും അവലോകനം ചെയ്യും.

-init-file ഉപയോഗിച്ച് MySQL റൂട്ട് പാസ്uവേഡ് പുനഃസജ്ജമാക്കുക

റൂട്ട് പാസ്uവേഡ് പുനഃസജ്ജമാക്കുന്നതിനുള്ള ഒരു മാർഗ്ഗം, ഒരു ലോക്കൽ ഫയൽ ഉണ്ടാക്കുക, തുടർന്ന് കാണിച്ചിരിക്കുന്നതുപോലെ --init-file ഓപ്ഷൻ ഉപയോഗിച്ച് MySQL സേവനം ആരംഭിക്കുക എന്നതാണ്.

# vim /home/user/init-file.txt

mysql ഉപയോക്താവിന് ഫയൽ വായിക്കാനാകുമെന്ന് നിങ്ങൾ ഉറപ്പാക്കേണ്ടത് പ്രധാനമാണ്. ആ ഫയലിനുള്ളിൽ ഇനിപ്പറയുന്നവ ഒട്ടിക്കുക:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

മുകളിൽ പറഞ്ഞിരിക്കുന്നതിൽ “new_password” നിങ്ങൾ ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുന്ന പാസ്uവേഡ് ഉപയോഗിച്ച് മാറ്റുക.

ഇപ്പോൾ MySQL സേവനം നിർത്തിയെന്ന് ഉറപ്പാക്കുക. നിങ്ങൾക്ക് ഇനിപ്പറയുന്നവ ചെയ്യാൻ കഴിയും:

# systemctl stop mysqld.service     # for distros using systemd 
# /etc/init.d/mysqld stop           # for distros using init

തുടർന്ന് ഇനിപ്പറയുന്നവ പ്രവർത്തിപ്പിക്കുക:

# mysqld --user=mysql --init-file=/home/user/init-file.txt --console

ഇത് MySQL സേവനം ആരംഭിക്കുകയും പ്രോസസ്സിനിടയിൽ നിങ്ങൾ സൃഷ്ടിച്ച init-file എക്സിക്യൂട്ട് ചെയ്യുകയും അങ്ങനെ റൂട്ട് ഉപയോക്താവിനുള്ള പാസ്uവേഡ് അപ്uഡേറ്റ് ചെയ്യുകയും ചെയ്യും. പാസ്uവേഡ് പുനഃസജ്ജമാക്കിയ ശേഷം ഫയൽ ഇല്ലാതാക്കുന്നത് ഉറപ്പാക്കുക.

സെർവർ നിർത്തുന്നത് ഉറപ്പാക്കുക, അതിനുശേഷം അത് സാധാരണ രീതിയിൽ ആരംഭിക്കുക.

# systemctl stop mysqld.service        # for distros using systemd 
# systemctl restart mysqld.service     # for distros using systemd 

# /etc/init.d/mysqld stop              # for distros using init
# /etc/init.d/mysqld restart           # for distros using init

പുതിയ പാസ്uവേഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇപ്പോൾ MySQL സെർവറിലേക്ക് റൂട്ട് ആയി കണക്ട് ചെയ്യാൻ കഴിയും.

# mysql -u root -p

-skip-grant-tables ഉപയോഗിച്ച് MySQL റൂട്ട് പാസ്uവേഡ് പുനഃസജ്ജമാക്കുക

--skip-grant-tables ഓപ്ഷൻ ഉപയോഗിച്ച് MySQL സേവനം ആരംഭിക്കുക എന്നതാണ് ഞങ്ങളുടെ രണ്ടാമത്തെ ഓപ്ഷൻ. സേവനം ആരംഭിക്കുമ്പോൾ, എല്ലാ ഉപയോക്താക്കൾക്കും പാസ്uവേഡ് ഇല്ലാതെ കണക്uറ്റ് ചെയ്യാൻ കഴിയുന്നതിനാൽ ഇത് സുരക്ഷിതമല്ല.

സെർവർ ആരംഭിക്കുകയാണെങ്കിൽ --skip-grant-tables, --skip-networking എന്ന ഓപ്uഷൻ സ്വയമേവ സജീവമാകുന്നതിനാൽ റിമോട്ട് കണക്ഷനുകൾ ലഭ്യമാകില്ല.

ആദ്യം MySQL സേവനം നിർത്തിയെന്ന് ഉറപ്പാക്കുക.

# systemctl stop mysqld.service     # for distros using systemd 
# /etc/init.d/mysqld stop           # for distros using init

തുടർന്ന് ഇനിപ്പറയുന്ന ഓപ്ഷൻ ഉപയോഗിച്ച് സേവനം ആരംഭിക്കുക.

# mysqld --skip-grant-tables --user=mysql &

തുടർന്ന്, പ്രവർത്തിപ്പിക്കുന്നതിലൂടെ നിങ്ങൾക്ക് mysql സെർവറിലേക്ക് കണക്റ്റുചെയ്യാനാകും.

# mysql

--skip-grant-tables ഓപ്uഷൻ ഉപയോഗിച്ച് സേവനം ആരംഭിക്കുമ്പോൾ അക്കൗണ്ട് മാനേജ്uമെന്റ് പ്രവർത്തനരഹിതമായതിനാൽ, ഗ്രാന്റുകൾ ഞങ്ങൾ വീണ്ടും ലോഡുചെയ്യേണ്ടതുണ്ട്. അതുവഴി നമുക്ക് പിന്നീട് പാസ്uവേഡ് മാറ്റാൻ കഴിയും:

# FLUSH PRIVILEGES;

ഇപ്പോൾ നിങ്ങൾക്ക് പാസ്uവേഡ് അപ്uഡേറ്റ് ചെയ്യുന്നതിന് ഇനിപ്പറയുന്ന ചോദ്യം പ്രവർത്തിപ്പിക്കാം. നിങ്ങൾ ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുന്ന യഥാർത്ഥ പാസ്uവേഡ് ഉപയോഗിച്ച് new_password മാറ്റുന്നത് ഉറപ്പാക്കുക.

# ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_passowrd';

ഇപ്പോൾ MySQL സെർവർ നിർത്തി സാധാരണ രീതിയിൽ ആരംഭിക്കുക.

# systemctl stop mysqld.service        # for distros using systemd 
# systemctl restart mysqld.service     # for distros using systemd 

# /etc/init.d/mysqld stop              # for distros using init
# /etc/init.d/mysqld restart           # for distros using init

നിങ്ങളുടെ പുതിയ പാസ്uവേഡ് ഉപയോഗിച്ച് കണക്റ്റുചെയ്യാൻ നിങ്ങൾക്ക് കഴിയണം.

# mysql -u root -p

ഈ ഉപയോഗപ്രദമായ ഇനിപ്പറയുന്ന MySQL അനുബന്ധ ലേഖനങ്ങൾ വായിക്കാനും നിങ്ങൾ ആഗ്രഹിച്ചേക്കാം.

  1. CentOS, RHEL, Fedora എന്നിവയിൽ MySQL 8 എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം
  2. 15 ഉപയോഗപ്രദമായ MySQL പെർഫോമൻസ് ട്യൂണിംഗും ഒപ്റ്റിമൈസേഷൻ നുറുങ്ങുകളും
  3. Linux-നുള്ള 12 MySQL സുരക്ഷാ സമ്പ്രദായങ്ങൾ
  4. MySQL പ്രകടനം നിരീക്ഷിക്കുന്നതിനുള്ള 4 ഉപയോഗപ്രദമായ കമാൻഡ് ലൈൻ ടൂളുകൾ
  5. MySQL ഡാറ്റാബേസ് അഡ്മിനിസ്ട്രേഷൻ കമാൻഡുകൾ

MySQL 8.0 സെർവറിനായി നഷ്ടപ്പെട്ട റൂട്ട് പാസ്uവേഡ് എങ്ങനെ പുനഃസജ്ജമാക്കാമെന്ന് ഈ ലേഖനത്തിൽ നിങ്ങൾ പഠിച്ചു. പ്രക്രിയ എളുപ്പമായിരുന്നുവെന്ന് ഞാൻ പ്രതീക്ഷിക്കുന്നു.