ඔබේ සමමුහුර්ත SQL කමිට් VPN ගොස් ඒම එක එනතුරු බලා සිටින්නේ ඇයි
ලබා ගත හැකි කණ්ඩායමක සමමුහුර්ත කමිට් එකට දුරස්ථ ලොගයේ ස්ථිරකරණය ඇතුළත් වේ. කලාප පළලට දොස් පැවරීමට හෝ මාදිලිය වෙනස් කිරීමට පෙර එම මාර්ගය මනින්න.
දෙවන අඩවියට පිටපතක් ගෙන ගිය පසු ලිවීමේ ප්රමාදය ඉහළ ගිය අතර, ටනලය නවතම සංරචකය වන බැවින් දෝෂය එයට පැටවේ. ටනලය නිර්දෝෂ විය හැක: සමමුහුර්ත කමිට් සහිත ලබා ගත හැකි කණ්ඩායමක් තුළ දුරස්ථ ලොග් ලිවීමක් අවසන් වන තෙක් ප්රාථමිකයට කමිට් තහවුරු කළ නොහැක, එබැවින් සෑම ගනුදෙනුවක්ම ගොස් ඒමක් ගෙවයි, සබැඳියට කොපමණ මෙගාබිට් ගෙන යා හැකි වුවත්. ප්රතිදානය තත්පරයකට බයිට් මනින අතර, ප්රමාදය එක් හුවමාරුවකට කොපමණ කාලයක් ගත වේද යන්න මනින අතර, කමිට් අවසන් වීමට අවශ්ය වන්නේ එක් කුඩා හුවමාරුවක් පමණි. එක් සංඛ්යාවක් තර්කය තීරණය කරයි: කුඩා ගනුදෙනුවක කමිට් කාලය, ලබා ගත හැකි දත්ත සමුදාය තුළ සහ පසුව එම අවස්ථාවේම දේශීය වගුවකට එරෙහිව නැවත මනිනු ලැබේ.
ප්රාථමිකය ඇත්තටම බලා සිටින්නේ කුමක්ද
සමමුහුර්ත කමිට් යටතේ ප්රාථමිකය සහකරු තම ලොග් වාර්තා ස්ථිරව ලියා ඇති බව තහවුරු කරන තෙක් කමිට් පිළිගැනීම රඳවා තබයි. ස්ථිරව යනු ද්විතීයිකයේ ගනුදෙනු ලොගයට කල් පවතින ලෙස ලියා ඇති බවයි, එහි දත්ත පිටුවලට නැවත ධාවනය කර ඇති බව නොවේ. රීඩු ප්රාථමිකයේ කමිට් එකට එක් මිලිතත්පරයක්වත් නොඑකතු කර මිනිත්තු ගණනක් පසුපසින් සිටිය හැක.
ලබා ගත හැකි මාදිලි පිළිබඳ Microsoft ලේඛනය එම අත්වැල් ගැසීම විස්තර කරන අතර සහකරු ඉවත් වූ විට වේදිකාව කරන දේ විස්තර කරයි. සමමුහුර්ත ලෙස සලකුණු කළ පිටපතක් යනු රැඳී සිටීම පිළිබඳ නියමයකි, සෑම කමිට් එකකටම නිරෝගී දුරස්ථ පිටපතක් ඇති බවට ස්ථිර පොරොන්දුවක් නොවේ. විසන්ධි වූ මාර්ගය වෙන වෙනම අර්ථ දක්වා ඇති අතර, එය කමිට් එක අසාර්ථක වීම පමණක් නොවේ.
එබැවින් ඔබ දකින රැඳී සිටීම එකතුවකි: ලොග් ප්රවාහනය, දෙකොටසේම සත්කාරකවල නියමිත වේලාව සහ දුරස්ථ ගබඩාවට ලිවීම. සංතෘප්ත ලොග් පරිමාවක් ඇති ද්විතීයිකයක් කිසිදු වේග පරීක්ෂණයක් නොපෙන්වන කාලයක් එකතු කරයි. පැමිණිල්ලේ VPN සඳහන් වන විට එම තැටිය කලාතුරකින් මනිනු ලැබේ.
කලාප පළල යනු ගොස් ඒමේ ප්රමාදය නොවේ
වේග පරීක්ෂණයක් මාර්ගය කෙටි වේලාවකට ජලගැල්මට ලක් කර අනුපාතයක් වාර්තා කරයි. කමිට් එකක් ඉල්ලා සිටින්නේ වඩාත් පටු දෙයකි: කුඩා පණිවිඩයක් අනෙක් පැත්තට ළඟා වීමට, රඳවා තැබීමට සහ ආපසු ඒමට කොපමණ කාලයක් ගත වේද යන්නයි. මාර්ගයේ දිග, පෝලිම් සහ පැකට් නැතිවීම එම සංඛ්යාව තීරණය කරන අතර, සැපයුම්කරු සීමාව ඉහළ දැමූ විට ඒ කිසිවක් වැඩිදියුණු නොවේ.
එබැවින් «වේගවත්» ටනලයක් කුඩා අනුක්රමික ගනුදෙනු බොහොමයකින් ගොඩනගන ලද ලිවීමේ බරැති වැඩපොළකට පෙනෙන දඬුවමක් එකතු කළ හැක. එම මුළු බයිට් ප්රමාණය කමිට් දහසකට බෙදුවහොත් ගොස් ඒම දහස් වරක් ගෙවයි; එක් තොග මාරුවක් එය එක් වරක් ගෙවයි.
ප්රතිනිධි භාරයක් යටතේ පිටපත් මාර්ගයේම ප්රමාදය සහ නැතිවීම මැන ගැනීමට ජාල හිමිකරුට කියන්න. කාර්යාල ලැප්ටොප් එකක සිට VPN ද්වාරයට ping කිරීම හෝ ආසන්න නෝඩයකට වේග පරීක්ෂණයක් කිරීම ලොගය සැබවින්ම ගමන් කරන මාර්ගයට බොහෝ දුරට කිසිවක් ආරෝපණය නොකරයි. මිනුම් කවුළුව මන්දගාමී ලිවීමේ පැය සමඟ ගැලපෙන බවට වග බලා ගන්න.
කිසිවක් වෙනස් කිරීමට පෙර පිටපතේ තත්ත්වය කියවන්න
අවස්ථා තමන් ගැන වාර්තා කරන දෙයින් ආරම්භ කරන්න, මන්ද හවුල්කාරිත්වය කෙතරම් නිරෝගීද යන්න ගැන දෙපිරිස එකඟ නොවිය හැකි අතර උපකරණ පුවරුවේ සාමාන්යය කුමන පෝලිම ගමන් කරන්නේද යන්න සඟවයි. පහත විමසුම් විවිධ ප්රශ්නවලට පිළිතුරු දෙයි: එකක් එක් එක් දත්ත සමුදාය සඳහා ප්රතිනිර්මාණ තත්ත්වය කියවයි, අනෙක එක් එක් පිටපත වින්යාසගත කර ඇති ආකාරය කියවයි. කිසිදු මාදිලියක් ස්පර්ශ කිරීමට පෙර දෙකම ධාවනය කරන්න.
SELECT ag.name AS ag_name, drs.database_id, drs.synchronization_state_desc,
drs.log_send_queue_size, drs.redo_queue_size, drs.secondary_lag_seconds
FROM sys.dm_hadr_database_replica_states AS drs
JOIN sys.availability_groups AS ag ON ag.group_id = drs.group_id;
SELECT ar.replica_server_name, ar.availability_mode_desc, ar.failover_mode_desc
FROM sys.availability_replicas AS ar;
පළමු ප්රතිඵලය ලොග් ප්රවාහනය රීඩුවෙන් වෙන් කරයි. log_send_queue_size ඉහළ යද්දී redo_queue_size පැතලිව රැඳී තිබීම යනු ලොගය පැමිණ නැති බවයි; ප්රතිවිරුද්ධය යනු එය පැමිණ ඇති අතර නැවත ධාවනය පසුපසින් ඇති බවයි. කමිට් මාර්ගයේ වැටෙන්නේ පළමු අවස්ථාව පමණි.
දෙවන ප්රතිඵලය තහවුරු කරන්නේ ඔබ උපකල්පනය කරන පරිදි සැබවින්ම වින්යාසගත වී ඇත්තේ කුමන පිටපත්ද යන්නයි, මන්ද කලින් සිදුවීමකදී වෙනස් කළ මාදිලියක් වෙනස් වී ලේඛනගත නොකළ ලෙස පවතින ප්රවණතාවක් ඇත. කණ්ඩායමේ පෙරනිමිය වෙනුවට ඔබට වැදගත් පේළිය කියවන්න: availability_mode_desc සහ failover_mode_desc එක් එක් පිටපත සඳහා වේ. secondary_lag_seconds පවතින්නේ SQL Server 2016 සහ ඉන් පසු පමණක් වන බැවින්, පැරණි ගොඩනැගීමක් ඔබට ඉතිරි කරන්නේ යැවීමේ පෝලිම සහ රීඩු තීරු පමණි.
පසුව උපකරණ පුවරුවේ සාමාන්යය විශ්වාස කරනවාට වඩා ප්රතිනිධි ලිවීමක් මනින්න. පහත කොටස ලබා ගත හැකි දත්ත සමුදායේ ධාවනය කරන්න, පසුව එම අවස්ථාවේම කණ්ඩායමෙන් පිටත දත්ත සමුදායක එම වගු හැඩයට එරෙහිව නැවත ධාවනය කරන්න. කාල දෙක අතර වෙනස දුරස්ථ ලොගයේ රළු මිලක් වන අතර, ජාල කණ්ඩායම සමඟ තර්කයේදී එය ප්රස්තාරයකට වඩා බොහෝ හොඳින් රැඳේ. ඉන් පසු එක් වරකට එක් විචල්යයක් වෙනස් කරන්න, නැතහොත් වෙනසට තවදුරටත් අර්ථයක් නැත.
IF OBJECT_ID('dbo.CommitProbe') IS NULL
CREATE TABLE dbo.CommitProbe (probe_id int PRIMARY KEY, touched_at datetime2(3));
IF NOT EXISTS (SELECT 1 FROM dbo.CommitProbe WHERE probe_id = 1)
INSERT INTO dbo.CommitProbe (probe_id) VALUES (1);
SET STATISTICS TIME ON;
BEGIN TRANSACTION;
UPDATE dbo.CommitProbe SET touched_at = SYSUTCDATETIME() WHERE probe_id = 1;
COMMIT TRANSACTION;
SET STATISTICS TIME OFF;
අසමමුහුර්ත කමිට් මිලදී ගන්නේ කුමක්ද, එය කොපමණ වැයක්ද
අසමමුහුර්ත කමිට් සමඟ ප්රාථමිකය දුරස්ථ ස්ථිරකරණ තහවුරු කිරීම බලා සිටීම නවත්වයි, එබැවින් ගොස් ඒම කමිට් මාර්ගයෙන් ඉවත් වේ. කමිට් ප්රමාදය අඩු වන අතර ද්විතීයිකය කිසිවෙකු නොපාලන ප්රමාණයක් පසුපසින් සිටීමට නිදහස් වේ. එය රැඳී සිටීමට සැබෑ නිවැරදි කිරීමක් සහ පොරොන්දුවට සැබෑ වෙනසක් වේ.
මිල යනු ප්රතිසාධන ලක්ෂ්යය පිළිබඳ තීරණයකි. ප්රාථමිකය තම ලොගය සැබවින්ම භාවිත කළ හැකි අසාර්ථක මාරුවීම් ඉලක්කයකට ළඟා වීමට පෙර මිය ගියහොත්, සේවාව අසමමුහුර්ත පිටපතට තල්ලු කිරීම යෙදුම දැනටමත් කමිට් ලෙස වාර්තා කළ ගනුදෙනු ඉවත දමයි. කිසිදු වින්යාස සංවාදයක් එය එසේ ඉදිරිපත් නොකරයි, මන්ද එය පිළිගත හැකි පාඩුවක් පිළිබඳ ව්යාපාරික ප්රශ්නයක් මිස කාර්ය සාධන සැකසුමක් නොවේ. ඉවසිය හැකි පාඩු කවුළුව සිදුවීමට පෙර ලියන්න, එය අතරතුර නොවේ.
දත්ත හිමිකරු සමඟ මාදිලිය ලිඛිතව එකඟ වන්න, කැමති ඉලක්කය නොමැති විට අසාර්ථක මාරුවීම් ක්රියාපටිපාටිය සමඟ. නිර්මාණ ලේඛනයක සමමුහුර්ත යනු මෙහෙයුම් අත්පොතක් නොවේ, අසමමුහුර්ත යනු පෝලිම් නැරඹීම නැවැත්වීමට බලපත්රයක් නොවේ.
පසුව ආරක්ෂා කළ හැකි නිවැරදි කිරීමක් තෝරන්න
අවංක විකල්ප හතරක් ඇත. යෙදුමේ අර්ථය කාණ්ඩගත කිරීමට ඉඩ දෙන තැන වළක්වා ගත හැකි කමිට් ගොස් ඒම් කපන්න; ඔබ මනින ලද ප්රවාහන හෝ ගබඩා බාධකයක් නිවැරදි කරන්න, එයින් අදහස් විය හැක්කේ ද්විතීයිකයේ විශාල නළයක් වෙනුවට වේගවත් ලොග් පරිමාවක් විය හැක; ගොස් ඒම කුඩා වන පරිදි පිටපත ළඟට ගෙන එන්න; නැතහොත් ආරක්ෂණ ප්රතිපත්තිය ලිහිල් කර පුළුල් පාඩු කවුළුවක් පිළිගන්න. එක් එකක් ප්රමාදය වෙනත් දෙයක් වැය කර මිලදී ගනී, සිව්වැන්න ටිකාක්ෂණය වැය කරයි. තේරීමට පෙර වැය නම් කරන්න.
වැඩපොළේ ප්රමාද ඉලක්කය සහ එහි ටිකාක්ෂණ අවශ්යතාව එකවර ඔබ ඉදිරියේ තබාගෙන තීරණය කරන්න, මන්ද එකක් ප්රශස්ත කිරීම අනෙක නිශ්ශබ්දව වැය කරයි. ඉන්පසු වෙනසට පෙර මනින ලද එම ගනුදෙනුවම නැවත ධාවනය කරන්න. එම සංඛ්යාව සෙලවීමට නොහැකි නිවැරදි කිරීමක් යනු වෙනස්කම් ටිකට් පැළඳි අනුමානයකි.
වෙනස්කම් වාර්තාවේ පෙර සහ පසු කියවීම් තබා ගන්න. නැතහොත් මන්දගාමී ලිවීම් දකින ඊළඟ පුද්ගලයා විමර්ශනය මුල සිට නැවත කරයි සහ නැවතත් ටනලයට දොස් පවරමින් ආරම්භ කරයි.