namai - Programinė įranga
Dėmesio!!! Atnaujinant duomenis po paskutinio restruktūrizavimo įvyko klaida. Pakartoti atnaujinimą? Klaida "atnaujinant informacijos bazę įvyko kritinė klaida" Naujinant 1c įvyko kritinė klaida

Mes persikėlėme į naują serverį. Jis veikia SQL ir 1C. Palyginti su senaisiais, jis buvo daug kietesnis. Ir Gilev testas taip pat tai patvirtino: prieš 10-15 senuose serveriuose davė 39. Todėl iškart po pirkimo perkėlėme duomenų bazę ir pradėjome dirbti.

Tačiau kažkuriuo momentu kažkas nutiko – vartotojai pradėjo skųstis lėtas darbas. Mes padarėme tam tikrus serverio ir paslaugų nustatymus (kurie yra atskiro įrašo tema) ir nusprendėme perkrauti serverį, laimei, perkrovimo greitis buvo 2 minutės (kituose serveriuose buvo iki 10). Po to prisijungę prie 1C gauname tokį pranešimą:

"Dėmesio!!! Atnaujinant duomenis po paskutinio restruktūrizavimo įvyko klaida. Ar turėčiau pakartoti atnaujinimą? "Ne visai"

Spustelėjus „Taip“, pasirodo:

„Aptikta nebaigta konfigūracijos išsaugojimo operacija. Norėdami tęsti, turite užbaigti operaciją."

Pirmas dalykas, kurį nusprendžiau padaryti, buvo CHECKDB „Managment Studio“ - po 2 valandų laukimo (500 GB duomenų bazė) - viskas buvo gerai.

Internete radau informacijos, kad dinaminio atnaujinimo metu atsiranda ta pati klaida.

Internete pasiūlyti sprendimai padėjo ne iš karto, tačiau kartu su kitais veiksmais davė rezultatų. Taigi, ką aš padariau:

Sprendimas:

  1. Ko trūko sprendimams iš tinklo:

sp_configure „leisti atnaujinti“, 1
perkonfigūruoti su nepaisymu
eik

2. Įjunkite duomenų bazę į atkūrimo režimą

pakeisti duomenų bazės rinkinį EMERGENCY, SINGLE_USER

3. Atliekame duomenų bazės testavimą:

dbcc checkdb('db_name', REPAIR_ALLOW_DATA_LOSS)

4. Išeikite iš duomenų bazės iš atkūrimo režimo:

pakeisti duomenų bazių rinkinį ONLINE, MULTI_USER

5. Iš principo, jei esi tikras, kad su pačia baze viskas ok, tai tau nereikia daryti 2-4 punktų. Tada SQL profiliuotoje vykdome dvi užklausas:

ištrinti iš konfigūracijos kur FileName = 'commit'
ištrinti iš konfigūracijos kur FileName = 'dbStruFinal'

Šie įrašai yra atsakingi už dinaminį atnaujinimą – jūs neturite bijoti juos ištrinti.

Darbinėse duomenų bazių versijose užklausos:

pasirinkite * iš Config WHERE FileName = 'commit'

pasirinkite * iš Config WHERE FileName = 'dbStruFinal'

bus tuščias.

6. grąžinkite nustatymus:

sp_configure „leisti atnaujinti“, 0
eik

7. Po to mums pavyko paleisti konfigūratorių ir duomenų bazė pradėjo veikti.

Taip pat bazė gali pradėti veikti nuėmus pirmąją vėliavėlę.

Smėlio dėžė

institucija 2013 m. rugsėjo 18 d., 15.24 val

1C, konfigūracijos atkūrimas informacinė bazė naudojant MS SQL

Vienu metu susidūriau su problema: atnaujinant konfigūraciją iš saugyklos įvyko gedimas ir 1C uždarytas.

Kaip vėliau paaiškėjo, konfigūracijos saugykla buvo sunaikinta, o atnaujinant konfigūraciją duomenų bazės konfigūracija taip pat buvo ištrinta iš saugyklos. Panaši klaida įvyko anksčiau dinamiškai atnaujinant informacijos saugumą.

Nes Ši problema kilo ne kartą ir nusprendė pasidalinti gydymo galimybe.

Kitą kartą paleidus konfigūratorių, pasirodė klaida: „Dėmesio!!! Atnaujinant duomenis po paskutinio restruktūrizavimo įvyko klaida. Ar turėčiau pakartoti atnaujinimą? Jei atsakymas yra teigiamas, gauname pranešimą: „Aptikta nebaigta konfigūracijos išsaugojimo operacija. Norėdami tęsti darbą, turite užbaigti operaciją“, po kurios programa uždaroma.

Analizuojant šią problemą buvo rasti keli problemos sprendimo būdai, kiekvienas sprendimas veikia skirtingais atvejais.

1 parinktis (jei turite SQL atsarginę kopiją su identiškos konfigūracijos kopija):

Įdiegta informacijos apsaugos kopija ir vykdoma ši užklausa:
NAUDOTI EITI IŠTRINTI IŠ .. EITI Įterpti Į ..>Pasirinkti * IŠ .. EITI
Tokiu atveju lentelė, kurioje saugoma informacijos saugos konfigūracija, pildoma iš naujo. Po šios operacijos patartina patikrinti ir pataisyti informacijos saugumą.

2 variantas (jei nėra atsarginės kopijos):

KAM ši parinktis pasuko prie paskutinio šiaudo. Nes konfigūracija buvo kuriama ir jie šiek tiek pamiršo apie atsarginę kopiją, pasikliaudami saugykla.
Duomenų bazėje du įrašai ištrinami iš lentelės „Config“ pagal reikšmę stulpelyje „FileName“ – dbStruFinal ir įpareigoti

Vykdoma ši užklausa:
NAUDOKITE EITI IŠTRINTI IŠ . WHERE FileName = "dbStruFinal" GO DELETE FROM . WHERE FileName = "įsipareigoti" GO
Kaip bebūtų keista, bazė atgyja.

Žymos: 1C Enterprise 8.2, SQL, konfigūracijos atkūrimas

Šis straipsnis nėra komentuojamas, nes jo autorius dar nėra visateisis bendruomenės narys. Su autoriumi galėsite susisiekti tik jam gavus

Dirbant 1C:Enterprise, gali pasirodyti toks pranešimas: „Norint dirbti su nauja versija 1C: Įmonėje turi būti pakeista informacijos bazė. Kodėl pasirodo šis langas ir kaip galiu išspręsti klaidą?

Daugeliu atvejų lango atsiradimo priežastis yra neseniai įvykęs programos perėjimas iš pasenusi versija platformas į naujesnę. Skirtingose ​​platformose informacinė bazė 1C formuojasi savaip ir įgauna kitokią kompoziciją. Viskas, ką reikia padaryti, tai konvertuoti duomenų bazę (kurios struktūra atitinka pasenusią platformą) į naujausią formatą.

Duomenų bazės konvertavimas

Ši procedūra yra paprasta, tačiau pirmiausia rekomenduojama ją sukurti atsarginė kopija bazę, jei konvertuojant įvyktų klaida (pavyzdžiui, kompiuteris išsijungia, todėl informacinė bazė 1C, kaip ir pati programa, gali būti sugadinta). Tada taikykite šį veiksmų algoritmą:

  • Atidarykite duomenų bazę konfigūratoriaus režimu;
  • Pamatysite pranešimą, kuriame prašoma konvertuoti informacijos bazę. Spustelėkite patvirtinimą;

  • Uždarykite konfigūratorių.

Atidarykite duomenų bazę - ji turėtų prasidėti be problemų. Jei po konvertavimo klaidos langas ir toliau rodomas, galite pakartoti procedūrą. Jei tai nepadeda, turite susisiekti su 1C programuotoju. Kartais programa gali užstrigti atliekant operaciją. Šiuo metu nereikia imtis jokių veiksmų.

Svarbu! Informacinė bazė 1C, konvertuotas Naujausia versija programų negalima atidaryti ankstesnėse versijose.

Fonas

Reikėjo sukurti naują informacijos registrą „MessageTrackingLog“. Pridėta prie konfigūracijos, įkelti duomenys. Tada atėjo optimizavimo darbai. Teko pakeisti registro struktūrą. Bet jo ten nebuvo!

Čia viskas aišku. Įrašai tapo neunikalūs, juos reikia ištrinti!

Lengviausias būdas yra:

NewRecord = InformationRegisters.MessageTrackingLog.CreateRecordSet(); NewRecord.Write();

Naudodami šį metodą labai greitai išvalysime registrą 1C (bet tai taip pat bus mūsų klaida).

Klaida

Atrodytų, kad registras tuščias, ir jūs galite atnaujinti 1C. Nenoriu jūsų nustebinti, bet vėl bus klaida:


Ką reiškia klaida:

Informacinės bazės atnaujinimo proceso metu įvyko kritinė klaida
dėl:
Bandymas įterpti neunikalią reikšmę į unikalų indeksą:
Microsoft SQL serveris Native Client 11.0: CREATE UNIQUE INDEX sakinys nutrauktas, nes buvo rastas tikslios objekto pavadinimo „dbo._InfoRgChngR34546NG“ ir indekso pavadinimo „_InfoR34546_ByNodeMsg_RNTSRRRRRRNG“ raktas. Pasikartojanti rakto reikšmė yra (0x00000011,d7, , 4015 rugsėjo 27 d. 22:22, 768404,00,00,00,00,00,00).
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, būsena=1, sunkumas=10, gimtoji=1505, eilutė=1

Paaiškinimas

Supraskime SQL struktūrą. Mes turime registrą „MessageTrackingLog“, SQL jis yra lentelėje „ _InfoR34546". Tai galite patikrinti naudodami specialų apdorojimą arba „poke“ metodą (to daryti nereikia, nes lentelės pavadinimas jau nurodytas klaidos tekste).

Dabar paaiškinsiu, kas atsitiko. Kai įkėlėme duomenis į registrą, SQL jie atsidūrė lentelėje" _InfoR34546". Kai išvalėme lentelę su kodu 1C, šie duomenys buvo ištrinti iš lentelės" _InfoR34546", bet jie buvo nukopijuoti į lentelę" _InfoRgChngR34546". Tai tapo problema.

Sprendimas

Norėdami išspręsti šią problemą, turime išvalyti SQL lentelę "_InfoRgChngR34546".

Aš jums pasakysiu pavyzdžiu" Microsoft SQL Serverio valdymo studija“. Eikite į „ „Management Studio“

Sutrumpinti lentelę „_InfoRgChngR34546“

Galbūt turėsite kitą stalą! Nepamiršk!

Ir paspauskite vykdyti arba paspauskite "F5". Štai koks turėtų būti rezultatas:

Tai viskas, dabar galite saugiai atnaujinti 1C ir nebus jokių klaidų!



 


Skaityti:



Geriausių belaidžių ausinių įvertinimas

Geriausių belaidžių ausinių įvertinimas

Ar galima nebrangiai įsigyti universalių ausų? 3000 rublių – ar už tokius pinigus galima nusipirkti kokybiškų ausinių? Kaip paaiškėjo, taip. Ir kalba...

Pagrindinė mobiliojo įrenginio kamera dažniausiai yra užpakalinėje korpuso dalyje ir naudojama fotografuoti bei filmuoti

Pagrindinė mobiliojo įrenginio kamera dažniausiai yra užpakalinėje korpuso dalyje ir naudojama fotografuoti bei filmuoti

Atnaujinta planšetės versija su patobulintomis charakteristikomis ir dideliu autonomiškumu.Acer išmanieji telefonai retai lankomi...

Kaip persijungti į kitą operatorių išsaugant savo numerį

Kaip persijungti į kitą operatorių išsaugant savo numerį

Įstatymas dėl telefono numerio išsaugojimo, kai abonentas pereina prie kito mobiliojo ryšio operatoriaus, Rusijoje įsigaliojo gruodžio 1 d. Tačiau paaiškėjo, kad...

phableto apžvalga, brangi, bet labai kompetentinga

phableto apžvalga, brangi, bet labai kompetentinga

Apžvalga apie phablet, brangus, bet labai kompetentingas 2015-03-20 Esu vienintelis batsiuvys pasaulyje be batų, išmaniųjų telefonų apžvalgininkas be savo išmaniojo telefono....

tiekimo vaizdas RSS