PRB: SQL Server Won't Start After Setting TEMPDB IN RAM Too HighID: Q166350
|
If the SQL Server tempdb in RAM value is configured to a value higher than
the available RAM remaining on the computer, SQL Server fails on the next
startup attempt. Because the configuration value does not take affect until
the server is stopped and restarted, the server functions as normal until
that time. Upon attempting to restart the server, the following message
appears in the SQL Server error log:
kernel udactivate(IN_RAM): Operating system error 8(Not enough storage
is available to process this command.) encountered
spid1 Device activation error. The physical filename 'IN_RAM' may be
incorrect
spid1 crdb_tempdb: Unable to move tempdb into RAM; RAM device doesn't
exist, cannot be created, or doesn't have enough space for tempdb
On startup, if tempdb is configured to exist in RAM, SQL Server must create a temp_db device within the available system RAM in which to store tempdb. If the size of tempdb exceeds the available amount of system RAM, the device cannot be created. Without the device, SQL Server is unable to create tempdb in RAM. It is important to note that the tempdb in RAM value uses RAM in addition to memory currently allocated to SQL Server, and is specified in MB, not 2-KB pages.
To resolve this problem, do the following:
sqlservr -c -fYou will get a screen dump of the error log. When the startup is complete, you will have a flashing cursor after the following line:
97/02/27 15:34:46.14 kernel Warning: override, autoexec procedures skipped.
sp_configure 'tempdb in ram', X
go
reconfigure
go
shutdown
go
Server SHUTDOWN by request.
Additional query words: temp db
Keywords : kbusage SSrvAdmin SSrvGen
Version : WINNT:6.0,6.5
Platform : winnt
Issue type : kbprb
Last Reviewed: April 9, 1999