Database 'xxx' cannot be upgraded because it is read-only or has read-only file Make the database or files writeable, and rerun recovery.
2024-10-18 17:25:19
在分离数据库DatabaseName(暂且用DatabaseName代替该数据库名)后,我将其数据文件以及日志文件移动到新增的磁盘上。然后附加该数据库,结果报如下错误:
Database 'DatabaseName' cannot be upgraded because it is read-only or has read-only files. Make the database or files writeable, and rerun recovery.
Could not open new database 'DatabaseName'. CREATE DATABASE is aborted. (Microsoft SQL Server,错误: 3415)
通过VNC连接到该数据库服务器,我检查了该数据库文件以及日志文件是否为只读,但是事实是这些文件都具有读写权限。经过一番细致检查后,才发现了问题的根本原因:
我首先在我机器上用SSMS工具通过域账号A连接到数据库服务器分离了该数据库,这个域账号拥有这个数据库的sysadmin角色,但是并不是该服务器上的系统管理员,然后我通过VNC使用另外一个域账号B移动了数据库的文件,然后又在我机器使用SSMS去附加该数据库,因为使用的是域账号A,并没有操作服务器上文件的权限。结果报如上错误。
于是我在该服务器上使用B账号登陆数据库,附加该数据库,成功解决。后面我测试了一下,在该服务器上添加域账号A,赋予其操作数据库文件的权限,结果就不会出现上述错误。
最新文章
- 我为NET狂群福利:逆天常用的一些谷歌浏览器插件
- Scrum 项目1.0
- 使用ResourceBundle访问资源文件(properties)帮助类
- Mac Maven java_home错误
- Standford CoreNLP--Sentiment Analysis初探
- NHibernate 存储过程使用
- Java多线程--让主线程等待所有子线程执行完毕
- Python解析PDF三法
- HTML基础上
- Filecoin:募资详情和Token分发详情
- 【原】用Java编写第一个区块链(二)
- Oracle之 dmp导入/导出、数据库操作等过程中的字符集问题
- [UE4]UMG编辑器:中心点对齐
- easyui的dialog
- Groovy 学习手册(4)
- Hibernate(十二)Criteria查询
- command not found: django-admin.py
- [简谈]绕过HR破门而入的求职智慧
- Ubuntu下添加新分区并设置挂载点
- centos6.5 源码编译 mysql5.6.21
热门文章
- 重温JSP学习笔记--JSTL标签库
- jQuery-1.9.1源码分析系列(十) 事件系统——事件体系结构
- SQL Server 2016 SP1 标准版等同企业版?!
- [AngularJS] AngularJS系列(5) 中级篇之动画
- 彻底解决“从客户端中检测到有潜在危险的Request.Form值”
- 【Java每日一题】20161222
- 高性能 TCP &; UDP 通信框架 HP-Socket v3.2.2 正式发布
- MySQL 5.7:非结构化数据存储的新选择
- C# out ref 重载
- JS高程3.基本概念(5)语句