今天需要把一个省外项目的数据库从服务器上备份、拷贝到本机(跨地域传输数据库备份文件)。

连上VPN,通过远程桌面连接,连接上服务器,发现数据库文件已经有20G以上大小了。

文件太大,公司网络也不稳定,根本不可能通过网络传输过来。

于是,把数据库的恢复模式由“完整”模式设置为“简单”模式,接着收缩数据库,

数据库瞬间由20G变成1G多点。

在SSMS中,新建查询窗口,执行数据库备份语句:

--定义变量,把备份数据库的QL脚本赋值给变量
declare @SqlBackupDataBase as nvarchar()
set @SqlBackupDataBase=N'BACKUP DATABASE Northwind TO DISK = ''D:\Northwind-'+
CONVERT(varchar(),GETDATE(),)+REPLACE(CONVERT(varchar(),GETDATE(),),':','')+'.bak'''
--备份文件格式:Northwind-.bak
exec sp_executesql @SqlBackupDataBase --调用系统存储过程,执行SQL

备份成功后,备份的bak文件有1.16G大小:

接着,兴冲冲地拷贝bak文件到本机,

结果:总是在传输的过程中,传输自动中断。

原因是 网络不稳定,网络的带宽限制。

想想,能不能备份成更小的bak文件呢?

最后用到了sql server 2008 以上版本的数据库的新特性:压缩备份数据库。

其实就是在备份数据库的语句上加上 “with STATS = 1,compression”,

完整压缩备份数据库语句如下:

--定义变量,把备份数据库的QL脚本赋值给变量
declare @SqlBackupDataBase as nvarchar()
set @SqlBackupDataBase=N'BACKUP DATABASE Northwind TO DISK = ''D:\Northwind-'+
CONVERT(varchar(),GETDATE(),)+REPLACE(CONVERT(varchar(),GETDATE(),),':','')+'.bak'''
+'with STATS = 1,compression'
--备份文件格式:Northwind-.bak
exec sp_executesql @SqlBackupDataBase --调用系统存储过程,执行SQL

备份成功后,发现备份的bak文件只有160MB大小:

最后顺利地把这个数据库备份文件拷贝并还原到本机数据库。

sql server 2008 R2 压缩备份数据库的更多相关文章

  1. SQL SERVER 2008 R2 自动备份并删除过期备份数据

        我们的系统维护的过程中肯定需要对数据库进行定期的备份,但是如果定时手工备份的话,不但浪费时间,也不能保证每次都可以按时备份,所以自动备份成为了我们的不二选择,但是定时备份需要定期清理备份文件, ...

  2. SQL Server 2008 R2如何开启数据库的远程连接

    SQL Server 2008 R2如何开启数据库的远程连接 SQL Server 2005以上版本默认是不允许远程连接的,如果想要在本地用SSMS连接远程服务器上的SQL Server 2008,远 ...

  3. SQL Server 2008怎么自动备份数据库

    在SQL Server 2008数据库中.为了防止数据的丢失我们就需要按时的来备份数据库了.要是每天都要备份的话,人工备份会很麻烦的,自动备份的话就不需要那么麻烦了,只 要设置好了,数据库就会自动在你 ...

  4. SQL Server 2008 R2如何开启数据库的远程连接(转)

    SQL Server 2008默认是不允许远程连接的,如果想要在本地用SSMS连接远程服务器上的SQL Server 2008,远程连接数据库.需要做两个部分的配置: SQL Server Manag ...

  5. 分享Sql Server 2008 r2 数据备份,同步服务器数据(一.本地备份)

    最近在部署一个系统,处于数据安全的考虑,因此对相应的数据库服务器定时备份,以及数据同步到备份服务上.之前在另外的一个项目中也做过相应的操作,但是操作都是按照查找到的文章一步一步的操作,碰到一些细节问题 ...

  6. SQL server 2008定期的备份数据库及删除job

    在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员 每天守到晚上1点去备份数据库.要实现数据库的 ...

  7. 分享Sql Server 2008 r2 数据备份,同步服务器数据(二.本地发布,订阅)

    上一篇文章中写到了数据库的本地备份,这一篇主要分享一下关于不同服务器的数据备份,主要是使用sql server中的本地发布,本地订阅功能,在数据库的读写分离中,也会经常性的用到这个功能. 复制-> ...

  8. 《SQL Server 2008 R2》 收缩数据库日志文件

    USE [master] GO /****** Object: StoredProcedure [dbo].[pro_Shrink_Log] Script Date: 2019/8/16 16:56: ...

  9. SQL Server 2008 R2 下移动数据库的存储位置

    使用场景:1. 该数据库增长的较大,存储磁盘空间不足:   2. 在特定情况下该数据库需要移动到另外一块磁盘上(呵呵...我的情况就是之前的磁盘要还给别人) 步骤: 1. 新建查询 SELECT na ...

随机推荐

  1. LoadTest中内存和线程Troubleshooting实战

    LoadTest中内存和线程Troubleshooting实战 在端午节放假的三天中,我对正在开发的Service进行了LoadTest,尝试在增大压力的条件下发现问题. 该Service为独立进程的 ...

  2. Linux epoll总结

    Linux epoll总结 Linux  epoll epoll是Kernel 2.6后新加入的事件机制,在高并发条件下,远优于select.epoll最大的好处在于它不会随着监听fd数目的增长而降低 ...

  3. SQLAlchemy on the way

    SQLAlchemy Trial This is a great ORM ( Object-Relational Mapper ) which is compatible with  xxxx and ...

  4. 超级强悍的PHP代码编辑器PHPstorm及配置

    如何下载安装 官方网站:http://www.jetbrains.com/phpstorm/,本篇文章展示的是5.0版本以,所以,如果你的软件版本过高,可能可有误,所以,如果有问题,请在本站留言,做为 ...

  5. Physical Standby Database Failover

    1.物理standby failover 切换 故障转移时在一些糟糕的事情发生时执行的计划外事件,需要将生产库移动到DR站点.有意思的是,这时候人们通常忙来忙去,试图弄明白发生了什么,需要做些什么才能 ...

  6. LINUX下编译安装最新版本mysql

    通过参考其他文章 1.下载安装mysql-5.5.30.tar.gz与cmake.2.8.11.2.tar.gz (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ ...

  7. Unity3D中使用MiniJson解析json的例子

    json: --------------------------------- {     "name":"中国",     "province&qu ...

  8. javaSocket与C通信

    前段时间写了个web端与C服务端之间的通信不过用的是短连接 非堵塞的方式,一直想使用长连接,使tomcat启动的时候就和C服务端进行通信,但是一直没找到方法希望je的朋友能给点思路.先来看我现在的具体 ...

  9. SharePoint 2016 自定义城市和区域字段

    前言 最近有这么一个需求,就是用到中国的各种行政区,然后还是三级联动,就琢磨写这么一个字段.然后,觉得挺有意义的,写字段的过程也有点心得,就想到拿到博客里分享给大家,一起看看. 1. 创建字段的解决方 ...

  10. 开发人员如何上google查资源,如果浏览国外资源方法

    启动浏览器后15秒左右,浏览器的右上角就会出现图标 启用防火墙功能(右上角墙形图标),这时候程序就会去寻找网上代理,从而达到访问GOOGLE的效果,提示如果不访问google网站,可再点击一下关闭防火 ...