2013-09-29 08:23:11 fjseryi 阅读数 13979
  • 2020考研专业课《计算机操作系统原理》精讲视频课程

    计算机操作系统是计算机专业必修的专业基础课程,是考研的必考科目。它的特点是概念多、较抽象和涉及面广,所以无论是大学学习还是考研,很多同学都把它当做一块硬骨头,其实只要我们掌握正确的学习方法,操作系统课程还是非常容易理解和掌握的,终在考研时取得到高分。

    67597 人正在学习 去看看 任铄

SQL数据库还原时错误:操作系统返回了错误 '5(拒绝访问)'的解决办法

解决SQL Server 2005 还原数据库错误:System.Data.SqlClient.SqlError: 在对   'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\BusinessDB.mdf' 尝试   'RestoreContainer::ValidateTargetForCreation' 时,操作系统返回了错误 '5(拒绝访问)'

在还源数据库时出现以下错误(详情参见下图):

 

System.Data.SqlClient.SqlError:  在对 'C:\Program Files\Microsoft SQL   Server\MSSQL.1\MSSQL\BusinessDB.mdf' 尝试   'RestoreContainer::ValidateTargetForCreation' 时,操作系统返回了错误 '5(拒绝访问。)'。   (Microsoft.SqlServer.Express.Smo)

原因分析:

没有对"C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\"创建文件的权限(可以把它复制到data),这是SQL2005对文件夹的安全性限制。

解决办法:

修改文件夹到'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\”或其他盘的文件夹下(如E:\mydb)即可。注意:mdf文件和ldf文件的路径都要修改。

 

2019-09-11 14:42:01 BADAO_LIUMANG_QIZHI 阅读数 123
  • 2020考研专业课《计算机操作系统原理》精讲视频课程

    计算机操作系统是计算机专业必修的专业基础课程,是考研的必考科目。它的特点是概念多、较抽象和涉及面广,所以无论是大学学习还是考研,很多同学都把它当做一块硬骨头,其实只要我们掌握正确的学习方法,操作系统课程还是非常容易理解和掌握的,终在考研时取得到高分。

    67597 人正在学习 去看看 任铄

场景

在进行数据库还原时提示:

System.Data.SqlError:在对”“尝试”“时,操作系统返回了错误5(拒绝访问)

 

实现

第一种方案是修改要还原的数据库备份文件的权限。

找到备份文件右击属性--安全--组或用户名--编辑--添加--输入对象名称来选择

输入Everyone,然后编辑Everyone的权限为全部允许。

 

如果还是不行,采取第二种方案

退出SQL Server Management Studio ,然后切换登录验证方式

 

如果还不行,采用第三种方案。

打开SQL Server 的配置管理器

我的电脑-右击-管理-服务和应用程序--SQL Server 服务,选择对应自己的实例名的--右击属性-登录

将登录身份下改为内置账户的Local System

点击确定会重启服务,点击 确定

博客首页:

https://blog.csdn.net/badao_liumang_qizhi

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

2019-01-09 10:55:00 Surbowl 阅读数 2162
  • 2020考研专业课《计算机操作系统原理》精讲视频课程

    计算机操作系统是计算机专业必修的专业基础课程,是考研的必考科目。它的特点是概念多、较抽象和涉及面广,所以无论是大学学习还是考研,很多同学都把它当做一块硬骨头,其实只要我们掌握正确的学习方法,操作系统课程还是非常容易理解和掌握的,终在考研时取得到高分。

    67597 人正在学习 去看看 任铄

操作系统已经向 SQL Server 返回了错误 21 设备未就绪

错误代码

===================================

在文件“X:\Data\Test.mdf”中、偏移量为 0x00000000350000 的位置执行 读取 期间,操作系统已经向 SQL Server 返回了错误 21(设备未就绪。)。SQL Server 错误日志和操作系统错误日志中的其他消息可能会提供更多详细信息。这是一个威胁数据库完整性的严重系统级错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致; 有关详细信息,请参阅 SQL Server 联机丛书。 (.Net SqlClient Data Provider)


有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft SQL Server&EvtSrc=MSSQLServer&EvtID=823&LinkId=20476


服务器名称: XXXXXXX
错误号: 823
严重性: 24
状态: 2
过程: plan_persist_runtime_stats_merged
行号: 2


程序位置:

在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) 在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
在 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
在 System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
在 System.Data.SqlClient.SqlDataReader.get_MetaData()
在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) 在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) 在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) 在 System.Data.SqlClient.SqlCommand.ExecuteReader() 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.QueryStorePropertyHandler.PopulateProperties(INodeInformation source, INameObjectCollection properties) 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NodeContext.PopulateProperties() 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.SetStaticProperties(NodeContext nodeContext) 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.BuildStaticItem(IList1 nodes, INodeInformation source, INavigableItem sourceItem)
在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.Build(IList1 nodes, INodeInformation source, INavigableItem sourceItem, IFilterProvider filter) 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NonContextFilterNavigableItemBuilder.Build(IList1 targetList, INodeInformation source, INavigableItem sourceItem, IFilterProvider filter)
在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItem.RequestChildren(IGetChildrenRequest request)
在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ExplorerHierarchyNode.BuildChildren(WaitHandle quitEvent)

可能的原因

在SQLServer启动过程中,如果存放数据的分区还无法正常加载,例如:使用Bitlocker加密(即使开机自动解锁也会出现延迟)、远程服务器有延迟等,可能会出现该异常。

可尝试的几种解决方法

1、手动重启数据库
2、如果是学习用途,可考虑将数据转移至无加密的分区或系统盘
3、设置 SQL Server 延迟启动

2019-06-10 20:37:43 weixin_42604241 阅读数 1809
  • 2020考研专业课《计算机操作系统原理》精讲视频课程

    计算机操作系统是计算机专业必修的专业基础课程,是考研的必考科目。它的特点是概念多、较抽象和涉及面广,所以无论是大学学习还是考研,很多同学都把它当做一块硬骨头,其实只要我们掌握正确的学习方法,操作系统课程还是非常容易理解和掌握的,终在考研时取得到高分。

    67597 人正在学习 去看看 任铄

SQL Server:偏移量为 0x0000000009c000 的位置执行 读取 期间,操作系统已经向 SQL Server 返回了错误 21的解决方法

问题描述:

严重: Servlet.service() for servlet [dispatcher] in context with path [/obd2] threw exception [Request processing failed; nested exception is org.springframework.jdbc.UncategorizedSQLException: CallableStatementCallback; uncategorized SQLException for SQL [{call
web_user_login(?,?)}]; SQL state [null]; error code [0]; com.microsoft.sqlserver.jdbc.SQLServerException: 在文件 ‘F:\DataBase\BIDemo_AccumulateCoin.mdf’ 中、偏移量为 0x0000000009c000 的位置执行 读取 期间,操作系统已经向 SQL Server 返回了错误 21(设备未就绪。)。SQL Server 错误日志和系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重系统级错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC
CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: com.microsoft.sqlserver.jdbc.SQLServerException: 在文件 ‘F:\DataBase\BIDemo_AccumulateCoin.mdf’ 中、偏移量为 0x0000000009c000 的位置执行 读取 期间,操作系统已经向 SQL Server 返回了错误
21(设备未就绪。)。SQL Server 错误日志和系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重系统级错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。] with root cause
com.microsoft.sqlserver.jdbc.SQLServerException: com.microsoft.sqlserver.jdbc.SQLServerException: 在文件 ‘F:\DataBase\BIDemo_AccumulateCoin.mdf’ 中、偏移量为 0x0000000009c000 的位置执行 读取 期间,操作系统已经向 SQL Server 返回了错误 21(设备未就绪。)。SQL Server 错误日志和系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重系统级错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC
CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。

解决方法:

这是因为数据库没有挂起的原因(由于硬盘等移动而导致的),将SQL Server重新启动即可。
挂起(等待,阻塞)进程在操作系统中可以定义为暂时被淘汰出内存的进程,机器的资源是有限的,在资源不足的情况下,操作系统对在内存中的程序进行合理的安排,其中有的进程被暂时调离出内存,当条件允许的时候,会被操作系统再次调回内存,重新进入等待被执行的状态即就绪态,系统在超过一定的时间没有任何动作。

方法一:通过SQL Server命令行启动方法

操作步骤如下:

  1. 在操作系统的任务栏中单击“开始”菜单,选择“运行”命令,在下拉列表框中输入“cmd”命令,单击“确定”按钮。
  2. 输入如下命令,即可通过SQL Server命令行启动、停止或暂停的服务。
    SQL Server命令行如下:
    启动SQL Server
    NET START MSSQLSERVER
    暂停SQL Server
    NET PAUSE MSSQLSERVER
    重新启动暂停的SQL Server
    NET CONTINUE MSSQLSERVER
    停止SQL Server
    NET STOP MSSQLSERVER
方法二:在控制面板——管理工具——服务,找到SQL Server (XXX)进行重新启动

其中XXX为实例名,默认实例名为“MSSQLSERVER”。
在这里插入图片描述
如还是不行请参考:
SQL server重启管理命令行以及SQL Server启动的几种方法:
https://blog.csdn.net/zoomla188/article/details/78642532/

2014-08-20 10:22:22 alisa525 阅读数 14886
  • 2020考研专业课《计算机操作系统原理》精讲视频课程

    计算机操作系统是计算机专业必修的专业基础课程,是考研的必考科目。它的特点是概念多、较抽象和涉及面广,所以无论是大学学习还是考研,很多同学都把它当做一块硬骨头,其实只要我们掌握正确的学习方法,操作系统课程还是非常容易理解和掌握的,终在考研时取得到高分。

    67597 人正在学习 去看看 任铄

1、用打包软件Setup Factory安装软件时,执行bat文件还原数据库出错

bat文件:

@echo off
rem %1 为路径参数;
rem %2 数据库实例名;
rem %3 用户名;
rem %4 密码;
rem /q 执行查询完毕不退出cmd,/Q执行查询完毕退出cmd,-i:Input_File:要在osql中执行的T-SQL脚本的名称(包括路径)。
echo 正在启动SQL SERVER服务...
net start mssqlserver


echo 正在创建数据库,请稍等...

osql -S %2 -U %3 -P %4 /Q 
"IF Not Exists (SELECT name FROM master.dbo.sysdatabases WHERE name = N'AlarmDB') RESTORE DATABASE AlarmDB FROM DISK ='%1\Data\AlarmDB.bak' WITH MOVE 'AlarmDB' TO '%1\Data\AlarmDB.mdf',MOVE 'AlarmDB_log' TO '%1\Data\AlarmDB.ldf'"

echo 数据库创建结束!

osql -S %2 -U %3 -P %4 -i %1\升级sql语句.sql

echo 数据库更新成功!


pause

其中还原数据库的语句实际如下:

IF Not Exists (SELECT name FROM master.dbo.sysdatabases WHERE name = N'AlarmDB') 
RESTORE DATABASE AlarmDB FROM DISK ='C:\Program Files\My\服务器\Data\AlarmDB.bak' 
WITH MOVE 'AlarmDB' TO 'C:\Program Files\My\服务器\Data\AlarmDB.mdf',
MOVE 'AlarmDB_log' TO 'C:\Program Files\My\服务器\Data\AlarmDB.ldf'


执行时出错:

消息 3634,级别 16,状态 1,第 3 行

在对 'C:\Program Files\My\服务器\Data\AlarmDB.mdf' 尝试 'RestoreContainer::ValidateTargetForCreation' 时,操作系统返回了错误 '5(拒绝访问。)'。
消息 3156,级别 16,状态 5,第 3 行
文件 'AlarmDB' 无法还原为 'C:\Program Files\My\服务器\Data\AlarmDB.mdf'。请使用 WITH MOVE 选项来标识该文件的有效位置。
消息 3634,级别 16,状态 1,第 3 行
在对 'C:\Program Files\My\服务器\Data\AlarmDB.ldf' 尝试 'RestoreContainer::ValidateTargetForCreation' 时,操作系统返回了错误 '5(拒绝访问。)'。
消息 3156,级别 16,状态 5,第 3 行
文件 'AlarmDB_log' 无法还原为 'C:\Program Files\My\服务器\Data\AlarmDB.ldf'。请使用 WITH MOVE 选项来标识该文件的有效位置。
消息 3119,级别 16,状态 1,第 3 行
在计划 RESTORE 语句时发现了问题。以前的消息提供了详细信息。
消息 3013,级别 16,状态 1,第 3 行
RESTORE DATABASE 正在异常终止。


2、原因:安装目录 'C:\Program Files\My\服务器\Data‘的Data文件夹权限不够,是只读的,不能写入。


3、解决办法:

方法一:
更换安装路径,不安装在C:\Program Files\My\服务器\Data\,安装在C:\My\服务器\Data\
打包软件中也可以设置为C:\My\%ProductName%,或者D:\My\%ProductName%


方法二:
更改文件夹权限:(win7系统)


 







4、完成第三步后执行结果如下:

已为数据库 'AlarmDB',文件 'AlarmDB' (位于文件 1 上)处理了 176 页。
已为数据库 'AlarmDB',文件 'AlarmDB_log' (位于文件 1 上)处理了 2 页。
RESTORE DATABASE 成功处理了 178 页,花费 0.036 秒(38.574 MB/秒)。



...

没有更多推荐了,返回首页