Sql Server查询磁盘空间

 MS Sql Server中可以能过以下的方法查询出磁盘空间的使用情况及各数据库数据文件及日志文件的大小及使用利用率:

1
、查询各个磁盘分区的剩余空间:
        Exec master.dbo.xp_fixeddrives   

2
、查询数据库的数据文件及日志文件的相关信息(包括文件组、当前文件大小、文件最大值、文件增长设置、文件逻辑名、文件路径等)   
     select * from [
数据库名].[dbo].[sysfiles]
     
转换文件大小单位为MB
    select name, convert(float,size) * (8192.0/1024.0)/1024. from [
数据库名].dbo.sysfiles

3
、查询当前数据库的磁盘使用情况:
    Exec sp_spaceused

4、查询数据库服务器各数据库日志文件的大小及利用率
    DBCC SQLPERF(LOGSPACE)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
如果您需要将 SQL Server 中的部分表迁移到另一个磁盘空间,可以按照以下步骤进行操作: 1. 创建一个新的文件组和文件,用于存储要迁移的表。可以使用以下命令创建: ``` ALTER DATABASE YourDatabaseName ADD FILEGROUP NewFileGroupName; ALTER DATABASE YourDatabaseName ADD FILE (NAME = NewFileGroupFileName, FILENAME = 'NewFileGroupFilePath') TO FILEGROUP NewFileGroupName; ``` 2. 将要迁移的表移动到新的文件组中。可以使用以下命令移动表: ``` ALTER TABLE YourTableName SET (FILEGROUP = NewFileGroupName); ``` 3. 重新建立表的索引。可以使用以下命令重新建立索引: ``` ALTER INDEX ALL ON YourTableName REBUILD WITH (FILLFACTOR = 90); ``` 4. 如果您的表中包含大量数据,可以考虑使用分区表进行迁移。可以使用以下命令创建分区表: ``` CREATE PARTITION FUNCTION YourPartitionFunctionName (YourPartitionColumn) AS RANGE RIGHT FOR VALUES (YourPartitionValues); CREATE PARTITION SCHEME YourPartitionSchemeName AS PARTITION YourPartitionFunctionName TO (YourFileGroup1Name, YourFileGroup2Name, ...); CREATE TABLE YourPartitionedTableName ( YourTableColumns ) ON YourPartitionSchemeName (YourPartitionColumn); ``` 然后,您可以使用 ALTER PARTITION 命令将分区移动到新的文件组中,以及重新建立索引。 以上是一些基本的操作步骤,具体的实现方式可以根据您的具体情况进行调整。请注意,在进行任何操作之前,请务必备份您的数据库以及相关的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值