- 1 1. හැඳින්වීම
- 2 2. MariaDB සහ MySQL අතර සමගියේ වර්තමාන තත්ත්වය
- 3 3. MariaDB සහ MySQL අතර ප්රධාන වෙනස්කම්
- 4 4. කාර්ය සාධන සංසන්දනය: MariaDB vs MySQL
- 5 5. MySQL සිට MariaDB වෙත මාරු කිරීමේ ක්රම (ප්රායෝගික උදාහරණ සමඟ)
- 6 MySQL සිට MariaDB වෙත මාරු කිරීමේ පියවර
- 7 සාමාන්ය මාරු ගැටළු සහ විසඳුම්
- 8 සාරාංශය
- 9 6. භාවිතා නිරූපණය අනුව MariaDB සහ MySQL තේරීම
- 10 සාරාංශය: භාවිතා නඩුව තේරීමේ මාර්ගෝපදේශය
- 11 7. නිගමනය
- 12 8. FAQ (නිතර අසන ප්රශ්න)
1. හැඳින්වීම
MariaDB සහ MySQL යනු කුමක්ද? (මූලික)
MariaDB සහ MySQL යන දෙකම සබඳතා දත්ත පදනම් කළමනාකරණ පද්ධති (RDBMS) ලෙස විශාල තරම් භාවිතා වේ. ඒවා SQL (නිර්මාණය කළ ප්රශ්න භාෂාව) භාවිතයෙන් දත්ත කළමනාකරණය සහ විචල්යකරණය සඳහා පද්ධති වන අතර, වෙබ් යෙදුම් සහ ව්යාපාරික පද්ධතිවල දත්ත කළමනාකරණය සඳහා අත්යවශ්ය වේ.
MySQL 1995 දී නිකුත් කරන ලද අතර, 2008 දී Oracle විසින් අත්පත් කර ගන්නා ලදී. එහිදී, MariaDB 2010 දී MySQL හි fork (අනුප්රාප්ත ව්යාපෘතියක්) ලෙස නිර්මාණය කරන ලදී. MySQL හි මුල් නිර්මාතෘ Michael Widenius (Monty) ගේ නායකත්වයෙන්, එය වඩාත් විවෘත සංවර්ධන ආකෘතියක ඉලක්කයෙන් සංවර්ධනය කර ඇත.
MariaDB යනු MySQL හි විකල්පයක් ලෙස සැලකෙන්නේ ඇයි
MariaDB ආකර්ෂණයට ලක්වන්නේ මූලික වශයෙන් මේ තුනේ හේතු නිසා:
- විවෘත මූලාශ්ර ස্বෛරීභාවය
- MySQL Oracle විසින් කළමනාකරණය කරන අතර, ඉදිරි බලපත්ර වෙනස්කම් හෝ සංවර්ධන දිශාවේ වෙනස්කම්වල අවදානමක් තිබේ.
- MariaDB සම්පූර්ණයෙන්ම විවෘත මූලාශ්ර ලෙස නඩත්තු කරන අතර, සංවර්ධනයේදී ඉහළ ස්වෛරීභාවයක් ලබා දෙයි.
- MySQL සමඟ ඉහළ සමගිය
- මුල් අනුවාද (5.5 සහ ඊට පෙර), MySQL සහ MariaDB ගැන සම්පූර්ණයෙන්ම සමගි වේ.
- පසුකාලීන අනුවාදවලදී පවා, නව විශේෂාංග එකතු කිරීම සහ කාර්ය සාධනය වැඩිදියුණු කිරීම සමඟ සමගිය බොහෝ දුරට නඩත්තු කර ඇත.
- වැඩිදියුණු කළ කාර්ය සාධනය සහ විශේෂාංග
- MariaDB MySQL ට වඩා වේගවත් ප්රශ්න සැකසීම සඳහා ඉලක්කගත බෙහෙවින් වැඩිදියුණු කිරීම් ඇතුළත් කරයි.
- එය විශේෂිත භාවිතයන් සඳහා විශිෂ්ට කාර්ය සාධනය ලබා දිය හැකි අනන්ය ගබඩා එන්ජින් (උදාහරණයක් ලෙස Aria සහ TokuDB) ලබා දෙයි.
මෙම ලිපියෙන් ඔබ ඉගෙන ගන්නා දේ (තෝරාගැනීමේ ක්රමය, වෙනස්කම් සහ සංක්රමණය)
මෙම ලිපිය MariaDB සහ MySQL අතර වෙනස්කම් සහ සමගි විස්තර පැහැදිලි කරයි, සහ ඔබට තෝරාගැනීමට උපකාරී වන ප්රධාන කරුණු ලබා දෙයි. එය MySQL සිට MariaDB වෙත සංක්රමණය සඳහා ස්ථිර පියවර හඳුන්වා දෙයි සහ සංක්රමණයේදී සැලකිලිමත් විය යුතු දේ පැහැදිලි කරයි.
2. MariaDB සහ MySQL අතර සමගියේ වර්තමාන තත්ත්වය
අනුවාදය අනුව සමගිය
MariaDB සහ MySQL එකම කේත පදනමෙන් ආරම්භ වූ නිසා, ඒවායේ ඉහළ සමගියක් ඇත. කෙසේ වෙතත්, අනුවාද වර්ධනය වීමත් සමඟ වෙනස්කම් ඇති වී ඇති අතර, සම්පූර්ණ සමගිය සෑම විටම නඩත්තු නොවේ. මෙහිදී, අනුවාදය අනුව සමගිය සංවිධානය කරමු.
MySQL 5.7 vs MariaDB 10.3
- MariaDB 10.3 MySQL 5.7 සමඟ බොහෝ දුරට සමගි වේ.
- සමහර ගබඩා එන්ජින් (උදාහරණයක් ලෙස, TokuDB) MariaDB-විශේෂිත වන අතර MySQL හි භාවිතා කළ නොහැක.
- MariaDB plugins සහ extensions MySQL 5.7 හි නොමැති විශේෂාංග ඇතුළත් කරයි, සහ ඒවා භාවිතා කිරීමෙන් සමගි ගැටලු ඇති විය හැක.
MySQL 8.0 vs MariaDB 10.6 / 10.11
- MySQL 8.0 නව දත්ත වර්ග, කාර්ය සාධනය වැඩිදියුණු කිරීම් සහ JSON-සම්බන්ධ විශේෂාංග ව්යාප්ත කිරීම් හඳුන්වා දුන්නේය.
- MariaDB 10.6 / 10.11 ද එහිම සංවර්ධන ඇතුළත් කර ඇති නිසා, සම්පූර්ණ සමගිය සහතික කර නැත.
- MySQL 8.0 හි හඳුන්වා දුන්නු සමහර විශේෂාංග—උදාහරණයක් ලෙස “utf8mb4 as the default” සහ “window functions”—MariaDB හි වෙනස් ක්රියාකාරීත්වයන් ඇත.
Binary සමගිය සහ Replication සමගිය
Binary සමගිය
- MariaDB 5.5 දක්වා, එය MySQL 5.5 සමඟ binary-සමගි වූ අතර සෘජුවම ප්රතිස්ථාපනය කළ හැකි විය.
- MariaDB 10.0 සිට, MySQL binary logs (binlog) සමඟ සමගිය සම්පූර්ණ නොවන අතර, සමහර පරිසරවල සෘජු ප්රතිස්ථාපනය අපහසු වේ.
- MySQL 8.0 දත්ත MariaDB වෙත සංක්රමණය කිරීමේදී, ඔබට වගු ව්යුහයන් වෙනස් කිරීමට අවශ්ය විය හැකි නිසා, සැලකිලිමත් වන්න.
Replication සමගිය
- MariaDB සහ MySQL අතර replication සාමාන්යයෙන් සමගි වේ, නමුත් අනුවාදවල වෙනස්කම් නිසා නිශ්චිත ගැටලු ඇති විය හැක.
- MySQL 8.0 GTID (Global Transaction Identifier) MariaDB සමඟ සම්පූර්ණයෙන්ම සමගි නොවන නිසා, සැලකිලිමත් විය යුතුය.
- MariaDB-විශේෂිත replication විශේෂාංග (උදාහරණයක් ලෙස, Galera Cluster ) MySQL හි නොමැත.
ඔබ කුමන අනුවාදයක් තෝරාගත යුත්තේ?
MariaDB සහ MySQL අතර තෝරාගැනීමේදී, ඔබේ වර්තමාන පද්ධති අවශ්යතා සහ ඉදිරි මෙහෙයුම් සලකා බැලීම වැදගත් වේ.
| Condition | Recommended Version |
|---|---|
| Want to keep an existing MySQL 5.7 environment | MariaDB 10.3 |
| Need long-term support for a new system | MySQL 8.0 or MariaDB 10.11 |
| Need high availability and performance (clustering use cases) | MariaDB (Galera Cluster supported) |
| Need full open-source freedom | MariaDB |
ඔබට දැකගත හැකි පරිදි, තේරීම් මාර්ගෝපදේශය ඔබගේ භාවිතා අවස්ථාව සහ පවත්නා පද්ධති පරිසරය අනුව වෙනස් වේ. විශේෂයෙන්, MySQL 8.0 තවත් අයිතිවාසිකම් පදනම් වූ සුදානම් ඇතුළත් කරයි, එබැවින් නවතම විශේෂාංග භාවිතා කිරීමට ඔබ කැමති නම්, MySQL සාමාන්යයෙන් හොඳ තේරීම වේ. අනෙක් පැත්තේ, ඔබ විවෘත-මූලාශ්ර පාරදර්ශීතාවයට ප්රමුඛත්වය දෙනවා නම්, MariaDB ශක්තිමත් විකල්පයක් වේ.
ඊළඟ කොටසේ, MariaDB සහ MySQL අතර ප්රධාන වෙනස්කම් පිළිබඳව අපි වැඩි විස්තරයක් බලන්නෙමු.

3. MariaDB සහ MySQL අතර ප්රධාන වෙනස්කම්
MariaDB සහ MySQL මුලින්ම එකම දත්ත ගබඩා කළමනාකරණ පද්ධතිය (RDBMS) වෙතින් උත්පන්න වූවාය, නමුත් අද දිනයේ එක් එක්ය තමන්ගේම දිශාවට වර්ධනය වී ඇත. මෙහිදී, දත්ත වර්ග, ගබඩා එන්ජින්, සහ බලපත්ර සහ සංවර්ධන පාලනය යන කෝණයන්ගෙන් ප්රධාන වෙනස්කම් අපි සසඳමු.
දත්ත වර්ග වල වෙනස්කම්
දත්ත වර්ග වල වෙනස්කම් විශේෂයෙන් JSON වර්ගය සම්බන්ධයෙන් එක් එක්ය කෙසේ හසුරුවේද යන්නෙන් පෙනේ.
JSON දත්ත වර්ගය කෙසේ හසුරුවේද
- MySQL 5.7 සහ ඊට පසු හි, ස්වභාවික JSON දත්ත වර්ගයක් හඳුන්වා දී, JSON විමසුම් සුදානම් කිරීම සක්රිය කරයි.
- MariaDB 10.2 හි, JSON දත්ත වර්ගය සහාය දක්වයි, නමුත් එය අභ්යන්තරයෙන් TEXT වර්ගයක් ලෙස ගබඩා කරයි, එය MySQL හි ස්වභාවික JSON වර්ගයට වඩා කාර්ය සාධන වෙනස්කම් ඇති කරයි.
- JSON ක්රියාකාරකම් වල වෙනස්කම්
- MySQL හි
JSON_TABLE()ක්රියාකාරකම MariaDB හි නොමැත. - MariaDB තමන්ගේම ක්රියාකාරකම්, උදාහරණයක් ලෙස
JSON_QUERY()එකතු කරයි.
අනෙකුත් දත්ත වර්ග වෙනස්කම්
- MySQL 8.0 හි, වින්ඩෝ ක්රියාකාරකම් සහ සාමාන්ය වගු ප්රකාශන (CTEs) සඳහා සුදානම් ඉදිරියට ගොස් ඇත, නමුත් MariaDB වෙනස් ක්රියාත්මක කිරීමක් භාවිතා කරයි.
- පරණ MySQL අනුවාද සමඟ අනුකූලතාව රැක ගැනීමට, MariaDB කිසිඳු දත්ත වර්ග සඳහා වෙනස් සුදානම් යොදයි.
ගබඩා එන්ජින් වල වෙනස්කම්
ගබඩා එන්ජින් යනු දත්ත ගබඩා කිරීම සහ කළමනාකරණය සඳහා භාවිතා වන ක්රමවේදය වන අතර, එය MariaDB සහ MySQL අතර ඇති ප්රධාන වෙනස්කම් අතරින් එකකි.
බෙදාගත් ගබඩා එන්ජින්
- InnoDB (දෙකම සහය දක්වයි)
- MyISAM (දෙකම සහය දක්වයි)
MariaDB-විශේෂ ගබඩා එන්ජින්
MariaDB පහත සඳහන් අද්විතීය ගබඩා එන්ජින් ලබා දේ:
Aria
* MyISAM සමඟ සමාන ගබඩා එන්ජින්, නමුත් වඩාත් දියුණු වූ බිඳ වැටීමේ ප්රතිසාධන ලක්ෂණ ඇත.TokuDB
* ශක්තිමත් සංකෝචනය ලබා දී, විශාල දත්ත ප්රමාණයක් කාර්යක්ෂමව කළමනාකරණය කරයි.ColumnStore
* තීරුව-ආකාර දත්ත ගබඩා ආකෘතියට සහය දී, විශ්ලේෂණ වැඩබර සඳහා සුදුසු වේ.MyRocks
* RocksDB මත පදනම් වූ එන්ජින්, ඉහළ ලිවීමේ කාර්ය සාධනය සඳහා නිර්මාණය කර ඇත.
MySQL-විශේෂ ගබඩා එන්ජින්
MySQL පහත එන්ජින් අඩංගු කරයි, ඒවා MariaDB හි නොමැත:
NDB (Cluster)
* ඉහළ-ලබාගත හැකි කුලකරණය සඳහා නිර්මාණය කළ ගබඩා එන්ජින්.MEMORY
* දත්ත මතකයේ ගබඩා කර, වේගවත් දත්ත ප්රවේශය සලසයි.
MariaDB හි ශක්තියක් වන්නේ විශේෂිත භාවිතා අවස්ථා සඳහා සුදුසු කරුණු ගත ගබඩා එන්ජින් විවිධයෙන් තෝරා ගැනීමට හැකියාවයි. විශේෂයෙන්, TokuDB සහ ColumnStore විශාල-පරිමාණ විශ්ලේෂණ සහ ගනුදෙනු සැකසීම සඳහා වැදගත් වාසි ලබා දේ.
බලපත්ර සහ සංවර්ධන පාලනයේ වෙනස්කම්
MariaDB සහ MySQL බලපත්ර සහ සංවර්ධන කළමනාකරණය පිළිබඳවද වෙනස් වේ.
බලපත්ර වෙනස්කම්
- MySQL Oracle විසින් කළමනාකරණය කරයි සහ විවෘත-මූලාශ්ර (GPL) සංස්කරණයක් සහ වාණිජ (Enterprise) සංස්කරණයක් ලෙස ලබා ගත හැක.
- MariaDB MariaDB Foundation විසින් ක්රියාත්මක කරයි සහ සම්පූර්ණ GPL බලපත්රයක් යටතේ ලබා දේ.
ඒ නිසා, MySQL සමහර වාණිජ විශේෂාංග (උදා: MySQL Enterprise Monitor, MySQL HeatWave) ඇතුළත් කර ගත හැකි අතර, MariaDB සම්පූර්ණයෙන් විවෘත-මූලාශ්ර ලෙස භාවිතා කළ හැක.
සංවර්ධන පාලනයේ වෙනස්කම්
- MySQL
- සංවර්ධනය Oracle විසින් නායකත්වය ලබා දේ, සහ මාර්ග සිතියම Oracleගේ ව්යාපාරිකยุත්රණය මත පදනම් වේ.
- සමාජ දායකත්වය සීමිතයි; දෝෂ නිරාකරණය සහ නව විශේෂාංග අවසානයේ Oracle මත පදනම් වේ.
- MariaDB
- MariaDB පදනම විසින් විවෘත සංවර්ධන ආකෘතියක් සමඟ කළමනාකරණය කරයි.
- පරිශීලකයින් සහ සමාගම් පහසුවෙන් සහභාගී විය හැකි අතර, වේගවත් විශේෂාංග සැපයුමක් සලසයි.
ඒ නිසා, MySQL ශක්තිමත් දිගුකාලීන සහය සහ ව්යාපාරික විශේෂාංග ලබා දේ, එසේම MariaDB විවෘත සංවර්ධන පදනමක් අනුගමනය කරයි සහ වඩාත් සවිස්තරාත්මක හා විස්තාරණීය වීමට ප්රවණ වේ.
සාරාංශය
MariaDB සහ MySQL ප්රධාන වශයෙන් පහත සඳහන් ක්ෂේත්රවල වෙනස් වේ:
| Comparison Item | MariaDB | MySQL |
|---|---|---|
| JSON type | Stored as TEXT | Native support |
| Storage engines | Aria, TokuDB, ColumnStore, MyRocks, etc. | NDB (Cluster), MEMORY, etc. |
| License | Fully GPL | GPL + commercial license |
| Development governance | Open-source community–driven | Oracle-led |
ප්රධාන තේරීම් කරුණු පරිසරය අනුව වෙනස් වේ—උදාහරණයක් ලෙස “විවෘත-මූලාශ්ර පාරදර්ශීතාව,” “කාර්ය සාධනය,” සහ “සහාය ආකෘතිය”.
4. කාර්ය සාධන සංසන්දනය: MariaDB vs MySQL
ඔබගේ විශේෂිත භාවිතා අවස්ථාව අනුව MariaDB සහ MySQL අතර කාර්ය සාධනය වෙනස් විය හැක. මෙම කොටසේ, අපි විමසුම් ක්රියාත්මක වේගය, ගබඩා-ඉන්ජින් අනුකූලතා, සමකාලීන සැකසුම් හැකියාව, සහ ගනුදෙනු සැකසුම් යන කෝණයන්ගෙන් ඔවුන්ගේ ව්යත්යස්ථානය සසඳා, එක් එක් එකක් කොහේ ප්රබල වනද පැහැදිලි කරමු.
විමසුම් ක්රියාත්මක වේගය (SELECT, INSERT, UPDATE)
විමසුම් රටාව අනුව MariaDB සහ MySQL වෙනස් ක්රියාත්මක වේගයන් පෙන්විය හැක.
බහුවිධ මාර්ගෝපදේශ ප්රතිඵල මත, පහත වගුව සාමාන්ය ශක්තිකාරකයන් සාරාංශ කරයි.
| Query Type | MariaDB | MySQL |
|---|---|---|
| SELECT (searching large datasets) | MySQL 8.0 tends to be more optimized (index optimizations for JSON types) | Excellent index optimization |
| INSERT (writing data) | Faster parallel writes (thread pool effect) | Single-thread processing is optimized |
| UPDATE (updating large volumes of data) | Optimized for InnoDB, but MySQL is more stable | Optimized for update-heavy queries |
| JOIN (joining multiple tables) | MariaDB 10.6 and later can be faster than MySQL 8.0 | Optimized, but often behind MariaDB |
නිගමනය
- MariaDB සමකාලීන සැකසුම් (එකවර බහු විමසුම් ධාවනය වන පරිසර) තුළ ශක්තිමත් වන අතර INSERT සහ JOIN සඳහා වේගවත් විය හැක
- MySQL එක-විමසුම් අනුකූලතාවයේ ශක්තිමත් වන අතර විශාල දත්ත කට්ටලයන් මත SELECT විමසුම් සඳහා හොඳින් අනුකූල කර ඇත
ගබඩා ඉන්ජින් අනුකූලතා
MariaDB අද්විතීය ගබඩා ඉන්ජින් MySQL හි නොමැතිව ඇතුළත් කරයි, සහ ඒවා නියමිත අවස්ථා වල ශක්තිමත් කාර්ය සාධනය ලබා දිය හැක.
MariaDB ගබඩා ඉන්ජින්
- Aria
- MyISAM සමඟ අනුකූල වන අතර වේගවත් කියවීම් සලසයි.
- MyISAM ට වඩා හොඳ බිඳවැටීම ප්රතිසාධනය ලබා දේ.
- TokuDB
- ශක්තිමත් සංකෝචන විශේෂාංග, විශාල දත්ත කට්ටලයන් ගබඩා කිරීමට සුදුසු.
- එසේම උත්කෘෂ්ට ලිවීමේ කාර්ය සාධනය ලබා දේ.
- ColumnStore
- විශ්ලේෂණ වැඩබර සඳහා සුදුසු තීරුව-අධාරිත ඉන්ජින්.
- බෙදාහැරීම් සැකසුම් සහය දක්වයි.
MySQL ගබඩා ඉන්ජින්
- InnoDB
- බොහෝ භාවිතා අවස්ථා සඳහා ප්රාථමික ඉන්ජින්.
- MariaDB ද භාවිතා කරන නමුත් MySQL 8.0 හි InnoDB වැඩි පරිමාණයෙන් අනුකූල කර ඇත .
- NDB Cluster
- උසස්-ලබාගත හැකි කුලකරණ සඳහා ඉන්ජින්.
- MariaDB හි නොමැත.
නිගමනය
- MariaDB භාවිතා අවස්ථා අනුව ගබඩා ඉන්ජින් තෝරා ගත හැකි අතර, විශාල-පරිමාණ සැකසුම් සහ විශ්ලේෂණ සඳහා ශක්තිමත් වේ
- MySQL ඉතා අනුකූල InnoDB එකක් ඇති අතර, වෙබ් යෙදුම් සහ ව්යාපාරික පද්ධති සඳහා සුදුසු වේ
සමකාලීන සැකසුම් හැකියාව (ත්රෙඩ් පූල් භාවිතා කිරීම)
MariaDB හි අන්තර්ගත ත්රෙඩ් පූල් විශේෂාංග ඇත, එය MySQL හි පෙරනිමි ලෙස අඩංගු නොවේ, බහු සමකාලීන විමසුම් සැකසීමේදී කාර්ය සාධනය වැඩි කරයි.
ත්රෙඩ් පූල් යනු කුමක්ද?
- සාමාන්ය MySQL සැකසුම් වල, සම්බන්ධතාවයක් සඳහා ත්රෙඩ් එකක් නිර්මාණය වේ, සම්බන්ධතා ගණන වැඩි වීමේදී මෙය අධික පූර්ණභාරයක් ඇති කරයි.
- MariaDB හි ත්රෙඩ් පූල් ස්ථාවර ත්රෙඩ් කට්ටලයක් බෙදා ගනී, බහු සමකාලීන සම්බන්ධතා තිබුණත් කාර්ය සාධනය තවත් ස්ථාවරව පවතින ලෙස උදව් කරයි.
නිගමනය
- MariaDB උසස්-භාර පරිසර (කාර්යබහුල වෙබ් යෙදුම්, SaaS ආදිය) සඳහා සුදුසු වන අතර, බහු විමසුම් එකවර ධාවනය වේ
- MySQL කාර්යක්ෂම එක-විමසුම් ක්රියාත්මක කිරීම සඳහා ශක්තිමත් අනුකූල කර ඇත, එය සරල මෙහෙයුම් සඳහා හොඳ ගැලපීමකි
ගනුදෙනු සැකසුම් වෙනස්කම්
දත්ත සමතුලිතතාව රැක ගැනීමට ගනුදෙනු සැකසුම් අත්යවශ්ය වේ.
MariaDB ගනුදෙනු ලක්ෂණ
- MySQL මෙන් InnoDB භාවිතා කරයි සහ ACID ගුණාංග (අණුක, සමතුලිතතාව, වෙන්වීම, දිරවා ගැනීම) සහතික කරයි.
Flashbackවිශේෂාංගයක් (දත්ත පසුපසට යාම) ඇතුළත් කරයි, දෝෂ වලින් ප්රතිසාධනය පහසු කරයි.
MySQL ගනුදෙනු ලක්ෂණ
- වැඩි-පරිමාණ පද්ධති සඳහා කියවීම/ලියීම බර පරිභාගය සමතල කිරීම සඳහා සුදුසුකම් සහිතව ශක්තිමත් ස්ථායිත්වය ලබා දේ .
- MySQL 8.0 ලොක් සවිස්තරයන් අලුත් කරමින් ලියුම්-බර වැඩබාරයන් වේගවත් කරයි .
නිගමනය
- MariaDB ශක්තිමත් ප්රතිසාධන හැකියාවන් ලබා දේ සහ මෙහෙයුම් දෝෂ වලට ප්රතිරෝධී වේ
- MySQL ඉතා ස්ථායි ගනුදෙනු සැකසුම් ලබා දේ සහ විශාල-පරිමාණ මෙහෙයුම් සඳහා සුදුසු වේ
සාරාංශය
MariaDB සහ MySQL අතර කාර්ය සාධනය සැසඳීමේදී, පහත ලක්ෂණ සාමාන්යයෙන් පෙනේ:
| Comparison Item | MariaDB | MySQL |
|---|---|---|
| Query execution speed | Strong parallelism (JOIN and INSERT) | Optimized single queries (fast SELECT) |
| Storage engines | Multiple engines (Aria, TokuDB, ColumnStore) | Highly optimized standard InnoDB |
| Thread pool | Built-in (strong under heavy connections) | Requires separate configuration |
| Transaction processing | Flashback feature available | Optimized for large-scale operations |
සාමාන්ය නියමයක් ලෙස, ඔබ විශාල දත්ත කට්ටලයන් කළමනාකරණය කරමින් පරිමාණය ප්රමුඛ කරන්නේ නම්, MariaDB සුදුසු වේ; ඔබ මෙහෙයුම් ස්ථායිත්වය සහ නවතම MySQL 8.0 විශේෂාංග භාවිතා කිරීමට කැමති නම්, MySQL සාමාන්යයෙන් හොඳ තේරීම වේ.
ඊළඟ කොටසේ, MySQL සිට MariaDB වෙත මාරු කිරීම පිළිබඳ විස්තරාත්මකව පැහැදිලි කරමු.
5. MySQL සිට MariaDB වෙත මාරු කිරීමේ ක්රම (ප්රායෝගික උදාහරණ සමඟ)
ඔබ MySQL සිට MariaDB වෙත මාරු කිරීම ගැන සිතන්නේ නම්, දත්ත අනුකූලතාව, මාරු ක්රියාවලි, සහ සම්භවිත ගැටළු පෙරම තේරුම් ගැනීම වැදගත් වේ. මෙම කොටස සූදානම් පියවර, විස්තරාත්මක මාරු ක්රියාවලි, සහ සාමාන්ය ගැටළු හා ඒවායේ විසඳුම් පැහැදිලි කරයි.
මාරු කිරීමට පෙර සූදානම
MariaDB, MySQL සමඟ ඉහළ අනුකූලතාවක් ඇති නමුත්, සම්පූර්ණයෙන් එකම නොවේ. මාරු කිරීමට පෙර, පහත සූදානම් සම්පූර්ණ කරන්න.
අනුවාදය පරීක්ෂා කරන්න
ඉලක්ක MariaDB අනුවාදය අනුව, කිසිඳු MySQL විශේෂාංග නොලැබිය හැක. එබැවින් MySQL අනුවාදය සහ MariaDB අනුවාදය දෙකම තහවුරු කර, සුදුසු MariaDB අනුවාදය තෝරන්න.
අනුවාද අනුකූලතා මාර්ගෝපදේශ
| MySQL Version | Recommended MariaDB Version |
|---|---|
| MySQL 5.5 | MariaDB 5.5 |
| MySQL 5.7 | MariaDB 10.3 |
| MySQL 8.0 | MariaDB 10.6 or later (not fully compatible) |
විශේෂයෙන්, MySQL 8.0 සිට MariaDB 10.6 හෝ ඊට පසු අනුවාදයට මාරු කරන විට, නව විශේෂාංග (උදාහරණként ස්වභාවික JSON වර්ගය සහ කවුළුව ක්රියා) සම්පූර්ණයෙන් අනුකූල නොවේ, එබැවින් අවධානයෙන් ඉදිරියට යන්න.
උපස්ථාපනයක් (Backup) සාදන්න
මාරු කිරීමේදී අතිමහත් වැදගත් පියවර ඔබේ දත්ත උපස්ථාපනය කිරීම වේ. මාරු කිරීමේදී දත්ත දූෂණය වුවහොත්, ප්රතිසාධනය අමාරු විය හැක. සෑම විටම ඉදිරියට යාමට පෙර සෑම විටම උපස්ථාපනයක් සාදන්න.
උපස්ථාපනයක් සාදන ආකාරය
mysqldump -u root -p --all-databases > mysql_backup.sql
ඔබට විශේෂිත දත්ත ගබඩාවක් පමණක් උපස්ථාපනය කිරීමට අවශ්ය නම්, පහත කමාන්ඩ් භාවිතා කරන්න:
mysqldump -u root -p database_name > database_backup.sql
MySQL සිට MariaDB වෙත මාරු කිරීමේ පියවර
1. MySQL අස්ථාපනය කරන්න
MariaDB, MySQL සමඟ ගැටුම් ඇති කරන බැවින්, MariaDB ස්ථාපනය කිරීමට පෙර MySQL ඉවත් කළ යුතුය.
Linux සඳහා (Ubuntu/Debian)
sudo systemctl stop mysql
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
CentOS/RHEL සඳහා
sudo systemctl stop mysqld
sudo yum remove mysql-server mysql mysql-libs
2. MariaDB ස්ථාපනය කරන්න
Ubuntu/Debian සඳහා
sudo apt-get update
sudo apt-get install mariadb-server
CentOS/RHEL සඳහා
sudo yum install mariadb-server
ස්ථාපනයෙන් පසු, MariaDB සේවාව ආරම්භ කරන්න
sudo systemctl start mariadb
sudo systemctl enable mariadb
3. දත්ත ආයාත කරන්න
MySQL උපස්ථාපන දත්ත MariaDB වෙත ප්රතිස්ථාපනය කරන්න.
mysql -u root -p < mysql_backup.sql
දෝෂ කිසිවක් නොමැති බව පරීක්ෂා කරමින් ඉදිරියට යන්න.
4. අනුකූලතා පරීක්ෂාව
දත්ත MariaDB වෙත ආයාත කිරීමෙන් පසු, දත්ත අඛණ්ඩතාවය තහවුරු කිරීම වැදගත් වේ.
පරීක්ෂා කළ යුතු කරුණු
✅ වගුවේ අඛණ්ඩතාව
CHECK TABLE table_name;
✅ දත්ත වර්ග අනුකූලතාව
SHOW CREATE TABLE table_name;
✅ පරිශීලක අවසර
SELECT user, host FROM mysql.user;
සාමාන්ය මාරු ගැටළු සහ විසඳුම්
1. MySQL 8.0 JSON වර්ගය MariaDB තුළ නිසි ලෙස ක්රියා නොකරයි
ගැටළුව:
MySQL 8.0 හි ස්වභාවික JSON වර්ගය MariaDB තුළ TEXT වර්ගයක් ලෙස සැලකේ, එය කාර්ය සාධනය අඩු කරනු ඇත.
විසඳුම:
- MariaDB හි, අනුකූලතාව සඳහා JSON තීරුව
LONGTEXTලෙස වෙනස් කරන්න. - දත්ත වර්ගය වෙනස් කිරීමට පෙර
ALTER TABLEභාවිතා කරන්න.ALTER TABLE table_name MODIFY column_name LONGTEXT;
2. MySQL 8.0 හි සත්යාපන ප්ලගීනවල වෙනස්කම්
ගැටලුව:
MySQL 8.0 හි, පෙරනිමි සත්යාපන ප්ලගීනය caching_sha2_password වෙත වෙනස් කර ඇත, එසේම MariaDB mysql_native_password භාවිතා කරයි.
විසඳුම:
- MariaDB සමඟ අනුකූලතාවය තහවුරු කිරීම සඳහා MySQL පාර්ශවයේ සත්යාපන ක්රමය වෙනස් කරන්න.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
3. දත්ත විකෘතිය වැළැක්වීම
මාරු කිරීමේදී ගනුදෙනු අසමතුලිතතා වැළැක්වීමට, ගනුදෙනු සමූහවලින් යෙදීම ප්රභාවී වේ.
විසඳුම:
autocommit=0 ලෙස දත්ත ආයාත කිරීමේදී සකසා, ගනුදෙනුව එකම කණ්ඩායමක් ලෙස යෙදන්න.
SET autocommit = 0;
SOURCE mysql_backup.sql;
COMMIT;
සාරාංශය
- මාරු කිරීමට පෙර සූදානම හි කොටසක් ලෙස, සෑම විටම අනුකූලතා පරීක්ෂා කර, උපස්ථාපන (බැකප්) සකසන්න.
- මාරු කිරීමේ ක්රියාවලිය මෙම ක්රමය අනුගමනය කළ යුතුය: “MySQL අස්ථාපනය → MariaDB ස්ථාපනය → දත්ත ආයාත කිරීම → අනුකූලතා පරීක්ෂා කිරීම.”
- සාමාන්ය මාරු ගැටළු (JSON අනුකූලතාව, සත්යාපන ප්ලගීන් වෙනස්කම්, දත්ත විකෘතිය) පෙරදැරිව අවබෝධ කර, සුදුසු පියවර ගන්න.
MariaDB වෙත සාර්ථකව මාරු කිරීමෙන්, කාර්ය සාධන වැඩිදියුණු කිරීම් සහ විවෘත-මූලාශ්ර ප්රතිලාභ උපරිම කරගත හැක.
ඊළඟ කොටසේ, භාවිතා නිරූපණයන් අනුව MariaDB සහ MySQL අතර තේරීම පිළිබඳව පැහැදිලි කරමු.
6. භාවිතා නිරූපණය අනුව MariaDB සහ MySQL තේරීම
MariaDB සහ MySQL දෙකම ශක්තිමත් දත්ත ගබඩා කළමනාකරණ පද්ධති වන නමුත්, හොඳම තේරීම ඔබේ භාවිතා නිරූපණය මත පදනම් වේ. මෙම කොටස වෙබ් යෙදුම්, ඉ-වාණිජ්ය අඩවි, විශාල-පරිමාණ විශ්ලේෂණ, සහ ව්යාපාරික මූලික පද්ධති වැනි අවස්ථා සඳහා කුමන දත්ත ගබඩාව තෝරාගත යුතුද යන්න පැහැදිලි කරයි.
වෙබ් යෙදුම් (WordPress, CMS, SaaS, ආදිය)
✅ නිර්දේශිතය: MariaDB
හේතු
- WordPress සමඟ ඉහළ අනුකූලතාව
MariaDB, WordPress සඳහා නිර්දේශිත දත්ත ගබඩා පද්ධති අතරින් එකක් වන අතර, එය සුමට ක්රියා කරයි. - අන්තර්ගත ත්රෙඩ් පූල්
MariaDB පෙරනිමිව ත්රෙඩ් පූල් සපයයි, එය බහු සමාන්තර ඉල්ලීම් හසුරවන වෙබ් යෙදුම් සඳහා ප්රයෝජනවත් වේ. - MySQL සමඟ සම්පූර්ණයෙන්ම අනුකූල
බොහෝ වෙබ් යෙදුම් MySQL සඳහා සංවර්ධනය කර ඇති අතර, MariaDB හි ඉහළ අනුකූලතාව මාරු කිරීම පහසු කරයි.
📌 නිගමනය: CMS සහ වෙබ් යෙදුම් (WordPress, Joomla, Drupal) ක්රියාත්මක කිරීම සඳහා MariaDB සුදුසුය.
ඉ-වාණිජ්ය අඩවි (WooCommerce, Magento, Shopify, ආදිය)
✅ නිර්දේශිතය: MariaDB
හේතු
- උත්තරීතර කියවීමේ කාර්ය සාධනය
MariaDB හි විමසුම් ඔප්ටිමයිසර් කීප ව්යාපාරික පණිවිඩවල MySQL ට වඩා වේගයෙන් විමසුම් ක්රියාත්මක කරයි. - TokuDB සඳහා සහය
MariaDB TokuDB සපයන අතර, ඉ-වාණිජ්යයේ සාමාන්යව ඇති උසස් පරිමාණ ගනුදෙනු සැකසීම සඳහා සුදුසු වේ. - WordPress + WooCommerce සමඟ ශක්තිමත් අනුකූලතාව
WooCommerce (WordPress සඳහා ඉ-වාණිජ්ය ප්ලගීනය) MariaDB සමඟ ඉතා හොඳින් ක්රියා කරයි.
📌 නිගමනය: ඉ-වාණිජ්ය ක්රියාකාරකම් සඳහා (විශේෂයෙන් WooCommerce පරිශීලකයන් සඳහා) MariaDB ප්රතිලාභදායී වේ.
විශාල-පරිමාණ විශ්ලේෂණ සහ විශාල දත්ත සැකසීම
✅ නිර්දේශිතය: MariaDB
හේතු
- ColumnStore එන්ජින් භාවිතය
MariaDB හි ColumnStore විශාල-පරිමාණ විශ්ලේෂණ සඳහා සුදුසු이며, දත්ත ගබඩා වැඩබර පණිවිඩවලට සහය දේ. - ආධුනික පාර්ටිෂන් විශේෂාංග
MariaDB MySQL ට වඩා ශක්තිමත් පාර්ටිෂන් හැකියාවන් සපයයි, එය විමසුම් ඔප්ටිමයිසර් වැඩිදියුණු කරයි. - MyRocks සඳහා සහය
MariaDB MyRocks (RocksDB-අධාරිත එන්ජින්) සපයන අතර, SSD ගබඩා සඳහා ඔප්ටිමයිස් කර ඇත.
📌 නිගමනය: විශාල දත්ත සහ විශ්ලේෂණ වැඩබර සඳහා MariaDB සුදුසුය.
ව්යාපාරික මූලික පද්ධති (බැංකු, ERP, CRM, ආදිය)
✅ නිර්දේශිතය: MySQL
හේතු
- MySQL Enterprise Edition සඳහා සහය
- MySQL ගෙවිය යුතු Enterprise Edition එකක් ලබා දේ, වැඩිදුර ආරක්ෂාව, audit ලොග් කිරීම, සහ clustering විශේෂතා සමඟ.
- ස්ථාවර ගනුදෙනු සැකසුම්
- MySQL 8.0 හි optimized InnoDB කාර්ය සාධනය, මූල්ය පද්ධති වැනි උසස්-ලබාගත හැකි පරිසර සඳහා සුදුසුය.
- නිල Oracle සහය
- MySQL Oracle විසින් සපයනු ලැබේ, ශක්තිමත් ව්යාපාර-මට්ටමේ සහය ලබා දේ.
📌 නිගමනය: මූල්ය ආයතන සහ විශාල ව්යාපාර සඳහා, MySQL එහි ව්යාපාර-මට්ටමේ සහය නිසා වඩාත් සුදුසුය.
උසස්-ලබාගත හැකි (HA) සහ ක්ලස්ටරින් පරිසර
✅ නිර්දේශිතය: MariaDB
හේතු
- Galera Cluster සඳහා අන්තර්ගත සහය
- MariaDB මූලිකව Galera Cluster ඇතුළත් කරයි, බහු-මාස්ටර් වින්යාස සක්රිය කරයි.
- ආධාරිත ප්රතිලේඛනය
- MySQL හි GTID-අධාරිත ප්රතිලේඛනයට සාපේක්ෂව, MariaDB ප්රතිලේඛනය සමහර අවස්ථා වල වැඩි සවිස්තරාත්මක හැකියාවක් ලබා දෙයි.
- ස්වයංක්රීය ෆේල්ඔවර් සහය
- Galera Cluster භාවිතා කිරීමෙන් ස්වයංක්රීය ෆේල්ඔවර් සහ වැඩි ලැබීමේ හැකියාව ලැබේ.
📌 නිගමනය: MariaDB ක්ලස්ටර කළ HA පරිසර සඳහා (විශේෂයෙන් Galera Cluster භාවිතා කරන විට) හොඳින් සුදුසුය.
නව සංවර්ධන ව්යාපෘති
✅ නිර්දේශිතය: MySQL (නවතම විශේෂතා සඳහා) / MariaDB (විවෘත-මූලාශ්ර අවධානය සඳහා)
හේතු
- MySQL 8.0 හි නව විශේෂතා
- ඔබට CTE, වින්ඩෝ ක්රියා, සහ optimized native JSON සහය වැනි උසස් SQL විශේෂතා භාවිතා කිරීමට අවශ්ය නම්, MySQL 8.0 ප්රයෝජනවත් වේ.
- MariaDB හි විවෘත සංවර්ධන ආකෘතිය
- සම්පූර්ණයෙන් GPL-අවසරය ලබා ඇති අතර, අනාගත වාණිජ බලපත්ර වෙනස්කම් වල අවදානමක් නැත.
📌 නිගමනය: නවතම SQL විශේෂතා භාවිතා කරන සංවර්ධනය සඳහා MySQL 8.0 තෝරන්න; විවෘත-මූලාශ්ර නිදහස සඳහා MariaDB තෝරන්න.
සාරාංශය: භාවිතා නඩුව තේරීමේ මාර්ගෝපදේශය
| Use Case | Recommended Database | Reason |
|---|---|---|
| WordPress / CMS / SaaS | MariaDB | Built-in thread pool, MySQL compatibility |
| E-commerce (WooCommerce, Magento) | MariaDB | Fast query execution, TokuDB support |
| Analytics / Big Data | MariaDB | ColumnStore, MyRocks support |
| Enterprise Core Systems (Finance, ERP) | MySQL | Stable transaction processing, Enterprise support |
| Clustering (HA environments) | MariaDB | Built-in Galera Cluster support |
| Development using latest features | MySQL | Optimized JSON type and window functions |
MariaDB සහ MySQL දෙකේම වෙනත් ශක්තිමත් පැත්තන් ඇත.
ඔබ විවෘත-මූලාශ්ර පාරදර්ශීතාව සහ සවිස්තරාත්මකතාව ප්රමුඛ කරන්නේ නම් MariaDB තෝරන්න; ඔබ ව්යාපාර ස්ථාවරතාව සහ නවතම විශේෂතා ප්රමුඛ කරන්නේ නම් MySQL තෝරන්න.
7. නිගමනය
අපි මෙතෙක් සාකච්ඡා කළ MariaDB සහ MySQL අතර වෙනස්කම්, අනුකූලතාව, තේරීමේ මාර්ගෝපදේශ, සහ මාරු ක්රම පිළිබඳ සමාලෝචනය කර, අවසාන තීරණ ලක්ෂ්ය සාරාංශ කරමු. ඔබට මෙහෙයුම් සාර්ථකව ආරම්භ කිරීමට මාරු පරීක්ෂණ ලක්ෂ්ය නැවත සලකා බලමු.
අවසාන තේරීමේ මාර්ගෝපදේශ: MariaDB vs MySQL
MariaDB සහ MySQL දත්ත ගබඩා කළමනාකරණ පද්ධති ලෙස එකම මූලිකත්වය බෙදා ගනී, නමුත් ඒවා වෙනත් දිශාවලට වර්ධනය වී ඇත. ඔබේ භාවිත නඩුව සහ අවශ්යතා මත සුදුසුම විසඳුම තෝරා ගැනීම වැදගත්ය.
📌 ඔබ MariaDB තෝරා ගත යුතු අවස්ථා
✅ ඔබ සම්පූර්ණයෙන් විවෘත-මූලාශ්ර පරිසරයක් අවශ්ය නම් (වාණිජ බලපත්ර වෙනස්කම් අවදානමෙන් වැළැක්වීමට)
✅ ඔබ WordPress හෝ WooCommerce වැනි CMS වේදිකා භාවිතා කරනවා නම්
✅ ඔබ MySQL 5.7 සිට මාරු වෙමින් සිටිනවා නම් (ඉහළ අනුකූලතාව)
✅ ඔබ උසස්-ලබාගත හැකි (HA) පරිසරයක් ගොඩනැගීමට අවශ්ය නම් (Galera Cluster භාවිතා කිරීම)
✅ ඔබට විශාල-පරිමාණ විශ්ලේෂණ හෝ BI ඒකාබද්ධ කිරීම අවශ්ය නම් (ColumnStore සහ TokuDB සහය)
📌 ඔබ MySQL තෝරා ගත යුතු අවස්ථා
✅ ඔබ ස්ථාවර ව්යාපාර මෙහෙයුම් (උදා: මූල්ය ආයතන) අවශ්ය නම් නිල Oracle සහය සමඟ
✅ ඔබ නවතම SQL විශේෂතා (වින්ඩෝ ක්රියා, native JSON වර්ග, CTEs) භාවිතා කිරීමට අවශ්ය නම්
✅ ඔබ පවතින MySQL 8.0 පරිසරය දිගටම පවත්වා ගැනීමට සැලසුම් කරන්නේ නම්
✅ ඔබ ව්යාපාර-මට්ටමේ මෙවලම් (උදා: MySQL Enterprise Monitor) අවශ්ය නම්
✅ ඔබ දිගුකාලීන සහය සහ මෙහෙයුම් ස්ථාවරතාව ප්රමුඛ කරන්නේ නම්
මාරු සැලකිලි සහ අවසාන පරීක්ෂණ ලැයිස්තුව
ඔබ දැනට MySQL භාවිතා කරමින් MariaDB වෙත මාරු කිරීම ගැන සිතන්නේ නම්, පහත කරුණු තහවුරු කරන්න:
✅ 1. අනුවාද අනුකූලතාව තහවුරු කරන්න
- MySQL 5.7 → MariaDB 10.3 මාරු කිරීම සාපේක්ෂව සුමට වේ.
- MySQL 8.0 → MariaDB 10.6 හෝ පසුගිය අනුවාද වෙත මාරු කිරීම කොටස් අනුකූල නොවන තත්වයන් ඇති විය හැක.
✅ 2. දත්ත උපස්ථාපනය සකසන්න
mysqldump -u root -p --all-databases > mysql_backup.sql
✅ 3. අනුකූලතාව පරීක්ෂා කරන්න
SHOW CREATE TABLEභාවිතා කර දත්ත වර්ග වෙනස්කම් පරීක්ෂා කරන්න.- MySQL 8.0 හි JSON වර්ගය භාවිතා කරනවා නම්, MariaDB TEXT වර්ගයට පරිවර්තනය කිරීම අවශ්ය විය හැක.
✅ 4. සත්යාපන ප්ලගීන පරීක්ෂා කරන්න
caching_sha2_passwordප්ලගීනය MySQL 8.0 හි MariaDB තුළ සහය නොදේ; එයmysql_native_passwordවෙත වෙනස් කරන්න.ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
✅ 5. වැදගත් විශේෂතා පරීක්ෂා කරන්න
- ජීවිතයට ගෙන යාමට පෙර, ඔබේ පවත්නා යෙදුම් පූර්ණයෙන්ම පරීක්ෂා කිරීම සඳහා පරිසරයක් තුළ පරීක්ෂා කරන්න.
අනාගත දර්ශනය: MariaDB සහ MySQL හි විකාශනය
MariaDB සහ MySQL වෙනත් දිශාවලින් දිගටම විකාශනය වන බව අපේක්ෂා කරයි.
📌 MariaDB හි අනාගතය
- ඉදිරියටත් විවෘත-මූලාශ්ර සංවර්ධන ආකෘතිය
- ආධාරක විශ්ලේෂණ විශේෂතා (ColumnStore හි තවත් සුදානම)
- MySQL වලින් වැඩි වෙනස්කම්
📌 MySQL හි අනාගතය
- ව්යාපාරික විශේෂතා විස්තාරය (MySQL Enterprise Edition වැඩිදියුණුකම්)
- මීදුම්-කේන්ද්රිත සුදානම (උදාහරණයක් ලෙස MySQL HeatWave)
- උසස් SQL විශේෂතා වැඩිදියුණුකම් (තවත් JSON සංවර්ධන, ආදිය)
දත්ත ගබඩා දෙක අතර තේරීමේදී, වත්මන් පද්ධති අවශ්යතා පමණක් නොව අනාගත සංවර්ධන සහ මෙහෙයුම්ยุත්රාද සැලකිල්ලට ගැනීම වැදගත් වේ.
අවසාන සාරාංශය
| Comparison Item | MariaDB | MySQL |
|---|---|---|
| Compatibility | High compatibility up to MySQL 5.7 | More proprietary features since MySQL 8.0 |
| License | Fully open source (GPL) | Commercial license provided by Oracle |
| Performance | Strong parallel processing and thread pool | Advanced single-query optimization |
| Clustering | Built-in Galera Cluster support | NDB Cluster available (commercial) |
| Analytics | ColumnStore and MyRocks support | Strong optimization features in MySQL 8.0 |
| Support Model | Community-based | Official Oracle support |
📢 ඔබට කුමන එක තෝරාගත යුතුද?
▶ MariaDB සුදුසුය නම්:
- ඔබ WordPress හෝ WooCommerce වැනි වෙබ් යෙදුම් ක්රියාත්මක කරයි
- ඔබට ඉහළ-ලබාගත හැකි කුලකරණය (Galera Cluster) අවශ්යයි
- ඔබ විශ්ලේෂණ හෝ විශාල දත්ත සැකසීම කරයි
- ඔබ සම්පූර්ණ විවෘත-මූලාශ්ර පරිසරයක් ප්රමුඛ කරයි
▶ MySQL සුදුසුය නම්:
- ඔබ ව්යාපාර-පරිමාණ පද්ධති හෝ මූල්ය වේදිකා ක්රියාත්මක කරයි
- ඔබ නවතම MySQL 8.0 SQL විශේෂතා භාවිතා කිරීමට කැමති
- ඔබ Oracle ව්යාපාරික සහාය අවශ්යයි
- ඔබ පවත්නා MySQL පරිසරය දිගටම ක්රියාත්මක කිරීමට කැමති
MariaDB සහ MySQL දෙකම ශක්තිමත් දත්ත ගබඩා වේ. ඒවාගේ ලක්ෂණ තේරුම් ගැනීම සහ ඔබේ පද්ධතියට හොඳම ගැලපෙන එක තේරීම අතිශය වැදගත්.
ඊළඟ පියවර
මෙම මාර්ගෝපදේශය අනුව, ඔබේ පරිසරය ඇගයී සහ සුදුසුම දත්ත ගබඩාව තෝරන්න. මාරු කිරීම අවශ්ය නම්, පැහැදිලි මාරු සැලැස්මක් සකසා නිෂ්පාදන නිකුතුවට පෙර පරිසරයක් තුළ පූර්ණයෙන්ම පරීක්ෂා කරන්න.
අපි බලාපොරොත්තු වෙමු මෙම මාර්ගෝපදේශය ඔබට MariaDB සහ MySQL අතර තේරීමේදී නිවැරදි තීරණයක් ගැනීමට උපකාරී වේ! 💡
8. FAQ (නිතර අසන ප්රශ්න)
ඔබට MariaDB සහ MySQL අතර අනුකූලතාව, වෙනස්කම්, සහ මාරු කිරීම පිළිබඳ බොහෝ ප්රශ්න තිබිය හැක.
මෙහි, අපි සාමාන්යයෙන් අසන ප්රශ්න කිහිපයක් විස්තරාත්මකව පිළිතුරු දෙනවා.
මට කුමන එක තෝරාගත යුතුද: MariaDB හෝ MySQL? (ඉක්මන් පරීක්ෂා ලැයිස්තුව)
ඔබට තේරීමට අසීරු නම්, මෙම පරීක්ෂා ලැයිස්තුව භාවිතා කරන්න:
📌 MariaDB තෝරන්න නම්:
✅ ඔබ විවෘත-මූලාශ්ර පාරදර්ශීතාව ප්රමුඛ කරයි
✅ ඔබ WordPress හෝ WooCommerce වැනි CMS වේදිකා භාවිතා කරයි
✅ ඔබ MySQL 5.7 සිට මාරු වෙමින් සිටී
✅ ඔබට ඉහළ ලැබීමේ හැකියාව (HA) අවශ්යයි
✅ ඔබ විශ්ලේෂණ හෝ BI ඒකාබද්ධ කිරීම (ColumnStore, TokuDB) අවශ්යයි
📌 MySQL තෝරන්න නම්:
✅ ඔබ ස්ථාවර ව්යාපාරික මෙහෙයුම් අවශ්යයි
✅ ඔබ නවතම SQL විශේෂතා (වින්ඩෝ ක්රියා, ස්වභාවික JSON, CTEs) අවශ්යයි
✅ ඔබ MySQL 8.0 භාවිතා කරගෙන යාමට කැමති
✅ ඔබ ව්යාපාරික මෙවලම් (MySQL Enterprise Monitor, ආදිය) අවශ්යයි
✅ ඔබ දිගුකාලීන සහාය ප්රමුඛ කරයි
කාර්ය සාධන සැසඳීම: කුමන එක වේගවත්ද?
කාර්ය සාධනය වැඩ භාරය මත පදනම් වේ.
| Workload | MariaDB Characteristics | MySQL Characteristics |
|---|---|---|
| INSERT (writes) | Thread pool enables fast bulk inserts | Optimized single-thread processing |
| SELECT (reads) | JOIN optimization (good for large datasets) | Excellent single-query optimization |
| UPDATE (writes) | Optimized InnoDB, but MySQL is more stable | Fast due to MySQL 8.0 optimizations |
| Clustering | Galera Cluster built-in | MySQL Cluster (commercial) |
📌 නිගමනය:
- MariaDB සමකාලීන වැඩ භාරයන්හි (ඊ-වෙළඳාම සහ වෙබ් යෙදුම්) ශක්තිමත් වේ
- MySQL එකක්-විමසුම් කාර්ය සාධනය සහ උසස් සුදානම තුළ උසස් වේ
MySQL සිට MariaDB වෙත මාරු කිරීම පහසුද?
MySQL 5.7 හෝ එයට පෙර මාරු කිරීම සාපේක්ෂව සරල වේ.
කෙසේ වෙතත්, MySQL 8.0 සිට මාරු කිරීමේදී අවධානය අවශ්ය.
මාරු කිරීමට පෙර පරීක්ෂා ලැයිස්තුව
✅ ආපසු ගත හැකි පිටපතක් සාදන්න
✅ SHOW CREATE TABLE භාවිතා කර අනුකූලතාව පරීක්ෂා කරන්න
✅ අවශ්ය නම් සත්යාපන ප්ලගීනය වෙනස් කරන්න (caching_sha2_password → mysql_native_password)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
✅ JSON MariaDB තුළ TEXT ලෙස සැලකේ යැයි දැනගන්න
📌 නිගමනය:
MySQL 5.7 හෝ එයට පෙර සංස්කරණයන්ගෙන් මාරු වීම සාමාන්යයෙන් පහසුය, නමුත් MySQL 8.0 සිට මාරු වීම සඳහා සවිස්තරාත්මක අනුකූලතාව පරීක්ෂණයක් අවශ්ය වේ.
මට MySQL 8.0 විශේෂාංග MariaDB තුළ භාවිතා කළ හැදේද?
MySQL 8.0 නව විශේෂාංග බොහොමයක් හඳුන්වා දී ඇත, නමුත් ඒ සියල්ලම MariaDB සමඟ සම්පූර්ණ අනුකූල නොවේ.
| MySQL 8.0 Feature | MariaDB Support Status |
|---|---|
| Native JSON type | Handled as TEXT |
| Window functions | Available since MariaDB 10.2 (different implementation) |
| Common Table Expressions (CTEs) | Available since MariaDB 10.2 |
| Default utf8mb4 | utf8mb4 supported but implemented differently |
📌 නිගමනය:
- MySQL 8.0 හි සමහර විශේෂාංග MariaDB තුළ ලබා ගත හැකි නමුත් සම්පූර්ණ අනුකූල නොවේ
- ස්වභාවික JSON සහ සමහර සුදුසුකම් ක්රියාත්මක කිරීමේදී වෙනස් වේ
MariaDB සහ MySQL එකම ද?
නිගමනය: ඒවා වෙනත් දත්ත ගබඩා ලෙස සංවර්ධනය වී ඇත.
- MariaDB ආරම්භකව MySQL 5.5 හි ෆෝර්ක් එකක් ලෙස පටන් ගත්තා, නමුත් පසුකාලීනව විශේෂිත විශේෂාංග එක් කර, සම්පූර්ණ අනුකූලතාව අඩු කර ඇත.
- MySQL 8.0 Oracle-විශේෂිත වැඩිදියුණු කිරීම් හඳුන්වා දී, වෙනත් දිශාවකට සංවර්ධනය වී ඇත.
අද, ඒවා “අනුකූල නමුත් වෙනස් දත්ත ගබඩා” ලෙස සැලකිය යුතුය.
බලපත්රයේ වෙනස කුමක්ද?
| Item | MariaDB | MySQL |
|---|---|---|
| License | Fully GPL | GPL + commercial license |
| Maintained by | MariaDB Foundation | Oracle |
| Commercial Edition | None (fully open source) | MySQL Enterprise Edition (paid) |
| Enterprise Support | Community-based | Official Oracle support |
📌 නිගමනය:
- MariaDB සම්පූර්ණයෙන් GPL යටතේ පවතින අතර වාණිජ බලපත්ර වෙනස් වීමේ අවදානමක් නැත.
- MySQL ව්යාපාරික වාණිජ සංස්කරණයක් නිල සහාය සමඟ ලබා දේ.
- ඔබ විවෘත-මූලාශ්ර පාරදර්ශීතාවයට ප්රමුඛත්වය දෙනවා නම් MariaDB තෝරන්න; ව්යාපාරික සහාය අවශ්ය නම් MySQL තෝරන්න.
FAQ සාරාංශය
FAQ කොටසින් ප්රධාන ග්රහණයන්:
| Question | Conclusion |
|---|---|
| Which should I choose? | Choose based on use case (open-source → MariaDB, enterprise → MySQL) |
| Which is faster? | Parallel workloads → MariaDB, single-query optimization → MySQL |
| Is migration from MySQL 8.0 easy? | Be cautious due to partial incompatibilities |
| Are MySQL 8.0 features available in MariaDB? | Some are supported, but not fully compatible |
මෙය MariaDB සහ MySQL අතර සම්පූර්ණ මාර්ගෝපදේශය අවසන් කරයි. ඔබේ භාවිත අවශ්යතා සහ මෙහෙයුම්ย්ุතිකයට හොඳම ගැළපෙන දත්ත ගබඩාව තෝරන්න.


