SQLServer 统计数据量
2016-01-25 11:19
351 查看
做一个项目,第一件事情就是问:“这个数据库多大?”
下面是统计数据库数据量大小的方法
通常我们会使用命令: "sp_helpdb @dbname"
例如,查询数据库"testdb3"的使用量
"sp_helpdb"是最常用的命令,
但是注意:该命令显示的数据库大小"db_size"并不是指现存有效数据的大小,而是指:数据库物理文件 “数据文件大小 + 日志文件大小”的总和
例如上例中,数据库"testdb3"对应的数据文件和日志文件:
218.112 + 916.352 = 1107.88MB
数据库创始之初,数据文件和日志文件的初始大小都是默认的2M或3M
当插入数据后,数据文件和日志文件的大小会随着数据量的增长而增长
但是当删除数据的时候,会发生什么情况呢?
数据文件、日志文件会变小么?不会的,还是保持原来的大小
怎样获取有效数据的大小?
答案是使用"sp_spaceused"存储过程分别统计每张表的数据量
1) 统计单个表的使用空间
2) 统计每个表的使用空间
下面是统计数据库数据量大小的方法
通常我们会使用命令: "sp_helpdb @dbname"
例如,查询数据库"testdb3"的使用量
exec sp_helpdb testdb3
"sp_helpdb"是最常用的命令,
但是注意:该命令显示的数据库大小"db_size"并不是指现存有效数据的大小,而是指:数据库物理文件 “数据文件大小 + 日志文件大小”的总和
例如上例中,数据库"testdb3"对应的数据文件和日志文件:
218.112 + 916.352 = 1107.88MB
数据库创始之初,数据文件和日志文件的初始大小都是默认的2M或3M
当插入数据后,数据文件和日志文件的大小会随着数据量的增长而增长
但是当删除数据的时候,会发生什么情况呢?
数据文件、日志文件会变小么?不会的,还是保持原来的大小
怎样获取有效数据的大小?
答案是使用"sp_spaceused"存储过程分别统计每张表的数据量
1) 统计单个表的使用空间
exec sp_spaceused 'dbo.t1'
2) 统计每个表的使用空间
exec sp_MSforeachtable "exec sp_spaceused '?'"
相关文章推荐
- PostgreSQL学习手册(事物隔离)
- ORACLE执行定时任务
- win7_oracle11g_64位连接32位PLSQL,ORA-12154: TNS:could not resolve the connect identifier specified解决办法
- 关于SQLite索引对写入性能影响的测试
- MySQL 修改字段类型或长度
- SQL Server中的窗口计算
- 通过sqlserver 2008 r2传输cmd命令
- 58同城数据库架构最佳实践
- 如何开启mysql计划事件
- 部署Postfix+MySQL+Dovecot+Postfixadmin+Extmail邮件系统(三)
- Oracle迁移MySQL笔记
- mysql 5.7.10 下互为主备配置
- 部署Postfix+MySQL+Dovecot+Postfixadmin+Extmail邮件系统(二)
- 数据库性能优化之SQL语句优化
- 部署Postfix+MySQL+Dovecot+Postfixadmin+Extmail邮件系统(一)
- [Windows Server 2012] SQL Server 备份和还原方法
- SQL Server 数据库性能优化
- Memcached为数据库的查询数据缓存
- 使用参数innodb_file_per_table支持MySQL InnoDB表数据共享空间自动收缩
- 数据库存更新(update 语句)用法(转)