PRB: 'Temp_db zařízení způsobuje potíže při spuštění serveru SQL

Překlady článku Překlady článku
ID článku: 158586 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Příznaky

Pokud tak, aby tempdb umístěny do RAM (buď explicitně nastavením možnost 'tempdb v RAM' nebo spuštění v režimu minimální konfigurace pomocí příkazového řádku parametr -f) je spuštěn SQL Server, SQL Server se nezdaří spustit správně, pokud zařízení s názvem zařízení 'temp_db' již existuje.

Příčina

Při tempdb je umístěn v RAM, SQL Server nejprve pokusí vytvořit zařízení RAM s logický název temp_db a potom vytvořit databáze tempdb na tomto zařízení. Pokud zařízení již existuje s názvem temp_db, se nezdaří pokus o vložení položky do tabulky sysdevices; proto nelze vytvořit databázi tempdb.

SQL Server errorlog bude obsahovat následující posloupnost chybové zprávy:
Pokus o vložení duplicitní klíče řádek objekt 'sysdevices' s jedinečný index sysdevices (2601 zpráva)

crdb_tempdb: nelze přesunout tempdb do RAM; RAM zařízení neexistuje, nelze vytvořit nebo nemá dostatek místa pro databázi tempdb.

Server bude pokračovat prostřednictvím procesu spouštění a bude pravděpodobně sestavy i jiné chybové zprávy.



Pokusit se použít tempdb během spuštění (například v spuštění uložené procedury) může být hlášena následující chybové zprávy a nezdaří se spuštění serveru:
Msg 906: Může najděte řádek není v sysobjects katalog systému 'sysobjects' v databázi 'tempdb....

Msg 615: Nelze najít id tabulky databáze = 2, název = 'tempdb....

Pokus o přístup k databázi tempdb po spuštění serveru výše uvedené zprávy bude zaprotokolována, ale nebude server zastaven.

Jak potíže obejít

Ke spuštění serveru, přejděte na příkazový řádek a přejděte do adresáře BINN, kde byl instalován SQL Server (například SQL60\BINN SQL Server 6.0 nebo MSSQL\BINN SQL Server 6.5). Potom pomocí následujícího příkazového řádku, což je malá a velká písmena, spuštění serveru SQL:
sqlservr - c -m - T3609 - T4022



Poznámka: použití -m spustí SQL Server v režimu jednoho uživatele. Po první úspěšné přihlášení budou následné požadavky získat zprávu "Přihlášení se nezdařilo" dokud má první připojení odhlásit. Ujistěte se, zastavte všechny automatizované procesy pravděpodobně se pokoušíte přihlásit k serveru SQL (např SQL Executive, sledování výkonu, atd.).

Po spuštění serveru SQL pomocí ISQL/w připojit k serveru SQL. Všimněte si, že nebude možné použít SQL Enterprise Manager; není k dispozici s tyto parametry spuštění (protože používá tempdb). Po připojení přetažení existující zařízení s názvem 'temp_db tak, aby SQL Server můžete vytvořit zařízení při spuštění používat následující příkaz.
sp_dropdevice 'temp_db

Pokud je rozbalený jiných databází kromě databáze tempdb do zařízení příkaz sestavy názvy těchto databází. Tyto databáze bude muset být zrušen pomocí příkazu DROP DATABASE, takže odstraněny zařízení temp_db.



Pokud SQL Server stále nezdaří úspěšně spustit po výše uvedených kroků a tempdb měl bylo explicitně umístěno do RAM, pokuste se umístit tempdb na disku použijte následující příkaz.
sp_configure 'tempdb v RAM' 0
překonfigurovat přepsání

To má umístit tempdb zpět na výchozí zařízení s výchozí velikost databáze (obvykle 2 MB na předloze). Zastavte a restartujte službu SQL Server. V tomto okamžiku bude chcete přetažení zařízení s temp_db název a vytvořit zařízení s jiným názvem a rozbalte tempdb na nové zařízení.

Vlastnosti

ID článku: 158586 - Poslední aktualizace: 6. února 2014 - Revize: 3.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 6.0 Standard Edition
  • Microsoft SQL Server 6.5 Standard Edition
Klíčová slova: 
kbnosurvey kbarchive kbmt KB158586 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:158586

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com