There is insufficient system memory to run this query 错误

简介:

服务器环境大致情况如下

操作系统:   Microsoft Windows Server 2003 R2 Enterprise Edition Service Pack 2

数据库  :   Microsoft SQL Server 2005 - 9.00.5000.00 (Intel X86) 。

机器物理内存8G,开启了“使用AWE分配内存选项(U)"

clipboard

在这台服务器上,创建YourSQLDba后,配置过程中创建函数的时候,报如下错误,重试了几次都是如此,但是其它应用从来没有出过这个错误,而且这是一台生产服务器,很多应用在跑,所以这才是让我纳闷的地方:

消息 701,级别 17,状态 13,过程 clr_GetFolderList,第 1 行

There is insufficient system memory to run this query.

消息 701,级别 17,状态 13,过程 clr_GetFolderListDetailed,第 1 行

There is insufficient system memory to run this query.

clipboard[4]

其实这两个函数也没特别之处,而且在其它64数据库上,也没有碰到过类似的错误。

CREATE FUNCTION yUtl.clr_GetFolderList (@FolderPath nvarchar(4000), @SearchPattern nvarchar(4000))

RETURNS TABLE ([FileName] nvarchar(255))

AS EXTERNAL NAME [YourSqlDba_ClrFileOp].[Clr_FileOperations.FileOpCs].[Clr_GetFolderList];

GO

CREATE FUNCTION yUtl.clr_GetFolderListDetailed (@FolderPath nvarchar(4000), @SearchPattern nvarchar(4000))

RETURNS TABLE ([FileName] nvarchar(255), [FileExtension] nvarchar(255), [Size] bigint, [ModifiedDate] datetime, [CreatedDate] datetime)

AS EXTERNAL NAME [YourSqlDba_ClrFileOp].[Clr_FileOperations.FileOpCs].[Clr_GetFolderListDetailed];

GO

网上搜索了一下,发现蛮多人也遇到个这个错误:http://social.msdn.microsoft.com/Forums/sqlserver/en-US/81cd3698-10b2-4a67-ad92-fa123cef2caa/there-is-insufficient-system-memory-to-run-this-query-error-when-running-checkdb,但是也没有一个定论。

于是也按那些人讨论的,检查服务器环境:物理内存,数据库版本,AWE是否开启,最大服务器内存,clr enabled 配置等等

sp_configure 'clr enabled'

name                                minimum     maximum     config_value run_value

----------------------------------- ----------- ----------- ------------ -----------

clr enabled                         0           1           1            1

但是,折腾了很长时间,也没搞清真正的出错原因,没办法,只能祭出大杀器”重启SQL SERVER服务",然后重新创建YourSQLDba数据库,创建相关存储过程、函数等。暂时记录一下这个问题,等有空闲或下次遇到时候,再想想办法解决它。

相关文章
|
26天前
|
编译器 C语言
成功解决“Run-Time Check Failure #2 - Stack around the variable ‘arr‘ was corrupted.“问题
成功解决“Run-Time Check Failure #2 - Stack around the variable ‘arr‘ was corrupted.“问题
45 1
Error running Application. Command line is too long.
【2月更文挑战第2天】Error running Application. Command line is too long. 问题处理
|
8月前
|
Java 开发工具 git
解决Error running XXXApplicationCommand line is too long.报错
解决Error running XXXApplicationCommand line is too long.报错
|
4月前
|
前端开发
Fatal error_ ENOSPC_ System limit for number of file watchers reached, watch '...path...'
Fatal error_ ENOSPC_ System limit for number of file watchers reached, watch '...path...'
成功解决ConvergenceWarning: lbfgs failed to converge (status=1): STOP: TOTAL NO. of ITERATIONS REACHED L
成功解决ConvergenceWarning: lbfgs failed to converge (status=1): STOP: TOTAL NO. of ITERATIONS REACHED L
An example to fix Generic stop set error status in tcode SMQ1
An example to fix Generic stop set error status in tcode SMQ1
112 0
An example to fix Generic stop set error status in tcode SMQ1
Runtime Errors - START_CALL_SICK
Runtime Errors - START_CALL_SICK
225 0