当我将mdf文件附加到SQL Server时,我收到错误数据库无法升级,因为它是只读的,或者它只读文件。 确保数据库或文件是可写的。
您附加的数据库是以前的SQL版本。 它必须升级,并且不能升级,因为该文件是只读的。
在分离之前版本的数据库之前。 将任何只读文件组更改为可读写。 Microsoft还build议您在禁用的情况下启用自动增长function。
在新版本中连接数据库后,可以将文件组更改为只读并禁用自动增长。
尝试将sql server 2000数据库附加到sql server 2008 r2服务器时遇到此问题。 检查了没有被标记为只读的。 冉pipe理工作室为pipe理员,问题解决了。
我的故事的寓意是“尝试以pipe理员身份运行pipe理工作室”。
除了检查文件上的任何读写标志之外,还要确保文件和文件夹上的安全ACL允许SQL Server服务用于访问文件的login名。 如果您不确定acl应该是什么样子,请为您的实例findmaster.mdf文件,查看该文件的ACL /权限,然后为特定的mdf文件匹配权限。
另外,你不要提到ldf。 如果您希望服务器自动创buildldf文件,请确定它将在哪里创build,并确保sql server可以在该位置写入文件。 通过附加mdf和ldf文件来创build数据库会更好,而不要依靠SQL Server来创build缺less的LDF。 LDF中可能会有更新,但没有更新到您的MDF文件。
谢谢,Telarian
尝试将sql server 2000数据库附加到sql server 2008 r2服务器时遇到此问题。 检查了没有被标记为只读的。 冉pipe理工作室为pipe理员,问题解决了。
我的故事的寓意是“尝试以pipe理员身份运行pipe理工作室”。
=>以pipe理员身份运行SSMS,并将数据库所有者权限授予尝试附加数据库的用户解决了我的问题。