我有一个数据库,它快要填满它所在的硬盘了。我想将数据库扩展到另一个硬盘驱动器来处理这个问题。
我看到 SSMS 下的数据库属性中有一个文件选项,我可以添加它,但我真的不想在不知道接下来会发生什么的情况下添加文件。我是否需要在文件组中添加一个新条目,然后再添加到文件中?PRIMARY 类型是否只应该用于第一个文件?如果不是,那么制作一个主要和另一个次要之间有什么区别?一旦我添加了一个文件,数据库引擎会自动决定将数据放在哪里,还是我必须进入我的表并以某种方式指定它?
抱歉,如果这是重复的。如果不是,我会感到惊讶,但我找不到另一个有这些答案的问题。
您可以在此处执行以下两项操作之一:
不,PRIMARY 文件组可以包含多个数据文件。
在文件组内,SQL Server 将通过比例填充算法管理数据文件中的数据分散。因此,您无需手动管理数据在文件组中的位置。但是,如果您创建一个包含一个或多个数据文件的附加文件组,并且您希望数据存在于该文件组中,那么您需要明确声明(除非您将新文件组设置为默认文件组)。
例如:
要找出您当前的默认文件组是什么:
要更改默认文件组:
除了 Thomas 的回答之外,您还可以简单地使用 T-SQL 来完成。此示例代码将一个新文件添加到主文件组。在您的情况下,我真的认为不需要新的文件组。但请参阅 Thomas 对此的评论。
确保更改数据库名称、数据文件名和路径,以及非常重要的文件大小和增加步骤以适应您的环境。
改变的地方: