Me ya sa SQL ɗinka na haɗin kai yake jiran tafiyar VPN
Tabbatarwa ta haɗin kai a cikin ƙungiyar samuwa ta haɗa da dagewar log ɗin nesa. Auna wannan hanyar kafin ka zargi faɗin bandeji ko ka canza yanayi.
Jinkirin rubutu ya yi tsalle bayan an matsar da kwafi zuwa shafi na biyu, kuma ramin shi ne sabon ɓangare, don haka ake ɗora masa laifi. Ramin na iya zama marar laifi: cikin ƙungiyar samuwa mai tabbatarwa na haɗin kai, na farko ba zai iya amincewa da tabbatarwa ba har sai an kammala rubutun log na nesa, don haka kowace ma'amala tana biyan tafiya da dawowa komai adadin megabit ɗin da hanyar za ta iya ɗauka. Saurin wucewa yana auna byte a cikin daƙiƙa, jinkiri yana auna tsawon lokacin da musayar ɗaya ke ɗauka, kuma tabbatarwa tana buƙatar ƙaramin musayar ɗaya kawai don kammalawa. Lamba ɗaya tana warware gardama: tsawon tabbatarwar ƙaramar ma'amala, wanda aka auna cikin bayanan ƙungiyar samuwa sannan kuma a kan tebur na gida a wannan misali ɗaya.
Abin da na farko yake jira da gaske
Ƙarƙashin tabbatarwa na haɗin kai, na farko yana riƙe amincewar tabbatarwa har abokin tarayya ya tabbatar da cewa bayanan log ɗinsa sun dage. Dage yana nufin an rubuta su na dindindin cikin log ɗin ma'amala na na biyu, ba a sake yin su cikin shafukan bayanansa ba. Redo na iya kasancewa a baya da mintuna ba tare da ƙara millisekindi ɗaya ga tabbatarwar na farko ba.
Takardun Microsoft game da hanyoyin samuwa yana bayyana wannan musafaha kuma yana kwatanta abin da dandamali ke yi sa'ad da abokin tarayya ya faɗi. Kwafin da aka yi wa alama a matsayin na haɗin kai ƙa'ida ce game da jira, ba alkawari na dindindin ba cewa akwai lafiyayyen kwafin nesa ga kowace tabbatarwa. An bayyana hanyar da aka yanke daban, kuma ba wai kawai tabbatarwar ta kasa ba ne.
Don haka jiran da kake gani jimla ce: jigilar log, tsari a kan duka masu karɓar baƙi da rubutun ajiya na nesa. Na biyu mai cikakken log ɗin yana ƙara lokacin da babu gwajin sauri da zai nuna. Ba safai ake auna wannan faifan ba sa'ad da ƙarar ta ambaci VPN.
Faɗin bandeji ba jinkirin tafiya da dawowa ba ne
Gwajin sauri yana mamaye hanyar na ɗan lokaci kuma yana ba da rabo. Tabbatarwa tana neman wani abu mafi ƙunci: tsawon lokacin da ƙaramin saƙo ke ɗauka don isa wancan gefen, a adana shi, sannan ya dawo. Tsawon hanyar, layi da asarar fakiti suna ƙayyade wannan lambar, kuma babu ɗayansu da ke inganta sa'ad da mai bayarwa ya ɗaga rufin.
Don haka «sauri» rami na iya ƙara hukunci bayyananne ga aikin rubutu mai nauyi wanda aka gina daga ƙananan ma'amaloli masu yawa a jere. Jimillar byte ɗaya da aka raba kan tabbatarwa dubu tana biyan tafiya da dawowa sau dubu; jigilar jama'a ɗaya tana biyan ta sau ɗaya.
Ka nemi mai hanyar sadarwa ya auna jinkiri da asara a kan hanyar kwafin kanta ƙarƙashin nauyi na wakilci. Ping daga kwamfutar tafi-da-gidanka ta ofis zuwa ƙofar VPN, ko gwajin sauri zuwa kusancin node, ba ya danganta kusan komai ga hanyar da log ɗin yake bi da gaske. Ka tabbatar da taga auna ya haɗu da sa'o'in da rubutu ke jinkiri.
Ka karanta yanayin kwafin kafin ka canza komai
Fara daga abin da misalan ke bayarwa game da kansu, domin ɓangarorin biyu na iya rashin jituwa game da yadda ƙungiyar take da lafiya kuma matsakaicin dashboard yana ɓoye wanne layi ke motsi. Tambayoyin da ke ƙasa suna amsa tambayoyi daban-daban: ɗaya yana karanta yanayin maimaitawa ta kowace bayanai, ɗayan yana karanta yadda aka tsara kowane kwafi. Ka gudanar da duka biyu kafin ka taɓa wani yanayi.
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;
Sakamakon farko yana raba jigilar log da redo. log_send_queue_size yana tashi yayin da redo_queue_size ya tsaya a kwance yana nufin log ɗin bai iso ba; akasin haka yana nufin ya iso kuma sake kunnawa yana baya. Halin farko ne kaɗai ke zaune a kan hanyar tabbatarwa.
Sakamakon na biyu yana tabbatar da waɗanne kwafi aka tsara da gaske kamar yadda kake tsammani, domin yanayin da aka canza a wani lamari na baya yakan kasance a canza kuma ba a rubuta shi ba. Ka karanta layin da kake so maimakon tsohon yanayin ƙungiyar: availability_mode_desc da failover_mode_desc na kowane kwafi ne. secondary_lag_seconds yana wanzu ne kawai a SQL Server 2016 da baya, don haka tsohuwar gini tana barin ka da ginshiƙan layin aikawa da redo kawai.
Sannan ka auna rubutu na wakilci maimakon dogaro da matsakaicin dashboard. Ka gudanar da toshewar da ke ƙasa a cikin bayanan ƙungiyar samuwa, sannan ka sake gudanar da ita a kan irin wannan siffar tebur a cikin bayanai da ke wajen ƙungiyar a wannan misali ɗaya. Tazarar tsakanin tsawon biyun farashin kusan na log ɗin nesa ne, kuma tana tsayawa a gardama da ƙungiyar sadarwa fiye da jadawali. Bayan haka ka canza ma'auni ɗaya a lokaci ɗaya, in ba haka ba tazarar ba ta da ma'ana.
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;
Abin da tabbatarwa marar haɗin kai ke saya, da abin da take kashewa
Da tabbatarwa marar haɗin kai na farko yana daina jiran amincewar dagewar nesa, don haka tafiya da dawowa ta bar hanyar tabbatarwa. Jinkirin tabbatarwa yana raguwa kuma na biyu yana da 'yanci ya koma baya gwargwadon abin da babu wanda ke sarrafa shi. Wannan gyara ne na gaske ga jira kuma canji na gaske ga alkawari.
Farashin shi ne shawarar wurin dawo da bayanai. Idan na farko ya mutu kafin log ɗinsa ya isa manufar canja sheka da za ka iya amfani da ita da gaske, tura sabis ɗin zuwa kwafin marar haɗin kai yana watsar da ma'amalolin da aikace-aikacen ya riga ya bayar da su a matsayin tabbatattu. Babu wata tattaunawa ta tsari da ke gabatar da shi haka, domin tambaya ce ta kasuwanci game da asarar da za a yarda da ita, ba saitin aiki ba. Ka rubuta taga asarar da aka jure kafin lamarin, ba a lokacinsa ba.
Ka amince da yanayin tare da wanda ya mallaki bayanan, a rubuce, tare da tsarin canja sheka na yanayin da manufar da aka fi so ba ta samuwa. Na haɗin kai a cikin takardar zane ba jagorar aiki ba ce, kuma marar haɗin kai ba lasisi ba ne na daina kallon layukan.
Zaɓi gyaran da za ka iya kare shi daga baya
Akwai zaɓuɓɓuka huɗu na gaskiya. Yanke tafiye-tafiyen tabbatarwa da za a iya gujewa inda ma'anar aikace-aikacen ke ba da izinin haɗawa; gyara matsalar jigila ko ajiya da ka auna, wanda zai iya nufin saurin log a kan na biyu maimakon babban bututu; matsa kwafin kusa domin tafiya da dawowa ta ragu; ko sassauta manufar kariya ka yarda da faffadan taga asara. Kowanne yana sayen jinkiri ta hanyar kashe wani abu, kuma na huɗu yana kashe dawwama. Ka ambaci kashewar kafin ka zaɓa.
Ka yanke shawara tare da manufar jinkirin aikin da buƙatar dawwama a gabanka a lokaci ɗaya, domin inganta ɗaya yana kashe ɗayan a shiru. Sannan ka sake gudanar da ma'amalar da ka auna kafin canjin. Gyaran da ba zai iya motsa wannan lambar ba zato ne sanye da tikitin canji.
Ka adana karatun kafin da bayan a cikin rikodin canji. In ba haka ba, mutum na gaba da ya ga jinkirin rubutu zai maimaita binciken daga farko kuma ya fara ɗora wa ramin laifi.