StackOverflow 导入错误:LOB 超出 2,147,483,647 字节?
下载2009 年 9 月 StackOverflow 数据转储并运行 Brent 的 < a href="http://www.brentozar.com/archive/2009/06/how-to-import-the-stackoverflow-xml-into-sql-server/" rel="nofollow noreferrer">导入查询,我收到以下消息:
Msg 7119, Level 16, State 1, Procedure sp_xml_preparedocument, Line 1
Attempting to grow LOB beyond maximum allowed size of 2,147,483,647 bytes.
Msg 8179, Level 16, State 5, Procedure usp_ETL_Load_Posts, Line 59
Could not find prepared statement with handle 0.
The statement has been terminated.
Msg 7102, Level 20, State 99, Procedure usp_ETL_Load_Posts, Line 121
Internal Error: Text manager cannot continue with current statement.
Run DBCC CHECKTABLE.
布伦特的查询基于 7 月的数据,我怀疑这是 9 月数据库更大的结果。
除了获取旧数据之外,有人知道如何解决此问题或以其他方式导入数据吗?
更新:我正在运行“版本:Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) 2005 年 10 月 14 日 00:33:37 版权所有 (c) 1988-2005 Microsoft Corporation Developer Edition on Windows NT 5.1(内部版本 2600:Service Pack 3)”
After downloading the September 2009 StackOverflow data-dump and running Brent's import query, I'm getting the following message:
Msg 7119, Level 16, State 1, Procedure sp_xml_preparedocument, Line 1
Attempting to grow LOB beyond maximum allowed size of 2,147,483,647 bytes.
Msg 8179, Level 16, State 5, Procedure usp_ETL_Load_Posts, Line 59
Could not find prepared statement with handle 0.
The statement has been terminated.
Msg 7102, Level 20, State 99, Procedure usp_ETL_Load_Posts, Line 121
Internal Error: Text manager cannot continue with current statement.
Run DBCC CHECKTABLE.
Brent's queries were based on July's data and I suspect this is a result of the September database that much bigger.
Aside from getting the older data, anyone know how to fix this or otherwise import the data?
UPDATE: I'm running "Version: Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 3)"
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

发布评论
评论(3)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我通过在 .Net 中编写一个小型控制台应用程序(代码如下)解决了这个问题。它一次导入 1 条记录(甚至没有花时间搞乱 sqlbulkcopy 对象),并在我午休时运行。我忘记将时间戳写入控制台,所以我不知道到底花了多长时间。我的最佳估计是 20 多分钟。请注意,下一个问题是 tempdb:保留默认设置,tempdb 在导入过程中将变得非常大。完成后您需要重新启动 sql server 服务。
I got past the problem by writing a small console app in .Net (code to follow). It imports records 1 at a time (didn't even take the time to mess with sqlbulkcopy object) and ran while I went on lunch break. I forgot to write timestamps to the console, so I don't know exactly how long it took. My best estimate is just over 20 minutes. Be warned that the next issue is tempdb: left with the default settings, tempdb will grow very large during the import. You'll want to restart the sql server service when it's finished.