博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sqlserver 备份
阅读量:4209 次
发布时间:2019-05-26

本文共 7338 字,大约阅读时间需要 24 分钟。

方式一、
    打开SQL Server Management Studio,点击新建查询,弹出界面,然后在界面中开始写创建数据库代码。
    
create database UnionDong                        --UnionDong是你想创建数据库的名字
on [ primary ]       --指定文件为主文件,一个数据库只能有一个主文件,若不表示则默认第一个文件为主文件
(
    name = 'Dong',                               --Dong 是你创建.mdf文件的名字
    filename = 'E:\SQL2016\DataBase\Dong.mdf',   --这个是你的 完整路径 + .mdf文件的全名
    size = 8MB,                                  --这是数据库的空间大小
    filegrowth = 10%                             --.mdf数据库的数据文件空间大小每次增长的百分比
)
log on
(
    name = 'Dong_l',                                  --Dong_l 是你创建.ldf文件的名字
    filename = 'E:\SQL2016\DataBase\Dong_l.ldf',      --这个是你的 完整路径 + .mdf文件的全名
    size = 4MB,                                      --这是数据库的空间大小
    filegrowth = 10%                                 --.mdf数据库的数据文件空间大小每次增长的百分比   
)

首先简单的介绍一下Sql server 备份的类型有:

1:完整备份(所有的数据文件和部分的事务日志文件)
2:差异备份(最后一次完成备份后数据库改变的部分)
3:文件和文件组备份(对指定的文件和文件组备份)
4:事物日志备份(所有数据库的变更)
5:尾日期备份(日志的活动部分,指上一次为备份的日志部分)
6:部分备份(主文件组、每个可读可写文件组和指定的只读文件组)
7:仅复制备份(数据库或者日志的备份,不影响整体备份)

BACKUP DATABASE <Database_Name, sysname, Database_Name>

   FILE = N'<Logical_File_Name_1,sysname,Logical_File_Name_1>',
   FILEGROUP = N'PRIMARY',
   FILE = N'<Logical_File_Name_2, sysname, Logical_File_Name_2>', 
   FILEGROUP = N'<Filegroup_1, sysname, Filegroup_1>'
   TO <Backup_Device_Name, sysname, Backup_Device_Name>
GO

BACKUP DATABASE <Database_Name, sysname, Database_Name> 

    TO  DISK = N'<Backup_Path,,C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup\><Database_Name, sysname, Database_Name>.bak' 
WITH 
    NOFORMAT, 
    COMPRESSION,
    NOINIT,  
    NAME = N'<Database_Name, sysname, Database_Name>-Full Database Backup', 
    SKIP, 
    STATS = 10;
GO

RESTORE DATABASE <Database_Name, sysname, Database_Name>

    FROM  DISK = N'<Backup_Path,,C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup\><Database_Name, sysname, Database_Name>.bak' 
WITH  
    FILE = 1,  
    NOUNLOAD,  
    REPLACE,
    STATS = 10
GO
CREATE DATABASE [<database_name, sysname, TestDB>] ON 
    PRIMARY (
        Name= N'<database_name, sysname, TestDB>_data', 
        FILENAME= N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>_data.mdf'),
    FILEGROUP [<filegroup_name1, sysname, FG_1>] (
        NAME=N' <database_name, sysname, TestDB>_<filegroup_name1, sysname, FG_1>', 
        FILENAME =N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>_<filegroup_name1, sysname, FG_1>.ndf'),
    FILEGROUP [<filegroup_name2, sysname, FG_2>] (
        NAME=N' <database_name, sysname, TestDB>_<filegroup_name2, sysname, FG_2>', 
        FILENAME =N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>_<filegroup_name2, sysname, FG_2>.ndf')
    LOG ON (
        NAME =N'<database_name, sysname, TestDB>_log', 
        FILENAME =N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>_log.ldf');
GO

-- Backup database

BACKUP DATABASE [<database_name, sysname, TestDB>] 
    FILEGROUP=N'PRIMARY',
    FILEGROUP=N'<filegroup_name1, sysname, FG_1>',
    FILEGROUP=N'<filegroup_name2, sysname, FG_2>' 
    TO DISK = N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>.bak'

-- Backup log

BACKUP LOG [<database_name, sysname, TestDB>] 
    TO DISK = '<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>.bak' 
    WITH 
        NO_TRUNCATE ,
        NORECOVERY, 
        NOFORMAT, 
        NOINIT, 
        NAME = '<database_name, sysname, TestDB> backup', 
        SKIP, 
        NOREWIND, 
        NOUNLOAD, 
        STATS = 10

-- Restore filegroups - one at a time

RESTORE DATABASE [<database_name, sysname, TestDB>] 
    FILE = N'<database_name, sysname, TestDB>_data' 
    FROM DISK = N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>.bak' 
    WITH  
        FILE = 1,  
        NORECOVERY,  
        NOUNLOAD,  
        STATS = 10
GO

RESTORE DATABASE [<database_name, sysname, TestDB>] 

    FILE = N' <database_name, sysname, TestDB>_<filegroup_name1, sysname, FG_1>' 
    FROM  DISK = N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>.bak' 
    WITH  
        FILE = 1,  
        NORECOVERY,  
        NOUNLOAD,  
        STATS = 10
GO

RESTORE DATABASE [<database_name, sysname, TestDB>] 

    FILE = N' <database_name, sysname, TestDB>_<filegroup_name2, sysname, FG_2>' 
    FROM  DISK = N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>.bak' 
    WITH  
        FILE = 1,  
        NORECOVERY,  
        NOUNLOAD,  
        STATS = 10

-- Restore log

RESTORE LOG [<database_name, sysname, TestDB>] 
    FROM DISK = N'<file_location, sysname, D:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\><database_name, sysname, TestDB>.bak' 
    WITH  
        FILE = 2,  
        NOUNLOAD,  
        STATS = 10
GO

--------------------完整备份默认追加到现有的文件---------------

backup database NorthWind
To disk='d:\backup\NorthWindCS-Full-2010-11-23.bak'
--------完整备份,覆盖现有的文件
Backup database NorthWind
To disk='d:\backup\NorthWindCS-Full-2010-11-23.bak'
With init---覆盖现有文件代码
 
--------差异备份(上次一完整备份以来改变的数据页)
backup database NorthWind
To Disk='d:\backup\NorthWindCS-Full-2010-11-23.bak'
 
-----事物日志备份,会自动截断日志(默认会阶段日志)
backup log NorthWind
To Disk='d:\backup\NorthWindCS-log-2010-11-23'
 
-----事物日志备份,不截断日志(默认会阶段日志)
backup log NorthWind
To Disk='d:\backup\NorthWindCS-log-2010-11-23'
With No_Truncate
 
-----不备份直接阶段日志,在SQL SERVER2008中不再支持。
backup log NorthWind With No_Log
backup log NorthWind With Tuancate_only
 
-----SQL SERVER 2008 替代的截断日志方法
alter database NorthWind set Recovery Simple
exec sp_helpdb NorthWInd
use NorthWind 
dbcc shrinkfile('NorthWind_log')
alter database NorthWind set Recovery Full
 
----超大型数据库的文件和文件组备份
Exec sp_helpdb NorthWind
backup database NorthWind File='NorthWind_Current'
to disk='h:\backup\NorthwindCS_Full_2010031.bak'
backup database NorthWind FileGroup='Current'
to disk='h:\backup\NorthwindCS_FG_2010031.bak'
 
---仅复制备份,不影响现有的备份序列
backup database NorthWind
To disk='h:\backup\NorthwindCS_Full_2010031.bak'
With Copy_only
 
 
--尾部日志备份,备份完成后数据库不再提供访问
use master
go
backup log NorthWind
to disk='h:\backup\Northwind-taillog-20101031.bak'
With NoRecovery
 
--回复数据库提供访问
Restore databse NorthWind with Recovery
 
--分割备份到多个目标文件
backup database NorthWind 
to disk='h:\backup\Northwind-part1.bak',
disk='h:\backup\NorthwindCS-part2.bak'
 
--镜像备份,需要加入With Format
backup database NorthWind
to disk='h:\backup\NorthwindCS-Mirror1.bak'
Mirror to disk='h:\backup\NorthwindCS-Mirror2.bak'----Mirror镜像
With Format
 
 
--备份到远程服务器
--使用SQL SERVER 的服务启动账号访问远程共享可写文件夹
backup database Northwind
to disk='\\192.168.3.20\backup\nw-yourname.bak'
 
--备份到远程服务器,指定访问远程服务器的账号和密码
Exec sp_configure
Exec Sp_COnfigure 'show advanced options',1
Reconfigure with Overrid
Exec sp_configure 'xp_cmdshell',1
Reconfigure with override
 
 
Exec xp_cmdshell
'net use \\192.168.10.101' /user:administrator password'
backup database Northwind 
to disk='\\192.168.10.101\backup\nw-fy.bak'
Exec sp_configure 'xp_cmdshell',0
Reconfigure with override
--------------------------------------
--备份压缩
--------------------------------------
Backup Database AdventureWorks
To disk='h:\backup\adv不压缩备份.bak'
--132MB  花费 7.789 秒(16.877 MB/秒)。
--备份到NTFS目录
Backup Database AdventureWorks
To disk='H:\backup\test\advNTFS压缩备份.bak'
--60MB     花费 11.871 秒(11.073 MB/秒)。
Backup Database AdventureWorks
To disk='h:\backup\adv压缩备份.bak'
With Compression
--132MB  花费 7.789 秒(16.877 MB/秒)。
--34MB    花费 3.775 秒(34.820 MB/秒)。
--启动默认备份压缩
EXEC sp_configure 'backup compression default', '1'
RECONFIGURE WITH OVERRIDE
GO
 

转载地址:http://szrli.baihongyu.com/

你可能感兴趣的文章
TreeGrid 异步加载节点
查看>>
Struts2 标签库讲解
查看>>
Google Web工具包 GWT
查看>>
材料与工程学科相关软件
查看>>
MPI的人怎么用仪器
查看>>
windows 下AdNDP 安装使用
查看>>
Project 2013项目管理教程(1):项目管理概述及预备
查看>>
ssh客户端后台运行
查看>>
哥去求职,才说了一句话考官就让我出去
查看>>
【React Native】把现代web科技带给移动开发者(一)
查看>>
【GoLang】Web工作方式
查看>>
Launch Sublime Text 3 from the command line
查看>>
【数据库之mysql】mysql的安装(一)
查看>>
【数据库之mysql】 mysql 入门教程(二)
查看>>
【HTML5/CSS/JS】A list of Font Awesome icons and their CSS content values(一)
查看>>
【HTML5/CSS/JS】<br>与<p>标签区别(二)
查看>>
【HTML5/CSS/JS】开发跨平台应用工具的选择(三)
查看>>
【心灵鸡汤】Give it five minutes不要让一个好主意随风而去
查看>>
【React Native】Invariant Violation: Application AwesomeProject has not been registered
查看>>
【ReactNative】真机上无法调试 could not connect to development server
查看>>