SqlServer查询文件组被占用情况
在SqlServer中,删除一个文件组
alter database [xxxxx] remove filegroup FGMonthTurnIntroduceByMonth13
有时候会遇到如下报错:
消息 5042,级别 16,状态 12,第 8 行
无法删除 文件组'FGMonthTurnIntroduceByMonth13',因为它不为空。
文件组被占用,常见的是里面有文件没删除、有分区方案使用了这个文件组,还有比如索引或LOB数据落到了这个文件组中。
查询数据库的文件和文件组可以分别使用sys.database_files和sys.filegroups两个系统视图。查询一个文件组下是否有文件:
select * from sys.database_files where data_space_id =(select data_space_id from sys.filegroups where name = 'FGMonthTurnIntroduceByMonth13')
查询出来的结果,就是文件组FGMonthTurnIntroduceByMonth13下的文件。或者更简单的,使用sp_helpfilegroup系统存储过程。
sp_helpfilegroup 'FGMonthTurnIntroduceByMonth13'

第一个查询结果是文件组名称、id、文件个数。第二个查询结果是里面文件详细信息。
如果文件组下没有文件,仍然提示这个文件组不为空的错误,还有可能是分区方案使用到了这个文件组,使用如下语句查询与该文件组关联的分区方案:
select s.name,g.* from sys.filegroups g
left join sys.destination_data_spaces d on g.data_space_id=d.data_space_id
left join sys.partition_schemes s on s.data_space_id=d.partition_scheme_id
where g.name='FGMonthTurnIntroduceByMonth13'

如果第一列是NULL,表示没有对应的分区方案。
SqlServer查询文件组被占用情况的更多相关文章
- SQLSERVER将一个文件组的数据移动到另一个文件组
SQLSERVER将一个文件组的数据移动到另一个文件组 有经验的大侠可以直接忽视这篇文章~ 这个问题有经验的人都知道怎麽做,因为我们公司的数据量不大没有这个需求,也不知道怎麽做实验 今天求助了QQ群里 ...
- 查询liunx上磁盘占用情况
查询挂载盘磁盘情况 df -h 查询指定目录下的文件夹内存占用情况 du -hs /*
- sqlserver多文件组数据库的备份和还原实战
数据库文件过大时就要进行数据分区,就是讲数据库拆分到多个文件组中.已方便数据文件管理,提高数据库的读取效能,多文件组如何进行数据库的备份和还原呢,今天主要做多文件组数据库的备份和还原实验. 第一步 创 ...
- DOS命令_查询某个端口的占用情况并释放
>netstat -aon | findstr “80″Proto Local Address Foreign Address State ...
- Sqlserver查询每组数据中最大的一条数据
select * from ( SELECT ROW_NUMBER() over (PARTITION By name order by val) as rowId,tb_test.* FROM tb ...
- SQLSERVER将数据移到另一个文件组之后清空文件组并删除文件组
SQLSERVER将数据移到另一个文件组之后清空文件组并删除文件组 之前写过一篇文章:SQLSERVER将一个文件组的数据移动到另一个文件组 每个物理文件(数据文件)对应一个文件组的情况(一对一) 如 ...
- sql server迁移数据(文件组之间的互相迁移与 文件组内文件的互相迁移)
转自:https://www.cnblogs.com/lyhabc/p/3504380.html?utm_source=tuicool SQLSERVER将数据移到另一个文件组之后清空文件组并删除文件 ...
- SQL Server 2008文件与文件组的关系
此文章主要向大家讲述的是SQL Server 2008文件与文件组,其中包括文件和文件组的含义与关系,文件.文件组在实践应用中经常出现的问题,查询文件组和文件语句与MSDN官方解释等相关内容的介绍. ...
- SQL Server 大数据搬迁之文件组备份还原实战
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 解决方案(Solution) 搬迁步骤(Procedure) 搬迁脚本(SQL Codes) ...
随机推荐
- 2. DVWA亲测CSRF漏洞
DVWA登陆 用户名:admin 密码:password Low级: 查看源代码: <?php if (isset($_GET['Change'])) { // Turn requ ...
- 安装MySQL出现1045错误,卸载不干净
安装MySQL出现1045错误 一.运行环境 MySQL mysql-5.1.26-rc-win32 操作系统:Windows 7 X64 二.问题描述 安装MySQL过程中会涉及对root密码的设置 ...
- Software - 创建程序打包项目
通常的步骤 准备一个 Visual Studio Installer 的项目模板 利用该模板,在解决方案中新建一个 Visual Studio Installer 项目 设置项目属性,配置文件系统 生 ...
- java线程基础知识----java daemon线程
java线程是一个运用很广泛的重点知识,我们很有必要了解java的daemon线程. 1.首先我们必须清楚的认识到java的线程分为两类: 用户线程和daemon线程 A. 用户线程: 用户线程可以简 ...
- Dapper 增删改查
0.数据库及实体类 create table Users ( Id ,) primary key, Name nvarchar() not null, Password nvarchar() not ...
- BKMigration
PAAS 1. 停止服务 ./bkcec stop paas 2. 修改install.config 3. 删除中控机 /data/install/.bk_install.step 和原p ...
- springmvc json 简单例子
1.控制器层: @RequestMapping("/json.do") @ResponseBody //将会把返回值 转换为json对象 public List<User&g ...
- centos6.5下安装python3.6、pip、ipython
一.先更换系统源 为了下载顺畅一般都会更改为国内源. 1 cd /etc/yum.repos.d/ 2 wget http://mirrors.163.com/.help/CentOS6-Base-1 ...
- iOS开发 - CocoaPods远程私有库从0到1
1. 创建主工程 路径:/Users/Funky/Desktop/CocoaPodRemoteLib/MyMainProject/MyMainProject.xcodeproj 2. 在码云(htt ...
- 简单的PHP+Mysql实现分页
<?php /** * PHP+Mysql实现分页 * **/ ?> <html> <head> <meta http-equiv="Content ...