BUG: Uninstalling SQL 6.5 After Upgrade to 7.0 May Removes 7.0 Data Files
ID: Q236989
|
The information in this article applies to:
-
Microsoft SQL Server version 7.0
BUG #: 56101 (SQLBUG_70)
SYMPTOMS
Uninstalling SQL Server 6.5 or 6.0, after an upgrade to SQL Server 7.0, may remove some SQL Server 7.0 data files if they are located in the SQL Server 6.5 directory.
After uninstalling SQL Server 6.5 and restarting SQL Server 7.0, you may see errors 5105, 17207, or 17204 in the SQL Server 7.0 errorlog:
FCB::Open failed: Could not open device C:\MSSQL\65data\db1.mdf
for virtual device number (VDN) 1.
kernel udopen: Operating system error 2(The system cannot find
the file specified.) during the creation/opening of physical
device C:\MSSQL\65data\db1.mdf.
File C:\MSSQL\65data\db1.ldf does not exist - unable to activate.
Device activation error. The physical file name
'C:\MSSQL\65data\db1.ldf' may be incorrect.
When trying to access the database, you may encounter error 945:
Database 'db1' cannot be opened because some of the files could not be activated.
CAUSE
The default location for upgraded SQL Server 7.0 user data and log files is the same place the original SQL Server 6.5 device files are located, unless the SQL Server 6.5 devices are in the MSSQL\DATA directory. The Uninstall SQL 6.5 utility deletes all files in the SQL 6.5 installation directory, which may include upgraded SQL 7.0 data files.
Note that SQL Server 6.5 devices placed in the default location (MSSQL\DATA) are not subject to this problem since the location for these files changes to MSSQL7\DATA when they are upgraded. However, if there are SQL Server 6.5 device files in other subdirectories of the MSSQL directory ("C:\MSSQL\65DATA\", for example) the problem may also occur.
WORKAROUND
If you have SQL Server 7.0 data files in the SQL Server 6.5 MSSQL directory, do not select Yes when you receive the prompt "Are you sure you want to remove everything in 'C:\MSSQL' and all of its subdirectories?".
Either of the following two workarounds allows you to remove SQL Server 6.5 without affecting the SQL Server 7.0 data files:
- Upgrade normally. After the upgrade, detach any databases that have files in the SQL Server 6.5 directory and move all SQL Server 7.0 .MDF/.NDF/.LDF files out of the MSSQL directory. Reattach the files from a different location before removing SQL Server 6.5.
- In the Upgrade Wizard, modify the file layout so that the data files are not placed in the SQL 6.5 MSSQL directory. To change the file layout, click Edit in the Database Creation step of the Upgrade Wizard. If this is the workaround you select, refer to the following Microsoft Knowledge Base article prior to running the upgrade:
Q200118 FIX: Adding Database Files During Upgrade May Cause Errors
STATUS
Microsoft has confirmed this to be a problem in SQL Server version 7.0.
MORE INFORMATION
On a computer that has only SQL Server 6.5 installed, you can remove SQL 6.5 by running the SQL Setup from the "Microsoft SQL Server 6.5" program group. After installing SQL Server 7.0 on a computer with SQL Server 6.5 installed, the SQL Server 6.5 setup program is no longer accessible. To uninstall SQL Server 6.5 after installing SQL Server 7.0, you must run "Uninstall SQL Server 6.x" from the "Microsoft SQL Server - Switch" program group.
REFERENCES
For details on attaching and detaching databases, search for "sp_detach_db" and "sp_attach_db" in the SQL Server 7.0 Books Online.
Additional query words:
uninstallation remove
Keywords : SSrvInst kbbug7.00 kbSQLServ700bug
Version : winnt:7.0
Platform : winnt
Issue type : kbbug