Prijavite se pomoću Microsoft naloga
Prijavite se ili kreirajte nalog.
Zdravo,
Izaberite drugi nalog.
Imate više naloga
Odaberite nalog pomoću kojeg želite da se prijavite.

Simptomi

Razmotrite sledeći scenario:

  • Imate dve tabele sa particijama u sistemu Microsoft SQL Server 2014, a particije prve tabele mapirane su u različite datoteke i grupe datoteka pomoću iste šeme particija i funkcije.

  • Jednu od tih particija prebacite na drugu tabelu, a zatim skratite drugu tabelu.

  • Otpustite datoteke i grupe datoteka koje su mapirane na zamenjenu particiju.

  • Pokrenete izvod SELECT na drugoj tabeli.

U ovom scenariju dobijate sledeću poruku o grešci:

Msg 606, nivo 21, nedoslednost države 1Metadata. ID datoteke<datoteke> naveden za ime <tabele> ne postoji. Pokrenite DBCC CHECKDB ili CHECKCATALOG.

Kada pokrenete DBCC CHECKDB/CHECKTABLE, dobijate sledeću poruku o grešci:

Nije moguće obraditi indeks <IndexName> tabele <TableName> zato što je grupa datoteka (FileGroup ID <FileGroupNumber>) nevažeća.

Rešenje

Problem je prvi put otklonjen u sledećim kumulativnim ispravkama sistema SQL Server:

Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su bile uključene u prethodnu kumulativnu ispravku. Preporučujemo da preuzmete i instalirate najnovije kumulativne ispravke za SQL Server:

Napomena Ova ispravka samo sprečava buduća pojavljivanja ovog problema. Ako već imate ovaj problem, izvezite podatke u svežu bazu podataka bez postojećeg oštećenja metapodataka. Da biste to uradili, sledite ove korake:

  1. Da biste utvrdili da li particija ima nevažeću grupu datoteka, pokrenite sledeći upit da biste videli da li daje rezultat:

    SELECT * FROM sys.allocation_units AS au WHERE au.data_space_id NOT IN (SELECT data_space_id FROM sys.filegroups)
  2. Ponovo učinite tabelu sa oštećenjem metapodataka. Ako upit iz koraka 1 vrati rezultat, particija sa oštećenim metapodacima sprečava prikazivanje (izaberite * iz) bilo kog reda u tabeli. Da biste otklonili ovaj problem, uklonite tu lošu particiju.Napomena Loša particija bi trebalo da bude prazna. U suprotnom, datoteke i grupa datoteka u kojima se bila nisu mogli biti ispušteni ili izbrisani. Da biste to uradili, premestite ovu particiju u drugu tabelu koja koristi istu šemu particija. Ovaj sto moћe da bude samo glupi sto. Koristite container_id upita u koraku 1 i uparite ga sa partition_id sys.particija. (Uverite se da ste zanemeli partition_number.) Koristite partition_number da biste izvršili alter TABLE SWITCH PARTICIJU iz tabele koja je bila neopoziva u lažnu tabelu. Lažna tabela bi trebalo da ima isti skup kolona i da koristi istu šemu particija. Upit za pronalaženje nedosledne particije može da liči na sledeću:

    SELECT au.container_id, au.data_space_id, p.partition_number FROM sys.partitions AS p JOIN sys.allocation_units AS au ON p.partition_id = au.container_id LEFT JOIN sys.filegroups AS fgs ON fgs.data_space_id = au.data_space_id WHERE object_id = OBJECT_ID('MyTableName') AND fgs.data_space_id IS NULL;
  3. Kopirajte podatke iz prethodno nepoželjane tabele u novu bazu podataka.

Status

Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".

Da li vam je potrebna dodatna pomoć?

Želite još opcija?

Istražite pogodnosti pretplate, pregledajte kurseve za obuku, saznajte kako da obezbedite uređaj i još mnogo toga.

Zajednice vam pomažu da postavljate pitanja i odgovarate na pitanja, dajete povratne informacije i čujete mišljenje od stručnjaka sa bogatim znanjem.

Da li su vam ove informacije koristile?

Koliko ste zadovoljni kvalitetom jezika?
Šta je uticalo na vaše iskustvo?
Kada kliknete na dugme Prosledi“, vaše povratne informacije će se koristiti za poboljšanje Microsoft proizvoda i usluga. Vaš IT administrator će moći da prikupi ove podatke. Izjava o privatnosti.

Hvala vam na povratnim informacijama!

×