- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章SQL SERVER 2008 r2 数据压缩的两种方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
一般情况下不建议压缩数据,如果压缩数据建议先备份 。
第一种方法:通过sql server management studio 。
首先我们要下载能操作 2008的工具 sql server management studio 这个工具在sql server 2008 r2 安装后就会有! 。
一起安装妥当,我们就可以开始选择了看图! 所有的都是单击右键,凡在你需要压缩的表上面,依次选择到数据库就可以了! 。
然后就是这样的画面!点击确定,就可以了! 记住是“收缩”而不是压缩,但是效果都是一样的! 。
第二种:通过存储过程 。
SQL Server 2008中的数据压缩 。
SQL Server 2008中引入了数据压缩的功能,允许在表、索引和分区中执行数据压缩。这样不仅可以大大节省磁盘的占用空间,还允许将更多数据页装入内存中,从而降低磁 盘IO,提升查询的性能。当然,凡事有利有弊,在启用数据压缩后,数据库服务器就需要额外的CPU资源来进行压缩处理。一般说来,数据库服务器的CPU占 用率不会太高,而磁盘IO容易成为瓶颈,所以在大多数情况下对大数据库特别是数据仓库启用该项功能还是利大于弊.
SQL Server 2008的数据压缩分为行压缩和页压缩两种。行压缩主要是通过将固定长度类型存储为可变长度类型来实现,同时还减少了与记录相关联的元数据开销。页压缩在行压缩的基础上又增加了前缀压缩和字典压缩,能获得更大的压缩率。 要 启用数据库压缩只需在建表语句后加入WITH (DATA_COMPRESSION = ROW)或是WITH (DATA_COMPRESSION = PAGE)即可。如需将现有的索引修改为启用压缩,可通过ALTER INDEX index ON Table REBUILD WITH (DATA_C0MPRESSION=ROW)或ALTER INDEX index ON Table REBUILD WITH (DATA_C0MPRESSION=PAGE)实现。 最后提供一段简单的用以判断是否需要压缩数据表的脚本,并自动生成压缩脚本供系统管理员执 行。这里用到未公开的存储过程sp_MSforeachtable。在这段脚本中@precommand参数用于执行command指令执行前的SQL命 令,建立一张临时表用于保存数据表的信息,@command1参数表示需要执行的SQL命令,对每一张表都利用sp_spaceused存储过程获取表的 磁盘占用信息并保存到建立的临时表中,@postcommand参数用于执行command指令后的SQL命令,将之前建立的临时表与系统关联,根据设置 的条件(数据表占用空间大于10G)生成数据表压缩脚本.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
exec
sp_MSforeachtable
@precommand=N
'
create table ##(
id int identity,
name sysname,
rows int,
reserved Nvarchar(50),
data varchar(50),
indexdata varchar(50),
unused varchar(50))'
,
@command1=N
'insert into ##(name,rows,reserved,data,indexdata,unused) exec sp_spaceused '
'?'
'
update ## set data=SUBSTRING(data, 1, LEN(data) - 2) where id=scope_identity() AND LEN(data) >=2'
,
@postcommand=N
'SELECT '
'ALTER TABLE '
' + TABLENAME + '
' REBUILD WITH ( DATA_COMPRESSION = PAGE )'
' FROM sys.tables A
JOIN
(SELECT C.name + '
'.'
' + A.name AS TABLENAME, object_id FROM ## A
JOIN sys.objects B
ON A.name = B.name
JOIN sys.schemas C
ON B.schema_id = C.schema_id
WHERE CAST(data AS int) > 10000000 AND object_id IN (SELECT object_id FROM sys.tables)) B
ON A.object_id = B.object_id AND type = '
'U'
';drop table ##'
|
下面是一些比较好的补充:
sql2008r2如何进行日志文件压缩?
为何日志文件会过大?
最常见的问题是数据库为FULL Recovery Model但是从没有做过LOG BACKUP。因为只有Log Backup才可以Truncate Log导致之前的日志文件重用,所以先看一下这个.
如果是上面的问题,你不需要备份将数据库恢复模式修改为Simple,然后Shrink Log File就解决了.
Good Luck.
SQL Server 2008如何压缩日志(log)文件?
在SQL Server 2000/2005中可以快速压缩日志log文件,通过SQL.
方法一:
--BigData为数据库名 DUMP TRANSACTION BigData WITH NO_LOG BACKUP LOG BigData WITH NO_LOG DBCC SHRINKDATABASE(BigData )执行以上语句可以快速压缩日志文件到1M.
但是以上语句中前两行在SQL Server 2008下无法执行 , 。
第一行提示“Incorrect syntax near the keyword 'TRANSACTION'.” 。
第二行提示“One or more of the options (no_log) are not supported for this statement. Review the documentation for supported options. ” 。
第三行可以执行。但日志log文件没有任何变化.
原来SQL Server 2008 已经不再支持 DUMP TRANSACTION和BACKUP LOG WITH NO_LOG,详情请看 。
http://msdn.microsoft.com/zh-cn/library/ms187315%28SQL.90%29.aspx http://msdn.microsoft.com/zh-cn/library/ms186865.aspx 。
sql Server 2005说明中明确:包含 DUMP 语句是为了向后兼容。而 后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 使用 BACKUP.
SQL Server 2008说明:BACKUP LOG WITH NO_LOG 和 WITH TRUNCATE_ONLY 选项已废止。使用完整恢复模式或大容量日志恢复模式时,如果必须删除数据库中的日志备份链,请切换至简单恢复模式。有关详细信息,请参阅有关从完整恢复模式或大容量日志恢复模式切换的注意事项.
尝试方法二: 。
----Logical Files : --CMS1.5_Data --CMS1.5_Log DBCC SHRINKFILE (N'CMS1.5_Log' , 1) GO无效.
尝试方法三: 。
use DB_NAME sp_dboption DB_NAME, "trunc. log on chkpt.", true checkpoint sp_dboption DB_NAME, "autoshrink", true 。
每一行指令请单独执行。其中的DB_NAME是指Database Name,在执行完语法后的数小时至数十小时,该LOG档会逐渐释放空间,最后大约都会维持在数1024KB左右.
有没有更快的方法呢?
尝试方法四:(请提前备份文件!!) 。
1. Detach数据库。 2.删除log文件。 3. 附加数据库,选移除log文件,此时SQL Server 会自动重新建立一个512K 的Log 文件.
方法五(没有试过,请提前备份文件!!):
1. 停止 SQL Server 的服务 2. 使用删除 Log文件 3. 重新启动SQL Server 服务,此时SQL Server 会自动重新建立一个1MB 的Log 文件.
方法六: (尘尘提供) 。
先设置恢复模式为“简单恢复”模式,再收缩:
1
2
3
4
5
6
7
8
9
10
|
USE BigData ;
GO
ALTER
DATABASE
BigData
SET
RECOVERY SIMPLE;
--设置简单恢复模式
GO
DBCC SHRINKFILE (BigData_Log, 1);
GO
ALTER
DATABASE
BigData
SET
RECOVERY
FULL
;
--恢复为原模式
GO
|
方法七: (尘尘提供) 。
1
2
3
4
5
6
|
USE BigData;
GO
BACKUP LOG DATABASENAME
TO
DISK=
'd:\test.bak'
-- Shrink the trun cated log file to 1 MB.
DBCC SHRINKFILE (Bigdata_Log, 1);
GO
|
到这关于sqlserver 2008 数据压缩的方法就介绍到这了,据小编多年经验来看,2000、2005确实需要压缩,但2008真的没有压缩的必要了,具体原因可以参考这篇文章.
最后此篇关于SQL SERVER 2008 r2 数据压缩的两种方法的文章就讲到这里了,如果你想了解更多关于SQL SERVER 2008 r2 数据压缩的两种方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我有点想做 the reverse of this. 我不想解压缩并将收集文件添加到 S3 应用户要求: 生成一堆xml文件 使用一些图像(托管在 s3 上的预先存在的图像)压缩 xml 文件 下载
将此添加到域的虚拟主机后 AddOutputFilterByType DEFLATE application/javascript text/javascript text/css 响应头不包含任何内
在 Apache Im 中,通过将以下内容添加到我的 .htaccess 文件来启用输出压缩: # compress text, html, javascript, css, xml: AddOutp
是否可以以压缩格式将请求数据从浏览器发送到服务器? 如果是,我们该怎么做? 最佳答案 压缩从浏览器发送到服务器的数据是不受 native 支持 在浏览器中。 您必须找到一种解决方法,使用客户端语言(可
我正在寻找可以压缩JavaScript源代码的工具。我发现一些网络工具只能删除空格字符?但也许存在更好的工具,可以压缩用户的函数名称、字段名称、删除未使用的字段等。 最佳答案 经常用来压缩JS代码的工
使用赛马博彩场景,假设我有许多单独的投注来预测比赛的前 4 名选手 (superfecta)。 赌注如下... 1/2/3/4 1/2/3/5 1/2/4/3 1/2/4/5 1/2/5/3
我是一名实习生,被要求对 SQL 2008 数据压缩进行一些研究。我们想将 Outlook 电子邮件的几个部分存储在一个表中。问题是我们想将整个电子邮件正文存储在一个字段中,然后又想压缩它。使用 Ch
我目前有一个系统,用户可以在其中上传 MP4 文件,并且可以在移动设备上下载该文件。但有时,这些视频的大小超过 5MB,在我国,大多数人使用 2G。因此,下载大型视频通常需要 15-20 分钟。 有什
假设我有一个带有类型列的简单文档表: Documents Id Type 1 A 2 A 3 B 4 C 5 C 6 A 7 A 8 A 9 B 10 C 用户
我有一个较大字符串中的(子)字符串位置的 data.frame。数据包含(子)字符串的开头及其长度。可以很容易地计算出(子)字符串的结束位置。 data1 start length end #>
我想知道是否 文件加密算法可以设计成它也可以执行文件压缩的事件(任何活生生的例子?)。 我也可以将它集成到移动短信服务中,我的意思是短信吗? 另外我想知道二进制文件...如果纯文本文件以二进制编码
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve thi
我们有几个具有大量 JavaScript 的 Java 项目,目前我们使用的是旧版本的 YUICompressor (2.4.2)。然而,我在这篇博文中发现 YUICompressor 正在 depr
从之前关于尝试提高网站性能的文章中,我一直在研究 HTTP 压缩。我读过有关在 IIS 中设置它的信息,但它似乎是所有 IIS 应用程序池的全局事物,我可能不允许这样做,因为还有另一个站点在其上运行。
我有一个 REST 服务,它返回一大块 XML,大约值(value) 150k。 例如http://xmlservice.com/services/RestService.svc/GetLargeXM
我正在尝试获取一个简单的 UglifyJS (v2.3.6) 示例来处理压缩。 具体来说,“未使用”选项,如果从未使用过,变量和函数将被删除。 这是我在命令行上的尝试: echo "function
我正在开发一个项目,如果我的磁盘出现问题,我将在使用 ZLIB 压缩内存块后将其发送到另一个磁盘。然后我计划下载该转储并用于进一步调试。这种压缩和上传将一次完成一个 block - 比如说 1024
LZW 压缩算法在压缩后增加了位大小: 这是压缩函数的代码: // compression void compress(FILE *inputFile, FILE *outputFile) {
我的问题与如何在 3D 地形上存储大量信息有关。这些信息应该是 secret 的,因为它们非常庞大,也应该被压缩。我选择了文件存储,现在我想知道将对象数据加密/压缩(或压缩/加密)到文件的最佳做法。
我使用以下代码来压缩我的文件并且效果很好,但我只想压缩子文件夹而不是在压缩文件中显示树的根。 public boolean zipFileAtPath(String sourcePath, Strin
我是一名优秀的程序员,十分优秀!