MySQL මුරපද කළමනාකරණ මාර්ගෝපදේශය: මුරපද සකස් කිරීම, වෙනස් කිරීම, නැවත සකස් කිරීම සහ ආරක්ෂා කිරීම (Windows, Linux, Mac)

目次

1. හැඳින්වීම

MySQL මුරපද කළමනාකරණයේ වැදගත්කම

MySQL යනු ලොව පුරා පුළුල් ලෙස භාවිතා වන දත්ත ගබඩා කළමනාකරණ පද්ධතියකි. එහෙත්, එහි ආරක්ෂක කළමනාකරණයේ මූලිකත්වය නිසි මුරපද සැකසීම සහ පරිපාලනය තුළ පවතී. නිසි මුරපද කළමනාකරණයක් නොමැතිව, ඔබට පහත අනතුරු මුහුණ දිය හැක:

  • අනවසර ප්‍රවේශය : දුර්වල මුරපද මඟින් ඔබේ පද්ධතිය බාහිර ප්‍රහාරවලට පත් වේ.
  • දත්ත උල්ලංඝනය : සංවේදී තොරතුරු දුෂ්කර පරිශීලකයන් විසින් හෙළි විය හැක.
  • පද්ධති විකෘතිකරණය : දත්ත මකා දැමීම හෝ වෙනස් කිරීම වෙබ් අඩවි සහ යෙදුම් වල සාමාන්‍ය ක්‍රියාකාරිත්වයට බලපායි.

මෙම අනතුරු වලින් වැළැක්වීමට, දෘඩ මුරපද සකස් කිරීම සහ නිතර වෙනස් කිරීම අත්‍යවශ්‍ය වේ. මෙම ලිපියේ, MySQL මුරපද කළමනාකරණයේ පහත කරුණු විස්තරාත්මකව පැහැදිලි කරමු:

නව පරිශීලකයන් සඳහා මුරපද සකස් කිරීමේ ක්‍රමය
පවත්නා පරිශීලකයන්ගේ මුරපද වෙනස් කිරීමේ ක්‍රමය
අමතක වූ මුරපදය නැවත සකස් කිරීම
මුරපද ශක්තිය පරීක්ෂා කිරීම
සාමාන්‍ය දෝෂ සහ ඒවා විසඳීමේ ක්‍රම
ආරක්ෂාව වැඩිදියුණු කිරීම සඳහා නිර්දේශිත සැකසුම්

මෙම ලිපිය කියවීමෙන්, ඔබට MySQL මුරපද නිසි ලෙස කළමනාකරණය කිරීම සඳහා අවශ්‍ය දැනුම සහ කුසලතා ලැබෙනු ඇත, එබැවින් අවසානය දක්වා කියවන්න.

2. MySQL මුරපද සකස් කිරීම සහ වෙනස් කිරීම

නව පරිශීලකයෙකු සෑදීම සහ මුරපදයක් සකස් කිරීම

මෙම කොටස MySQL හි නව පරිශීලකයෙකු සෑදීම සහ මුරපදයක් සකස් කිරීම පිළිබඳව පැහැදිලි කරයි.

1. MySQL වෙත පිවිසීම

පළමුව, MySQL පරිපාලක (root පරිශීලකයෙකු වැනි) ලෙස පිවිසෙන්න.

mysql -u root -p

-u root යනු root පරිශීලකයා ලෙස පිවිසීමට විකල්පයකි, සහ -p මුරපද ප්‍රශ්නය පෙන්වයි.

2. නව පරිශීලකයෙකු සෑදීම සහ මුරපදයක් සකස් කිරීම

CREATE USER විධානය භාවිතා කර නව පරිශීලකයෙකු සෑදීම සහ මුරපදයක් සකස් කිරීම කරන්න.

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'secure_password';
  • 'newuser'@'localhost' : පරිශීලක නාමය (newuser) සහ පරිශීලකයා සම්බන්ධ විය හැකි හෝස්ට් (localhost) නිරූපණය කරයි.
  • 'secure_password' : සකස් කිරීමට ඇති මුරපදය (දෘඩ මුරපදයක් භාවිතා කිරීමේදී විශ්වාස කරන්න).

3. සුදුසු අවසර ලබා දීම

ඔබට නව පරිශීලකයාට දත්ත ගබඩා අවසර ලබා දිය යුතුය. උදාහරණයක් ලෙස, සියලු අවසර ලබා දීමට:

GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost' WITH GRANT OPTION;
  • ALL PRIVILEGES : සියලු අවසර ලබා දේ.
  • *.* : සියලු දත්ත ගබඩා සහ වගු වෙත ප්‍රවේශය ලබා දේ.
  • WITH GRANT OPTION : පරිශීලකයාට අනෙකුත් පරිශීලකයන්ට අවසර ලබා දීමට ඉඩ දෙයි.

4. අවසර යෙදීම

වෙනස්කම් යෙදීමට FLUSH PRIVILEGES ක්‍රියාත්මක කරන්න.

FLUSH PRIVILEGES;

ඔබ දැන් සුරක්ෂිත මුරපදයක් සහ සුදුසු අවසර සමඟ නව පරිශීලකයෙකු සාර්ථකව සෑද ඇත.

පවත්නා පරිශීලකයකුගේ මුරපදය වෙනස් කිරීම

මෙම කොටස පවත්නා MySQL පරිශීලකයකුගේ මුරපදය වෙනස් කිරීම පිළිබඳව පැහැදිලි කරයි.

1. MySQL වෙත පිවිසීම

පරිපාලක අවසර සමඟ පිවිසෙන්න.

mysql -u root -p

2. ALTER USER භාවිතා කර මුරපදය වෙනස් කිරීම (MySQL 5.7 සහ පසුගිය අනුවාද)

ALTER USER 'existinguser'@'localhost' IDENTIFIED BY 'new_secure_password';
  • 'existinguser'@'localhost' : වෙනස් කිරීමට ඇති පරිශීලක නාමය සහ හෝස්ට්.
  • 'new_secure_password' : නව මුරපදය.

3. SET PASSWORD භාවිතා කර මුරපදය වෙනස් කිරීම (MySQL 5.6 සහ පූර්ව අනුවාද)

SET PASSWORD FOR 'existinguser'@'localhost' = PASSWORD('new_secure_password');

PASSWORD() ක්‍රියාවලිය භාවිතා කිරීම මුරපදය ගබඩා කිරීමට පෙර නිසි ලෙස ගුප්තකේතනය කර ඇති බව සහතික කරයි.

4. වෙනස්කම් යෙදීම

FLUSH PRIVILEGES; ක්‍රියාත්මක කිරීම අමතක නොකරන්න.

FLUSH PRIVILEGES;

ඔබට දැන් මෙම ක්‍රමය භාවිතා කර පවත්නා පරිශීලකයකුගේ මුරපදය ආරක්ෂිතව වෙනස් කළ හැක.

3. ඔබ මුරපදය අමතක කර ඇත්නම් MySQL මුරපදය නැවත සකස් කිරීම

ඔබ MySQL මුරපදය අමතක කළාමත්, නිවැරදි ක්‍රියාවලිය අනුගමනය කිරීමෙන් එය නැවත සකස් කළ හැක. මෙම කොටස Windows, Linux, සහ Mac හි මුරපද නැවත සකස් කිරීම පිළිබඳව පැහැදිලි කරයි.

Windows හි MySQL මුරපදය නැවත සකස් කිරීම

Windows හි, MySQL root password රිසෙට් කිරීමේ සුලබ ක්‍රමයක් වන්නේ skip-grant-tables option භාවිතා කිරීමයි。

1. MySQL සේවාව නවතින්න

පළමුව, Windows හි ධාවනය වන MySQL සේවාව නවතින්න。

net stop mysql

අනෙකුත් ක්‍රමයක් ලෙස, ඔබට services.msc විවෘත කර MySQL සේවාව නවතින්න පුළුවන්。

2. mysqld --skip-grant-tables භාවිතා කර MySQL ආරම්භ කරන්න

mysqld --skip-grant-tables --skip-networking

3. MySQL වෙත ලොග් වන්න

mysql -u root

4. නව password එකක් සකසන්න

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

එහෙත්, MySQL 5.6 සහ ඊට පෙර සඳහා, SET PASSWORD භාවිතා කරන්න。

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_secure_password');

5. MySQL නැවත ආරම්භ කරන්න

net stop mysql
net start mysql

Linux / Mac හි MySQL password එකක් රිසෙට් කරන්නේ කෙසේද

1. MySQL සේවාව නවතින්න

sudo systemctl stop mysql

2. --skip-grant-tables මෝඩ් එකේ MySQL ආරම්භ කරන්න

sudo mysqld_safe --skip-grant-tables --skip-networking &

3. MySQL වෙත ලොග් වන්න

mysql -u root

4. Password එක රිසෙට් කරන්න

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

5. MySQL නැවත ආරම්භ කරන්න

sudo systemctl start mysql

MySQL 8.0 සහ පසුව password රිසෙට් ක්‍රමවේදවල වෙනස්කම්

MySQL 8.0 හි, password කළමනාකරණ යාන්ත්‍රණය වෙනස් වී ඇති බැවින්, ඔබ විශේෂයෙන් මෙම කරුණ සලකා බැලිය යුතුය。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_secure_password';

මෙය ඔබට අවශ්‍ය විට පැරණි password සත්‍යාපන ක්‍රමය භාවිතා කිරීමට ඉඩ සලසයි。

4. MySQL passwords වෙනස් කිරීමේදී සුලබ දෝෂ troubleshooting කිරීම

MySQL passwords වෙනස් කිරීමේදී ඔබට දෝෂ ඇති විය හැක. මෙම කොටසේ සුලබ දෝෂවල හේතු සහ විසඳුම් පැහැදිලි කෙරේ.

ERROR 1045 (28000): පරිශීලකයා සඳහා ප්‍රවේශය අනුමත නොවේ

දෝෂයේ හේතුව

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

මෙම දෝෂය MySQL වෙත ලොග් වන විට password එක වැරදි නම් හෝ අනුමැතියක් ප්‍රමාණවත් නොවේ නම් ඇති වේ.

විසඳුම

  1. ඔබ ඇතුළත් කළ password එක නැවත පරීක්ෂා කරන්න
  2. නිවැරදි පරිශීලක නම සහ host එක විශේෂණය කරන්න
    SELECT User, Host FROM mysql.user;
    
  1. password එක රිසෙට් කරන්න (password රිසෙට් කොටස බලන්න)
  2. අනුමැති නිවැරදිව සකසන්න
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    

ERROR 1133: user table එකේ ගැලපෙන පේළියක් සොයාගත නොහැක

දෝෂයේ හේතුව

ERROR 1133: Can't find any matching row in the user table

මෙම දෝෂය විශේෂණය කළ පරිශීලකයා පවතී නැති විට ඇති වේ.

විසඳුම

  1. වත්මන් පරිශීලක ලැයිස්තුව පරීක්ෂා කරන්න
    SELECT User, Host FROM mysql.user;
    
  1. පරිශීලකයා නැවත නිර්මාණය කරන්න
    CREATE USER 'root'@'localhost' IDENTIFIED BY 'new_secure_password';
    
  1. නිවැරදි host එක විශේෂණය කරන්න (localhost හෝ % භාවිතා කරන්න ගැලපෙන පරිදි)

ERROR 1820: ඔබේ password එක රිසෙට් කළ යුතුය

දෝෂයේ හේතුව

ERROR 1820: You must reset your password using ALTER USER statement before executing this statement.

මෙම දෝෂය password එක කල් ඉකුත් වී ඇති විට ඇති වේ.

විසඳුම

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

Password කල් ඉකුත්වීම අක්‍රිය කිරීමට:

SET GLOBAL default_password_lifetime = 0;

ERROR 2059: Plugin caching_sha2_password ලෝඩ් කළ නොහැක

දෝෂයේ හේතුව

ERROR 2059: Plugin caching_sha2_password could not be loaded

MySQL 8.0 සහ පසුව, නිපැයුම් සත්‍යාපන plugin එක caching_sha2_password බවට වෙනස් වී ඇති බැවින්, සමහර clients සමඟ දෝෂ ඇති විය හැක.

විසඳුම

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_secure_password';

එහෙත් MySQL සකරණ ගොනුවට (my.cnf හෝ my.ini) පහත දැක්වෙන දේ එකතු කර MySQL නැවත ආරම්භ කරන්න.

[mysqld]
default_authentication_plugin=mysql_native_password

MySQL නැවත ආරම්භ කරන්න:

sudo systemctl restart mysql

5. MySQL ආරක්ෂක ශක්තිකරණය සහ නිර්දේශිත සැකසුම්

MySQL ආරක්ෂාව ශක්තිමත් කිරීම දත්ත ගබඩා ආරක්ෂාව වැඩිදියුණු කිරීම සඳහා අත්‍යවශ්‍ය වන අතර අනවසර ප්‍රවේශය සහ දත්ත උල්ලංඝනයන් වැළැක්වීමට. මෙම කොටස නිර්දේශිත සැකසුම් හඳුන්වා දී MySQL ආරක්ෂාව වැඩිදියුණු කරයි.

ශක්තිමත් මුරපද සකසන්න

MySQL හි දුර්වල මුරපද භාවිතා කිරීම ඔබේ පද්ධතිය ආක්‍රමණකරුවන්ට පහසු ඉලක්කයක් කරයි. මුරපද ශක්තිය වැඩිදියුණු කිරීමට සැකසුම් සකසන්න.

මුරපද ප්‍රතිපත්තිය සක්‍රිය කරන්න

වත්මන් මුරපද ප්‍රතිපත්තිය පරීක්ෂා කරන්න:

SHOW VARIABLES LIKE 'validate_password%';

ශක්තිමත් මුරපද ප්‍රතිපත්තිය සකසන්න:

SET GLOBAL validate_password.policy = STRONG;
SET GLOBAL validate_password.length = 12;
SET GLOBAL validate_password.mixed_case_count = 1;
SET GLOBAL validate_password.number_count = 1;
SET GLOBAL validate_password.special_char_count = 1;

මුරපද කල් ඉකුත් වීම සකසන්න

නිතර මුරපද වෙනස් කිරීම ආරක්ෂාව වැඩිදියුණු කරයි.

වත්මන් මුරපද කල් ඉකුත් වීමේ සැකසුම පරීක්ෂා කරන්න:

SHOW VARIABLES LIKE 'default_password_lifetime';

මුරපද කල් ඉකුත් වීම 90 දින ලෙස සකසන්න:

SET GLOBAL default_password_lifetime = 90;

root පරිශීලක ආරක්ෂාව ශක්තිමත් කරන්න

root පරිශීලකයා සඳහා දුරස්ථ ප්‍රවේශය සීමා කරන්න

root පරිශීලකයා සඳහා වත්මන් හෝස්ට් සැකසුම පරීක්ෂා කරන්න:

SELECT User, Host FROM mysql.user WHERE User = 'root';

root සඳහා දුරස්ථ ප්‍රවේශය අක්‍රිය කරන්න:

UPDATE mysql.user SET Host='localhost' WHERE User='root';
FLUSH PRIVILEGES;

විකල්ප පරිපාලක ගිණුමක් සාදන්න සහ root අක්‍රිය කරන්න

CREATE USER 'admin_user'@'localhost' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON *.* TO 'admin_user'@'localhost' WITH GRANT OPTION;
RENAME USER 'root'@'localhost' TO 'disabled_root'@'localhost';
FLUSH PRIVILEGES;

MySQL දුරස්ථ සම්බන්ධතා සීමා කරන්න

සැකසුම් ගොනුව (my.cnf හෝ my.ini) සංස්කරණය කරන්න:

[mysqld]
bind-address = 127.0.0.1

Linux හි firewall සකසන්න:

sudo ufw deny 3306

නිශ්චිත IP ලිපිනයක් පමණක් ඉඩ දෙන්න:

sudo ufw allow from 192.168.1.100 to any port 3306

අවශ්‍ය නොවන ගිණුම් සහ අවසර ඉවත් කරන්න

වත්මන් පරිශීලක ලැයිස්තුව පරීක්ෂා කරන්න:

SELECT User, Host FROM mysql.user;

නිර්නාමික පරිශීලකයන් ඉවත් කරන්න:

DELETE FROM mysql.user WHERE User='';
FLUSH PRIVILEGES;

අවශ්‍ය නොවන test දත්ත ගබඩාව ඉවත් කරන්න:

DROP DATABASE test;
FLUSH PRIVILEGES;

MySQL ලොග් කිරීම සක්‍රිය කරන්න

දෝෂ ලොග් සක්‍රිය කරන්න:

[mysqld]
log_error = /var/log/mysql/error.log

සාමාන්‍ය විමසුම් ලොග් සක්‍රිය කරන්න:

general_log = 1
general_log_file = /var/log/mysql/general.log

MySQL නැවත ආරම්භ කරන්න:

sudo systemctl restart mysql

6. නිතර අසන ප්‍රශ්න (FAQ)

මෙම කොටස MySQL මුරපද සැකසීම, වෙනස් කිරීම, සහ නැවත සකස් කිරීම සම්බන්ධ සාමාන්‍ය ප්‍රශ්න සහ විසඳුම් සාරාංශ කරයි.

ප්‍ර.1: අමතක වූ MySQL root මුරපදය ප්‍රතිසාධනය කිරීමේ පහසුම ක්‍රමය කුමක්ද?

විසඳුම

  1. MySQL නවත්වන්න
    sudo systemctl stop mysql
    
  1. skip-grant-tables ප්‍රකාරයෙන් MySQL ආරම්භ කරන්න
    sudo mysqld_safe --skip-grant-tables --skip-networking &
    
  1. MySQL වෙත ලොග් වන්න
    mysql -u root
    
  1. නව මුරපදයක් සකසන්න
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_secure_password';
    
  1. MySQL නැවත ආරම්භ කරන්න
    sudo systemctl restart mysql
    

ප්‍ර.2: “ERROR 1045 (28000): Access denied for user” යන දෝෂය දැකෙන විට මට කුමක් කළ යුතුද?

විසඳුම

  1. ඔබ ඇතුළත් කළ මුරපදය තහවුරු කරන්න
    mysql -u root -p
    
  1. පරිශීලකයා පවතින බව තහවුරු කරන්න
    SELECT User, Host FROM mysql.user;
    
  1. මුරපදය නැවත සකසන්න (පෙර උපදෙස් බලන්න)

  2. අවශ්‍ය අවසර ලබා දෙන්න

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    

ප්‍ර.3: මුරපද වෙනස් කිරීමේදී MySQL 5.6 සහ 8.0 අතර වෙනසක් තිබේද?

MySQL 5.6 සහ පූර්ව සංස්කරණ වල මුරපදය වෙනස් කිරීම

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_secure_password');

MySQL 8.0 සහ පසු සංස්කරණ වල මුරපදය වෙනස් කිරීම

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

MySQL 8.0 හි, caching_sha2_password මූලික සත්‍යාපන ක්‍රමය වන බැවින්, පරණ ගනුදෙනුකරුවන්ට පහත සකස් කිරීම අවශ්‍ය විය හැක.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_secure_password';

Q4: MySQL මුරපද ප්‍රතිපත්තිය කෙසේද ශක්තිමත් කරගත හැක්කේ?

ශක්තිමත් මුරපද ප්‍රතිපත්තිය සකසන්න

SET GLOBAL validate_password.policy = STRONG;
SET GLOBAL validate_password.length = 12;
SET GLOBAL validate_password.mixed_case_count = 1;
SET GLOBAL validate_password.number_count = 1;
SET GLOBAL validate_password.special_char_count = 1;

Q5: MySQL root පරිශීලකයා අක්‍රිය කිරීම ආරක්ෂිතද?

විසඳුම

  1. පරිපාලක ගිණුමක් සාදන්න
    CREATE USER 'admin_user'@'localhost' IDENTIFIED BY 'secure_password';
    GRANT ALL PRIVILEGES ON *.* TO 'admin_user'@'localhost' WITH GRANT OPTION;
    
  1. root ගිණුම අක්‍රිය කරන්න
    RENAME USER 'root'@'localhost' TO 'disabled_root'@'localhost';
    FLUSH PRIVILEGES;
    

Q6: MySQL මුරපද ආරක්ෂිතව කළමනාකරණය කිරීම සඳහා මෙවලම් තිබේද?

විසඳුම

  1. mysql_config_editor (නිල MySQL මෙවලම)
    mysql_config_editor set --login-path=local --host=localhost --user=root --password
    

මෙය ඔබට මුරපදය සෘජුව ටයිප් නොකර ලොග් වීමට ඉඩ දේ.

mysql --login-path=local
  1. මුරපද කළමනාකරු (Bitwarden, 1Password, KeePass, ආදිය)
    * ශක්තිමත් මුරපද ජනනය කිරීම සහ ආරක්ෂිතව ගබඩා කිරීම සඳහා ප්‍රයෝජනවත්.

Q7: MySQL මුරපද වෙනස්කම් ලොග් කළ හැකිද?

විසඳුම

General Query Log සක්‍රිය කරන්න

[mysqld]
general_log = 1
general_log_file = /var/log/mysql/general.log

MySQL නැවත ආරම්භ කරන්න:

sudo systemctl restart mysql

7. නිගමනය

මෙම ලිපිය MySQL මුරපද කළමනාකරණයේ මූලික සිට උසස් තාක්ෂණය දක්වා සියල්ල පැහැදිලි කරයි. පහතදී ප්‍රධාන කරුණු සාරාංශයක් සහ MySQL මුරපද නිසි ලෙස කළමනාකරණය කිරීම සඳහා පරීක්ෂා ලැයිස්තුව ලබා දේ.

MySQL මුරපද කළමනාකරණයේ ප්‍රධාන කරුණු

නිසි මුරපද සැකසීම සහ කළමනාකරණය ආරක්ෂණයේ පදනම වේ
නව පරිශීලකයන් සෑදීමේදී ශක්තිමත් මුරපද සකසන්න
මුරපද නිතර වෙනස් කර, කල් ඉකුත් වීමේ ප්‍රතිපත්ති සකසන්න
මුරපද අමතක වූ විට ප්‍රතිසාධන ක්‍රියාවලිය තේරුම් ගන්න
මුරපද වෙනස් කිරීමේදී ඇතිවන දෝෂ නිවැරදිව විසඳන්න
දුරස්ථ ප්‍රවේශය සහ root පරිශීලක කළමනාකරණය ආරක්ෂණ ශක්තිකරණය සඳහා සුදුසු කරගන්න
මුරපද-සම්බන්ධ ක්‍රියාකාරකම් නිරීක්ෂණය සඳහා ලොග් කිරීම සක්‍රිය කරන්න

MySQL මුරපද කළමනාකරණ පරීක්ෂා ලැයිස්තුව

Checklist ItemStatus
Have you set a strong root password for MySQL?✅ / ❌
Do you use the CREATE USER command when creating new users?✅ / ❌
Have you enabled the validate_password plugin and configured a strong password policy?✅ / ❌
Do you regularly change passwords and set expiration policies?✅ / ❌
Have you disabled remote access for the root user?✅ / ❌
Have you removed unnecessary or anonymous accounts?✅ / ❌
Do you understand how to reset passwords using skip-grant-tables mode?✅ / ❌
Do you understand how to resolve ERROR 1045 and ERROR 1820 during password changes?✅ / ❌
Have you enabled MySQL logs (general_log and error_log)?✅ / ❌

මෙම ලිපිය කියවීමෙන් පසු නිර්දේශිත ඊළඟ ක්‍රියාමාර්ග

  1. ඔබගේ වත්මන් මුරපද ප්‍රතිපත්තිය සමාලෝචනය කර, අවශ්‍ය නම් ශක්තිමත් කරන්න
    SHOW VARIABLES LIKE 'validate_password%';
    SET GLOBAL validate_password.policy = STRONG;
    SET GLOBAL validate_password.length = 12;
    
  1. අවශ්‍ය නොවන ගිණුම් ඉවත් කරන්න
    DELETE FROM mysql.user WHERE User='';
    DROP DATABASE test;
    FLUSH PRIVILEGES;
    
  1. root පරිශීලකයා සඳහා දුරස්ථ ප්‍රවේශය සීමා කරන්න
    UPDATE mysql.user SET Host='localhost' WHERE User='root';
    FLUSH PRIVILEGES;
    
  1. නිතර මුරපද කල් ඉකුත් වීම සකසන්න
    SET GLOBAL default_password_lifetime = 90;
    
  1. නිරීක්ෂණය සඳහා ලොග් කිරීම සක්‍රිය කරන්න
    [mysqld]
    log_error = /var/log/mysql/error.log
    general_log = 1
    general_log_file = /var/log/mysql/general.log
    

MySQL නැවත ආරම්භ කරන්න:

sudo systemctl restart mysql

අමතර ඉගෙනුම සඳහා සම්බන්ධ ලිපි

📌 MySQL පරිශීලක අවසර කළමනාකරණය පිළිබඳ විස්තරාත්මක මාර්ගෝපදේශය
📌 MySQL උපස්ථාපනය සහ ප්‍රතිස්ථාපන ක්‍රියාවලිය
📌 MySQL දත්ත ගබඩා උත්තරීතර කිරීම
📌 බාහිර සත්‍යාපන (LDAP හෝ OAuth) සමඟ MySQL සකසීම

අවසාන අදහස්

MySQL මුරපද කළමනාකරණය යනු දත්ත ගබඩා ආරක්ෂාව රැක ගැනීමට අත්‍යවශ්‍ය දැනුම වේ.
මෙම මාර්ගෝපදේශයේ ආවරණය කරන ක්‍රියාමාර්ග අනුගමනය කර ආරක්ෂිත දත්ත ගබඩා කළමනාකරණය සනාථ කරන්න! 💪