INF: Recovering a Full Master DatabaseLast reviewed: April 3, 1997Article ID: Q102077 |
The information in this article applies to:
- Microsoft SQL Server version 4.2 for OS/2
SUMMARYUsers making many updates to system tables may fill their master database. The most common symptom is to receive the following message (1105 error):
Can't allocate space for object syslogs in database master because the logsegment is full. If you ran out of space in syslogs, dump the transaction log. Otherwise use ALTER DATABASE or sp_extendsegment to increase the size of the segment.This article outlines the steps users can follow to safely recover from this condition.
MORE INFORMATIONUsers can reduce the chances of filling the master database in two ways. First, no user information should be stored in the master database, it should be reserved for system level information. Second, users with SQL Server version 4.2a patch K9 or later can set the database option truncate log on checkpoint in the master database:
sp_dboption master,'trunc.',trueSQL Server 4.2a patch K9 can be obtained through your reseller or your usual support provider. If a user receives an 1105 error message referencing the table syslogs in master, the response depends on several factors. If the user has not yet shut down the system, they can simply log on as the SA user and type the following:
dump transaction master with no_logIf the user has shut down the system, and they have SQL Server version 4.2a patch K7 or later, they can restart the system and use the above procedure to dump transaction master with no_log. Use the following procedures if the system is shutdown, SQL Server version 4.2aK7 is not available, and the system is needed before a version 4.2aK7 or later patch can be received. The procedures depend on having the script MASTER.SQL found at the bottom of this article keyed in as a file on the user system. Note: The following steps assume that MASTER.DAT and the errorlog are in their default locations, if they are not, adjust the paths accordingly. If the user has a valid, current dump of the master database, do the following:
MASTER.SQLMASTER.SQL is a script to extract data from master database system tables. This information is used after MASTER.DAT has been rebuilt to recreate login id's, and so on. Type the following as a file MASTER.SQL: use master go select sd.dbid, dbname = convert(char(10), sd.name), su.segmap, su.lstart, su.size, su.vstartfrom sysusages su, sysdatabases sd where su.dbid = sd.dbid go select low, high, status, devname = convert(char(13), name),
physname = convert(char(23), phyname)
from sysdevices
go
select name, dbid, suid, mode, status, version from sysdatabases go select suid, name, password from syslogins go select * from sysremotelogins go select srvid, srvstatus, srvrname = convert(char(16), srvname), netname = convert(char(16), srvnetname)from sysservers go select value, parameter = convert(char(60), comment) from sysconfigures go
Chart of Sort Orders
ID Character Set Sort Order
30 Code Page 437 Binary
31 Code Page 437 Dictionary with Case Insensitivity
32 Code Page 437 Case Insensitivity
33 Code Page 437 Dictionary with Case Insensitivity
and Uppercase Preference
34 Code Page 437 Dictionary with Case Insensitivity
and Accent Insensitivity
40 Code Page 850 Binary
41 Code Page 850 Dictionary with Case Insensitivity
42 Code Page 850 Case Insensitivity
43 Code Page 850 Dictionary with Case Insensitivity
and Uppercase Preference
44 Code Page 850 Dictionary with Case Insensitivity
and Accent Insensitivity
49 Code Page 850 Strict Compatibility with 1.1X Case
Insensitive Servers
50 ISO 8859-1 Binary
51 ISO 8859-1 Dictionary with Case Insensitivity
52 ISO 8859-1 Case Insensitivity
53 ISO 8859-1 Dictionary with Case Insensitivity
and Uppercase Preference
54 ISO 8859-1 Dictionary with Case Insensitivity
and Accent Insensitivity
55 Code Page 850 Alternate Dictionary with Case
Sensitivity
56 Code Page 850 Alternate Dictionary with Case
Insensitivity; Uppercase
Preference
57 Code Page 850 Alternate Dictionary with Case
Insensitivity: Accent Insensitivity
61 Code Page 850 Alternate Dictionary with Case
Insensitivity
|
Additional query words: 4.20 Transact-SQL
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |