Pierakstīties, izmantojot Microsoft
Pierakstīties vai izveidot kontu
Sveicināti!
Atlasīt citu kontu.
Jums ir vairāki konti
Izvēlieties kontu, ar kuru vēlaties pierakstīties.

Simptomi

Ja izmantojat datu bāzes spoguļošanu programmā Microsoft SQL Server 2012 vai Microsoft SQL Server 2014, var tikt parādīts nosacījums un datu bāzes spoguļošana tiek ierakstīta suspendētā stāvoklī.

Cēlonis

Problēma rodas tāpēc, ka, piešķirot jaunu lapu, SQL Server jaunā lapā iegūst X slēdzeni. SQL Server novietos hobt_id (terehons vai B-Tree ID), uz kuru jaunā lapa ir iekļauta bloķēšanas pieprasījumā. Taču SQL Server nevar ievietot hobt_id spoguļa žurnālfailā un izraisa atšķirīgu bloķēšanas darbību starp primāro un spoguli. To var detalizēti izskaidrot šādi:

  1. T1 turiet IX slēdzi lapā P1.

  2. T2 veiciet lappuses sadalīšanu P1, piešķiriet jaunu lappusi P2, tiek izmantots sistēmas transakciju TX, tajā ir X atslēga P2. Šeit SQL Server nedeva hobt_id spoguļošanas žurnālu.

  3. TX ir bloķēšanas migrācija uz T1, lai pārvietotu IX slēdzi no P1 uz P2.

  4. TX izdarīts, tagad T2 var izmantot lapu P2 un T2, lai iegūtu citu IX slēdzi lapā P2.

  5. T1 ir izdarīts, tagad T2 ir vienīgais, kam ir IX atslēga P2.

  6. Pēc tam, kad ir ievietotas daudzas bloķēšanas darbības, primārā, T2 izlaiž IX on P2, bet uz spoguļa bloķēšanas eskalācijas laikā T2 nelaida IX slēdzi.

  7. Pēc daudzu dzēšanas lapa P2 kļuva tukša un ir atdalīta.

  8. T3 nepieciešama jauna lapa, un tas notiek, lai piešķirtu P2, tam nepieciešama X bloķēšana, bet spogulis šī darbība neizdevās 6. darbības dēļ.

Spogulī 6. darbībā netiek izlaists IX bloķējums, jo hobt_id bloķēšanas blokā nav pareizs. Šī nepareizā hobt_id ir iekļauta 2. darbībā, un SQL Server dēļ neveic hobt_ids spoguļošanas žurnālfailā. parasti neredzat nekādu problēmu, jo TX 2. darbībā ir ļoti īss, un bloķēšanas bloks ar nepareizu hobt_id tiek izlaists, kad tas tiek izdarīts. Taču, tā kā bloķēšana ir Step3 un tālāk norādītās darbības (4 un 5), šis bloķēšanas bloks ar nepareizu hobt_id tiek saglabāts, un pēc tam tā izraisa problēmu. Primārajai nav šīs problēmas, jo tā izmanto pareizo hobt_id 2. darbībā. Taču ieraksta reģistrēšana nav pareiza hobt_id.

Katrā jaunajā kumulatīvajā SQL Server atjauninājumā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvajā atjauninājumā. Skatiet jaunākos kumulatīvos atjauninājumus SQL Server:

Risinājums

Lai novērstu šo problēmu, atkārtoti inicializējiet spoguli, lai beigtu apturēto statusu.

Statusa

Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.

Vai šī informācija bija noderīga?

Cik lielā mērā esat apmierināts ar valodas kvalitāti?
Kas ietekmēja jūsu pieredzi?
Nospiežot Iesniegt, jūsu atsauksmes tiks izmantotas Microsoft produktu un pakalpojumu uzlabošanai. Jūsu IT administrators varēs vākt šos datus. Paziņojums par konfidencialitāti.

Paldies par jūsu atsauksmēm!

×