sqlserver多文件组数据库的备份和还原实战
数据库文件过大时就要进行数据分区,就是讲数据库拆分到多个文件组中。已方便数据文件管理,提高数据库的读取效能,多文件组如何进行数据库的备份和还原呢,今天主要做多文件组数据库的备份和还原实验。
第一步
创建数据库qhw_test 数据库包括一个userinfo 数据表,userinfo数据表根据id做分区 包括一个主分区
,五个次分区,主分区包括qhw_test,data2两个文件,
数据表脚本如下
CREATE TABLE [dbo].[userinfo](
[Id] [int] IDENTITY(1,1) NOT NULL,
[UserName] [varchar](50) NOT NULL,
[CreateTime] [datetime] NOT NULL,
CONSTRAINT [PK_userinfo] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
)
GO
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[userinfo] ADD CONSTRAINT [DF_userinfo_UserName] DEFAULT ('') FOR
[UserName]
GO
ALTER TABLE [dbo].[userinfo] ADD CONSTRAINT [DF_userinfo_CreateTime] DEFAULT (getdate())
FOR [CreateTime]
GO
往数据表中写入数据
第二部
然后执行数据库备份
使用完整备份模式一次备份数据库文件,先备份主分区,一次备份其他次分区,最后做事务日志备份
备份完成后,将备份文件转移至另一台机器
第三部
进行还原操作,先还原主分区,依次还原次分区,还原事务日志,注意NORECOVERY,
RESTORE DATABASE qhw_test FILEGROUP = 'PRIMARY' FROM DISK = 'D:\bak\bak\qhw_test1.bak'
WITH FILE = 1,
move 'qhw_test' to 'd:\bak\qhw_test.mdf',
move 'data2' to 'd:\bak\data2.ndf',
move 'qhw_test_log' to 'd:\bak\qhw_test_log.ldf'
,
NORECOVERY,REPLACE,STATS = 10
RESTORE DATABASE qhw_test FILEGROUP = 'g1' FROM DISK = 'D:\bak\bak\g1.bak' WITH FILE = 1,
move 'g1' to 'd:\bak\g1.ndf',
NORECOVERY,REPLACE,STATS = 10
RESTORE DATABASE qhw_test FILEGROUP = 'g2' FROM DISK = 'D:\bak\bak\g2.bak' WITH FILE = 1,
move 'g2' to 'd:\bak\g2.ndf',
NORECOVERY,REPLACE,STATS = 10
RESTORE DATABASE qhw_test FILEGROUP = 'g3' FROM DISK = 'D:\bak\bak\g3.bak' WITH FILE = 1,
move 'g3' to 'd:\bak\g3.ndf',
NORECOVERY,REPLACE,STATS = 10
RESTORE DATABASE qhw_test FILEGROUP = 'g4' FROM DISK = 'D:\bak\bak\g4.bak' WITH FILE = 1,
move 'g4' to 'd:\bak\g4.ndf',
NORECOVERY,REPLACE,STATS = 10
RESTORE DATABASE qhw_test FILEGROUP = 'g5' FROM DISK = 'D:\bak\bak\g5.bak' WITH FILE = 1,
move 'g5' to 'd:\bak\g5.ndf',
NORECOVERY,REPLACE,STATS = 10
RESTORE LOG qhw_test
FROM DISK = 'D:\bak\bak\log.bak'
WITH NORECOVERY
GO
RESTORE DATABASE qhw_test
WITH RECOVERY
RESTORE DATABASE [' + @DataBaseName + ']
WITH RECOVERY
sqlserver多文件组数据库的备份和还原实战的更多相关文章
- SQLSERVER将一个文件组的数据移动到另一个文件组
SQLSERVER将一个文件组的数据移动到另一个文件组 有经验的大侠可以直接忽视这篇文章~ 这个问题有经验的人都知道怎麽做,因为我们公司的数据量不大没有这个需求,也不知道怎麽做实验 今天求助了QQ群里 ...
- SQL Server 在缺少文件组的情况下如何还原数据库
SQL Server 在缺少文件组的情况下如何还原数据库 一.背景 我有一个A库,由于a,b两张表的数据量比较大,所以对表进行分区:在把A库迁移到一个新的集群上去,我只备份了A库的主分区过去进行还原为 ...
- SQL Serever学习12——数据库的备份和还原
公司的服务器奔溃了,事先没相应的保护措施,使得公司遭到了较大损失,为了以后不再出现类似事件,在系统中引入备份机制,使得数据库被破坏后损失降到最低. 数据的导出和导入 数据转换服务 数据转换服务DTS( ...
- SQLServer2008修改sa密码的方法与SQL server 2008数据库的备份与还原
sa密码的修改转载自:http://blog.csdn.net/templar1000/article/details/20211191 SQL server 2008数据库的备份与还原转自 :htt ...
- 如何用SQL语句实现Mysql数据库的备份与还原
以前一直做android客户端的项目,根本没有开发asp.net mvc的开发,现阶段做了一个模块,参数设置,以及数据库的备份与还原.其需求如下: 参数设置 本项参数设置为对自动数据备份进行设置,管理 ...
- SQL server 2008数据库的备份与还原、分离(转)
SQL server 2008数据库的备份与还原.分离(转) 一.SQL数据库的备份: 1.依次打开 开始菜单 → 程序 → Microsoft SQL Server 2008 → SQL Ser ...
- mysql数据库的备份和还原的总结
mysql数据库的备份和还原的总结 (来自一运维同事的总结) 1. 备份方式: 热备:数据库在线进行备份,不影响读和写的在线备份方式! 温备:数据库在线进行备份,对表备份时先锁定写操作,仅可以执行读操 ...
- 用分离、附加的方式实现sql server数据库的备份和还原
一.数据库分离.附加的说明 SQL Server提供了"分离/附加"数据库."备份/还原"数据库.复制数据库等多种数据库的备份和恢复方法.这里介绍一种学习中常用 ...
- 【Mongodb】数据库操作--备份、还原、导出和导入
文章转载自点这里 mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport. mongo ...
随机推荐
- 基于ARM处理器的反汇编器软件简单设计及实现
写在前面 2012年写的毕业设计,仅供参考 反汇编的目的 缺乏某些必要的说明资料的情况下, 想获得某些软件系统的源代码.设计思想及理念, 以便复制, 改造.移植和发展: 从源码上对软件的可靠性和安全性 ...
- [Erlang 0123] Erlang EPMD
epmd进程和Erlang节点进程如影随形,在Rabbitmq集群,Ejabberd集群,Couchbase集群产品文档中都会有相当多的内容讲epmd,epmd是什么呢? epmd 是Erlan ...
- 4-3 管理及IO重定向
1. 系统设定默认输出设备:标准输出(STDOUT,1) 系统设定默认输入设备:标准输入(STDIN,0) 系统设定默认错误设备:标准错误(STDERR,2) 2. 标准输入:键盘 标准输出和错误输出 ...
- JS--轻松设置获取表单数据
接触过Angularjs的都知道,ng支持双向绑定,我们可以轻轻松松的通过ngModel将我们的值绑定到界面,当修改了值提交表单的时候不需要再重新通过ID去重新抓取输入框信息了.那对于我们开发前台网站 ...
- 国内优秀的Android资源
因为一些大家都知道的原因,Android很多官方出品的优秀开发资源在国内无法访问. 国内的同行们对此也做出了很多努力,有很多朋友通过各种手段把很多优秀的资源搬运到了国内,为国内android开发者提供 ...
- [No000083]文件与文件夹操作
#region Folder option 文件夹操作 /// <summary> /// 指定目录是否存在 /// </summary> /// <param name ...
- [LeetCode] Find Right Interval 找右区间
Given a set of intervals, for each of the interval i, check if there exists an interval j whose star ...
- [LeetCode] Range Sum Query - Immutable 区域和检索 - 不可变
Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive ...
- [LeetCode] Convert Sorted Array to Binary Search Tree 将有序数组转为二叉搜索树
Given an array where elements are sorted in ascending order, convert it to a height balanced BST. 这道 ...
- JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(三):两个Viewmodel搞定增删改查
前言:之前博主分享过knockoutJS和BootstrapTable的一些基础用法,都是写基础应用,根本谈不上封装,仅仅是避免了html控件的取值和赋值,远远没有将MVVM的精妙展现出来.最近项目打 ...