Ongelman ilmenemistapa
Oletetaan, että sinulla on Microsoft SQL Server 2014:ssä tietokanta, joka sisältää vain luku -tiedostoryhmiä. Kun suoritat DBCC CHECKDB -tietokannassa, DBCC-komento ei voi luoda tietokannasta tilannevedosta tietokannasta.
Jos tietokantaan ei ole muuta yhteyttä, DBCC-toiminto suoritetaan virheettömästi. Näyttöön tulee kuitenkin seuraava virhesanoma:
Huomautus
DBCC CHECKDB ei tarkista SQL Server -luettelon tai Service Brokerin yhdenmukaisuutta, koska tietokannan tilannevedosta ei voitu luoda tai koska WITH TABLOCK oli määritetty.
Jos tietokantaan on muita yhteyksiä, DBCC-toiminto epäonnistuu ja näyttöön tulee seuraava virhesanoma:
Huomautus
Msg 5030, taso 16, tila 12, rivi 1
Tietokantaa ei voitu lukita yksinomaisesti toiminnon suorittamista varten.
Msg 7926, taso 16, tila 1, rivi 1
Tarkistuslauseke keskeytetty. Tietokantaa ei voitu tarkistaa, koska tietokannan tilannevedosta ei voitu luoda eikä tietokantaa tai taulukkoa voitu lukita. Katso Books Online -sovelluksesta lisätietoja siitä, milloin tällaista käyttäytymistä odotetaan ja mitä vaihtoehtoisia menetelmiä on olemassa. Katso myös aiemmat virheet saadaksesi lisätietoja.
Ratkaisu
Kumulatiivisen päivityksen tiedot
Ongelma korjattiin ensimmäisen kerran seuraavassa SQL Server kumulatiivisessa päivityksessä.
Suositus: Asenna uusin kumulatiivinen päivitys SQL Server:lle
Jokainen uusi SQL Server -kumulatiivinen päivitys sisältää kaikki edelliseen kumulatiiviseen päivitykseen sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Suosittelemme, että lataat ja asennat uusimmat kumulatiiviset päivitykset SQL Server:lle:
Lisätietoja
Voit toistaa tämän ongelman suorittamalla seuraavat komennot SQL Server:
Huomautus
-- Open a new query that is named conn1, and then create a new database. CREATE DATABASE DbTest GO -- Add a new file group. ALTER DATABASE DbTest ADD FILEGROUP FGTest GO -- Add a file to the new file group. ALTER DATABASE DbTest ADD FILE (NAME=DbTest_Data2, FILENAME=''C:\temp\DbTest_Data2.ndf') TO FILEGROUP FGTest GO -- Change the file group to read-only. ALTER DATABASE DbTest MODIFY FILEGROUP FGTest READONLY GO -- Run the DBCC CHECK command in the conn1 query. DBCC CHECKDB (DbTest) -- The DBCC CHECK command runs correctly. However, you may receive the following message: "DBCC CHECKDB will not check SQL Server catalog or Service Broker consistency because a database snapshot could not be created or because WITH TABLOCK was specified." -- Open a new query window that is named conn2, and then set the database as DbTest. This action opens a connection to the DbTest database. -- Return to the conn1 query, and run the DBCC command again. DBCC CHECKDB (DbTest) -- Notice the error message that is mentioned in the "Symptoms" section.
Tila
Microsoft on vahvistanut tämän olevan ongelma niissä Microsoftin tuotteissa, jotka ovat listattuna Koskee seuraavia tuotteita -osiossa.