小编Mic*_*eck的帖子

SQL Server 大容量插入物理内存问题

我有一个脚本,它按顺序对 SQL Server 数据库执行 15 个批量插入操作,所有操作都基于以下内容:

BULK INSERT M_USERS
    FROM '\\spath\users.txt'
    WITH ( 
        BATCHSIZE = 1000, 
        FIELDTERMINATOR = '|', 
        ROWTERMINATOR = '\n', 
        FIRSTROW = 2,
        ERRORFILE='\\spath\users.err'
    )
GO
Run Code Online (Sandbox Code Playgroud)

15 个文本文件的大小各不相同。有些有不到 5000 行,而最大的有超过 5,000,000 行。我在具有 12 GB 内存和 24 GB 页面文件的服务器上运行该脚本。启动后,我注意到该服务器上的物理内存使用量稳步增加,直到接近 100%。即使脚本完成(或由于内存不足而失败),内存使用量也不会下降。似乎 Sql Server 永远不会释放它用于执行批量插入的内存资源。

有谁知道我是否可以通过修改我的脚本来解决这个问题,或者这是 SQL Server 的问题吗?

编辑:最终我收到错误消息“资源池‘内部’中的系统内存不足,无法运行此查询。” 之后一切都失败了。

memory sql-server

3
推荐指数
1
解决办法
3419
查看次数

标签 统计

memory ×1

sql-server ×1