sql2008无日志文件附加数据库失败,无法打开数据库 'xxx' 版本 611。请将该数据库升级为最新

时间:2021-05-28 21:55:59
 sql2008无日志文件附加数据库失败,无法打开数据库 'xxx' 版本 611。请将该数据库升级为最新。

我是将sql2005附加到sql2008 提示这个错误。

为什么低版本附加到高版本出现这与的错误????

13 个解决方案

#1


dbcc checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS)
到这里时候出现这个提示!

#2


引用楼主 wfyeshi 的回复:
sql2008无日志文件附加数据库失败,无法打开数据库 'xxx' 版本 611。请将该数据库升级为最新。

我是将sql2005附加到sql2008 提示这个错误。

为什么低版本附加到高版本出现这与的错误????

1。低版本不能附加高版本的文件。
2。高版本附加低版本,需要设置兼容级别。
参考如下:
用sql 2005恢复sql 2000的备份文件

将sql server 2005的兼容级别设置为80,然后再恢复sql server 2000的备份文件. 

更改方式如下: 
Microsoft SQL Server Management Studio->ServerName->Database->database name ,right manu->properties->options->Campatiblity level->downframe list,select: sql sever 2000 (80)-> Click buton ok 

恢复完毕后,再改为90.

#3


高版本附加低版本,需要设置兼容级别。

#4


好的 我试试 谢谢先

#5


解决办法:

1、新建一个同名数据库。

2、停止数据库服务,覆盖新建的数据库主文件(小技巧:最好放在同一个磁盘里面,把新建的数据库主文件删掉或移开,再把要恢复的数据库主文件剪切过去,这样就可以节省时间。)

3、启动数据库服务,数据库变为置疑或可疑状态。然后在查询分析器中运行:

alter database 无日志文件的数据库名称 set emergency

设置为紧急状态。

4、再运行:

alter database 无日志文件的数据库名称 set single_user

或者:

Sp_dboption '无日志文件的数据库名称', 'single user', 'true'

设置为单用户模式。

5、检查并重建日志文件,运行:

dbcc checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS)

这个时间比较长。耐心等待!如果有错误提示,再运行:

dbcc checkdb('无日志文件的数据库名称',REPAIR_REBUILD)

进行修复。如果没有错误,可以跳过。

6、恢复成多用户模式

alter database 无日志文件的数据库名称 set multi_user

或者:

Sp_dboption '无日志文件的数据库名称', 'single user', 'false'

刷新数据库,你就可以看到已经修复好的数据库了。

-------------------------------------------------------------------------------------
我是按照上面这个方法进行恢复,但是在那里设置兼容性呢,创建时设置了,替换后无法设置属性。

#6


或者说在上面的操作步骤中,哪里设置兼容性呢?

#7


对于所有 SQL Server 2008 安装,默认的兼容级别都为 100。除非 model 数据库有更低的兼容级别,否则 SQL Server 2008 中创建的数据库会设置为该级别。将数据库从 SQL Server 的任何早期版本升级到 SQL Server 2008 时,如果数据库的兼容级别不在 80 以下,则该数据库将保留其现有的兼容级别。升级兼容级别低于 80 的数据库会将数据库的兼容级别设置为 80。这既适用于系统数据库,也适用于用户数据库。使用 ALTER DATABASE 可更改数据库的兼容级别。若要查看数据库的当前兼容级别,请查询 sys.databases 目录视图中的 compatibility_level 列。 

#8



ALTER DATABASE database_name 
SET COMPATIBILITY_LEVEL = { 80 | 90 | 100 }



http://msdn.microsoft.com/en-us/bb510680(zh-cn).aspx

#9


...

#10


登录SSMS,按F8打开资源对象管理器,选择数据库再右键属性,最后一栏相应的选项中修改兼容级别。

#11


提醒:您的库升迁方式是错误的。

#12



exec sp_dbcmptlevel test_db, 100

#13


消息 946,级别 14,状态 1,第 1 行
无法打开数据库 'DTMS' 版本 539。请将该数据库升级为最新版本。

我在执行第五步的时候出现上面的错误啊

#1


dbcc checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS)
到这里时候出现这个提示!

#2


引用楼主 wfyeshi 的回复:
sql2008无日志文件附加数据库失败,无法打开数据库 'xxx' 版本 611。请将该数据库升级为最新。

我是将sql2005附加到sql2008 提示这个错误。

为什么低版本附加到高版本出现这与的错误????

1。低版本不能附加高版本的文件。
2。高版本附加低版本,需要设置兼容级别。
参考如下:
用sql 2005恢复sql 2000的备份文件

将sql server 2005的兼容级别设置为80,然后再恢复sql server 2000的备份文件. 

更改方式如下: 
Microsoft SQL Server Management Studio->ServerName->Database->database name ,right manu->properties->options->Campatiblity level->downframe list,select: sql sever 2000 (80)-> Click buton ok 

恢复完毕后,再改为90.

#3


高版本附加低版本,需要设置兼容级别。

#4


好的 我试试 谢谢先

#5


解决办法:

1、新建一个同名数据库。

2、停止数据库服务,覆盖新建的数据库主文件(小技巧:最好放在同一个磁盘里面,把新建的数据库主文件删掉或移开,再把要恢复的数据库主文件剪切过去,这样就可以节省时间。)

3、启动数据库服务,数据库变为置疑或可疑状态。然后在查询分析器中运行:

alter database 无日志文件的数据库名称 set emergency

设置为紧急状态。

4、再运行:

alter database 无日志文件的数据库名称 set single_user

或者:

Sp_dboption '无日志文件的数据库名称', 'single user', 'true'

设置为单用户模式。

5、检查并重建日志文件,运行:

dbcc checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS)

这个时间比较长。耐心等待!如果有错误提示,再运行:

dbcc checkdb('无日志文件的数据库名称',REPAIR_REBUILD)

进行修复。如果没有错误,可以跳过。

6、恢复成多用户模式

alter database 无日志文件的数据库名称 set multi_user

或者:

Sp_dboption '无日志文件的数据库名称', 'single user', 'false'

刷新数据库,你就可以看到已经修复好的数据库了。

-------------------------------------------------------------------------------------
我是按照上面这个方法进行恢复,但是在那里设置兼容性呢,创建时设置了,替换后无法设置属性。

#6


或者说在上面的操作步骤中,哪里设置兼容性呢?

#7


对于所有 SQL Server 2008 安装,默认的兼容级别都为 100。除非 model 数据库有更低的兼容级别,否则 SQL Server 2008 中创建的数据库会设置为该级别。将数据库从 SQL Server 的任何早期版本升级到 SQL Server 2008 时,如果数据库的兼容级别不在 80 以下,则该数据库将保留其现有的兼容级别。升级兼容级别低于 80 的数据库会将数据库的兼容级别设置为 80。这既适用于系统数据库,也适用于用户数据库。使用 ALTER DATABASE 可更改数据库的兼容级别。若要查看数据库的当前兼容级别,请查询 sys.databases 目录视图中的 compatibility_level 列。 

#8



ALTER DATABASE database_name 
SET COMPATIBILITY_LEVEL = { 80 | 90 | 100 }



http://msdn.microsoft.com/en-us/bb510680(zh-cn).aspx

#9


...

#10


登录SSMS,按F8打开资源对象管理器,选择数据库再右键属性,最后一栏相应的选项中修改兼容级别。

#11


提醒:您的库升迁方式是错误的。

#12



exec sp_dbcmptlevel test_db, 100

#13


消息 946,级别 14,状态 1,第 1 行
无法打开数据库 'DTMS' 版本 539。请将该数据库升级为最新版本。

我在执行第五步的时候出现上面的错误啊