繁体   English   中英

SQL Server数据库有限制大小吗?

[英]Is there a limit size for a SQL Server database?

我将用C#开发一个系统,在该系统中必须扫描和存储文档,并且我期望dB的大小将达到3-4 TB。

我的问题是可以将它们存储在数据库中还是数据库有限制,还是必须将它们存储在文件夹中?

提前致谢

是的,有一个限制,这取决于您使用的SQL Server版本。 如果您使用Express:

https://www.gfi.com/support/products/what-are-the-size-limitations-for-sql-express-databases

Microsoft SQL Server 2005 Express edition has a database size limit to 4GB
Microsoft SQL Server 2008 Express edition has a database size limit to 4GB
Microsoft SQL Server 2008 R2 Express edition has a database size limit to 10GB
Microsoft SQL Server 2012 Express edition has a database size limit to 10GB
Microsoft SQL Server 2014 Express edition has a database size limit to 10GB
Microsoft SQL Server 2016 Express edition has a database size limit to 10GB

但是其他版本的上限更高:

https://blog.sqlauthority.com/2013/07/21/sql-server-what-is-the-maximum-relational-database-size-supported-by-single-instance/

从上面的链接:

SQL Server 2008R2、2012和2014 Enterprise,BI和Standard版的最大容量为524 PB(PB)。 由于其性质,SQL Server Express的限制为10 GB。

因此,如果您不使用Express,则几乎没有实际限制。

您可能会考虑将这些文件简单地存储在某个地方,并简单地使用SQL来指向它们的存储位置以及有关该文件的一些元数据。 将这些巨大的文件导入SQL确实不会给您带来太多好处,并且使数据库管理变得更加困难(备份,性能等)。正如TomTom和dlatikay指出的,利用FILESTREAM可能是另一种选择。

每个发言者都没有大小限制,但是性能可能是一个实际问题。 但是,我要说的是不要将扫描的文档本身作为Blob存储在SQL Server数据库中,而是将指针(如文件位置或S3存储桶位置)与文档一起存储。 这通常是一种性能更高的解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM