惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Engineering at Meta
Engineering at Meta
博客园_首页
H
Help Net Security
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
B
Blog
I
InfoQ
SecWiki News
SecWiki News
T
Tailwind CSS Blog
Spread Privacy
Spread Privacy
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Vulnerabilities – Threatpost
N
Netflix TechBlog - Medium
P
Palo Alto Networks Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Vercel News
Vercel News
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
K
Kaspersky official blog
M
MIT News - Artificial intelligence
S
Schneier on Security
T
Threat Research - Cisco Blogs
F
Fortinet All Blogs
Cyberwarzone
Cyberwarzone
Scott Helme
Scott Helme
aimingoo的专栏
aimingoo的专栏
Martin Fowler
Martin Fowler
MyScale Blog
MyScale Blog
The Cloudflare Blog
Recent Announcements
Recent Announcements
Security Latest
Security Latest
G
GRAHAM CLULEY
IT之家
IT之家
Y
Y Combinator Blog
The Last Watchdog
The Last Watchdog
腾讯CDC
Google DeepMind News
Google DeepMind News
V
V2EX
S
Securelist
TaoSecurity Blog
TaoSecurity Blog
B
Blog RSS Feed
S
SegmentFault 最新的问题
博客园 - 叶小钗
P
Proofpoint News Feed
云风的 BLOG
云风的 BLOG
Project Zero
Project Zero
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
F
Full Disclosure

博客园 - qy1141

Mysql插入Emoji表情出错 spring+mybatis事务不起作用的原因 安卓开发随记 springmvc + spring + ibatis + mysql Eclipse中配置svn J2EE环境配置与工具使用 SqlServer数据库空间使用情况常用命令 关于数据库优化杂技 windows2008吃尽内存的解决办法 asp.net中http提交数据所遇到的那些坑 在C#中使用消息队列RabbitMQ 重新开博 WCF Security系列(2)--服务器端的安全 WCF Security系列(1)--Security概述 如果为网站生成自签名SSL证书 关于证书 转:最真实的2006年应届毕业生真实薪水 转:如何修复Team Foundation Server Workgroup Edition 不小心删除了所有Team Foundation Licensed Users组内用户问题 转 :TFS(Team Foundation Server)使用经验
数据库备份与还原
qy1141 · 2015-09-14 · via 博客园 - qy1141

数据库备份与还原

2015-09-14 12:14  qy1141  阅读(350)  评论()    收藏  举报

备份数据库有很多种方式,我们选择的方案是完整备份+日志备份,等将来数据库大了以后,将变为完整备份+差异备份+日志备份,如图:

每天晚上进行数据库的完整备份,每30分钟进行日志备份,每次日志备份后系统会自动截断日志文件,这也能有效保证日志文件不会无限的增大。

--完整备份数据库
declare @toPath nvarchar(100)
set @toPath = 'D:\bak\Test_' + REPLACE(convert(nvarchar,GETDATE(),20),':','.') + '.bak'
backup database Test to disk = @toPath  with COMPRESSION,password = '123'

--备份事务日志
declare @toLogPath nvarchar(100)
set @toLogPath = 'D:\bak\Test_log_' + REPLACE(convert(nvarchar,GETDATE(),20),':','.') + '.bak'
BACKUP LOG Test To disk= @toLogPath

--备份尾事务日志(在数据库出现故障时,备份最后的日志)
BACKUP LOG Test To disk= @toLogPath with norecovery
--还原数据库
RESTORE DATABASE Test
FROM DISK = 'D:\bak\Test_2015-09-13 07.15.53.bak' 
with norecovery,password = '123',
MOVE N'OA' TO N'D:\db\Test.mdf',  
MOVE N'OA_log' TO N'D:\db\Test.ldf'

--还原事务日志(中间日志)
RESTORE log Test
FROM DISK = 'D:\bak\Test_log2015-09-13 07.16.47.bak' with norecovery

--还原事务日志(最后日志)
RESTORE log Test  
FROM DISK = 'D:\bak\Test_log2015-09-13 07.17.00.bak' WITH recovery

--用stopat恢复尾日志备份
RESTORE log [Test]  
FROM DISK = 'D:\bak\Test_2015-07-19 19.07.40.bak' WITH FILE = 3,stopat = '',recovery

--根据备份文件获取数据库逻辑文件名
RESTORE FILELISTONLY FROM DISK = 'D:\bak\Test_2015-09-13 07.15.53.bak' with password = '123'