欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

程序员文章站 2022-06-07 23:20:17
SQL SERVER 2008 r2 数据压缩的两种方法第2/2页...

有时候sql server 2008 数据库日志文件太大,需要收缩释放硬盘内存。如果ldb文件过大会导致数据库运行缓慢,甚至系统都会卡住。

1.登陆项目平台数据库服务器。双击sql server management studio打开数据库管理。登陆数据库

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

2.如下图,打开数据库属性窗口

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

3.如下图,更改数据库恢复模式

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

4.如下图,收缩数据库日志

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

到这里已经完成了,数据库的日志收缩

5.如下图,数据库恢复模式修改为完整

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

经过小编测试,完美解决,我们成功的把一个84g的文件,压缩到1m。

下面继续为大家分享一个通过sql语句实现的,每次手工操作麻烦有没有。

sql语句实现步骤如下

首先查找要收缩日志文件的数据库文件名

use a

go

select file_id, name from sys.database_files;

go

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

查询结果得到日志文件的文件名叫j4_log

不过小编测试查询比较慢,可以通过下面的方法

数据库属性>文件>右侧日志前面这个名字就是日志文件名了

SQL SERVER 2008 r2 数据压缩的两种方法第2/2页

测试完美没有异常。

use[master]
go
alter database a set recovery simple with no_wait
go
alter database a set recovery simple --简单模式
go
use a
go
dbcc shrinkfile (n'j4_log', 11, truncateonly)

go

use[master]
go
alter database a set recovery full with no_wait
go
alter database a set recovery full --还原为完全模式
go

如果感觉比较麻烦,可以设置一个自动任务执行,将上面的文件保存为yasuo.sql

然后通过计划任务结合cmd,执行如下命令即可,目录自定设置好

sqlcmd -i yasuo.sql

sql server 2008r2执行大文件sql脚本命令

cd c:\program files\microsoft sql server\110\tools\binn
sqlcmd -s . -u sa -p 123 -d test  -i data.sql

参数说明:-s 服务器地址 -u 用户名 -p 密码 -d 数据库名称 -i 脚本文件路径

本地服务器地址可以写 . 比较轻松,也可写.或者(local)或者ip地址

这样就可以了,以后新建一个查询,直接运行就可以了。