sqlserver用SQL脚本进行备份和还原操作

news/2025/3/14 21:34:44/

--1.1备份数据库脚本
USE [master]
GO
BACKUP DATABASE [Test] TO DISK = 'D:\Test\Test_20230419.bak'
GO

--1.2还原数据库,注意一定要用NORECOVERY还原备份
USE [master]
GO
RESTORE DATABASE [Test] FROM DISK=N'D:\Test\Test_20230419.bak' WITH FILE =1,
MOVE N'Test' TO N'D:\Test\Test.mdf',
MOVE N'Test_log' TO N'D:\Test\Test_log.ldf',
NOUNLOAD,NORECOVERY,REPLACE,STATS=5
GO

--2.1对数据库进行差异备份,注意:创建差异备份一定要先作完整备份
USE [master]
GO
BACKUP DATABASE [Test] TO DISK = 'D:\Test\Test_2023041901.bak'
WITH DIFFERENTIAL
GO

--2.2用差异备份还原数据库
USE [master]
GO
RESTORE DATABASE [Test] FROM DISK = 'D:\Test\Test_20230419.bak' WITH NORECOVERY
GO
RESTORE DATABASE [Test] FROM DISK = 'D:\Test\Test_2023041901.bak' WITH RECOVERY
GO

--3.1数据库的事务日志备份
USE [master]
GO
BACKUP LOG [Test] TO DISK = 'D:\Test\Test_20230419.trn'
GO

--4.1批量备份数据库
DECLARE @name VARCHAR(50) -- 数据库名
DECLARE @path VARCHAR(256) -- 备份文件路径
DECLARE @fileName VARCHAR(256) -- 备份文件名
DECLARE @fileDate VARCHAR(20) -- 用于文件名

--指定数据库备份目录 eg 'D:\backup\'
SET @path = 'D:\Test'

-- 指定文件名格式
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) + '_' + REPLACE(CONVERT (VARCHAR(20),GETDATE(),108),':','')

DECLARE db_cursor CURSOR READ_ONLY FOR
SELECT name
FROM master.sys.databases
WHERE name NOT IN ('master','model','msdb','tempdb','ReportServer','ReportServerTempDB') -- 排除这些数据库
AND state = 0 -- 数据库在线
AND is_in_standby = 0 -- 数据库不是只读日志传送

OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name

WHILE @@FETCH_STATUS = 0
BEGIN
SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName

FETCH NEXT FROM db_cursor INTO @name
END

CLOSE db_cursor
DEALLOCATE db_cursor


http://www.ppmy.cn/news/48132.html

相关文章

后缀数组的应用:最长公共子串

题目描述 假设 str1 长度为 N N N,str2 长度为 M M M,求 str1 和 str2 的最长公共子串。 思路分析 示例:str1 “12abcd456”, str2 “7abcd89”,则str1和str2的最长公共子串为 abcd。 注意,子串是连续的。 动…

C. Anna, Svyatoslav and Maps(floyd + 思维)

Problem - C - Codeforces 给你一个有n个顶点的无权图&#xff0c;以及由m个顶点的序列p1,p2,...,pm给出的路径&#xff08;该路径不一定简单&#xff09;&#xff1b;对于每个1≤i<m&#xff0c;有一个弧从pi到pi1。 如果v是p的子序列&#xff0c;v1p1&#xff0c;vkpm&a…

JavaScript有几种数据类型,分别是什么?

在JavaScript中&#xff0c;我们可以分成两种类型&#xff1a;基本类型 复杂类型&#xff08;引用类型&#xff09; 两种类型的区别是&#xff1a;存储位置不同 基本类型主要为以下六种&#xff1a; Number、String、Boolean、Undefined、Null、Symbol 复杂类型/引用类型统称为…

C++ const关键字

参考资料&#xff1a; 【C const的各种用法详解】【const用法深入浅出】 - COS - 博客园 (cnblogs.com) const的基本概念&#xff1a; const名叫常量限定符&#xff0c;用来限定特定变量&#xff0c;以通知编译器该变量是不可修改的。习惯性的使用const&#xff0c;可以避免在函…

PostgreSQL环境搭建和主备构建

目录 1 Windows 上安装 PostgreSQL2 docker安装PostgreSQL2.1 检索当前镜像2.2. 拉取当前镜像2.3 创建挂载文件夹2.4 启动镜像2.5 查看日志2.7 查看进程2.8 使用连接 3 postgresql主从主备搭建3.1 安装好网络源&#xff08;主1.11、从1.12&#xff09;3.2 安装postgresql&#…

Python OpenCV 3.x 示例:1~5

原文&#xff1a;OpenCV 3.x with Python By Example 协议&#xff1a;CC BY-NC-SA 4.0 译者&#xff1a;飞龙 本文来自【ApacheCN 计算机视觉 译文集】&#xff0c;采用译后编辑&#xff08;MTPE&#xff09;流程来尽可能提升效率。 当别人说你没有底线的时候&#xff0c;你最…

一定要会的算法复杂度分析

本文首发自「慕课网」&#xff0c;想了解更多IT干货内容&#xff0c;程序员圈内热闻&#xff0c;欢迎关注"慕课网"&#xff01; 原作者&#xff1a;s09g|慕课网讲师 我们知道面对同一道问题时可能有多种解决方案。自然地&#xff0c;我们会将多种方法进行比较。那么…

同样是测试,朋友到了30k,我才12K,这份测试面试8股文确实牛

程序猿在世人眼里已经成为高薪、为人忠诚的代名词。 然而&#xff0c;小编要说的是&#xff0c;不是所有的程序员工资都是一样的。 世人所不知的是同为程序猿&#xff0c;薪资的差别还是很大的。 众所周知&#xff0c;目前互联网行业是众多行业中薪资待遇最好的&#xff0c;…