亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

MSSQL數庫備份與還原腳本(多個庫時很方便)

2024-07-21 02:47:20
字體:
來源:轉載
供稿:網友
MSSQL數庫備份與還原腳本(多個庫時很方便)

每次通過 Management Studio 的界面操作備份或還原數據庫,對于單個數據庫還好,要是一次要做多個。那就還是用腳本快些,下面有兩段腳本分享一下。

====================================================================備份====================================================================

生成備份腳本的腳本

d:/databak/為存在目錄

SELECT 'BACKUP DATABASE ' + name + ' TO  DISK = N''d:/databak/' + name + '.bak''   WITH NOFORMAT, NOINIT,   NAME = N''' + name + '-完整 數據庫 備份'',   SKip, NOREWIND, NOUNLOAD,  STATS = 10'FROM sys.databaseswhere database_id>4    -- 跳過系統庫order by database_idgo

執行后生成如下腳本,復制如下腳本將正式執行備份:

BACKUP DATABASE     DataBaseName TO  DISK = N'd:/databak/DataBaseName.bak'     WITH NOFORMAT, NOINIT,         NAME = N'DataBaseName-完整 數據庫 備份',     SKIP, NOREWIND, NOUNLOAD,  STATS = 10

====================================================================還原====================================================================

生成還原腳本的腳本

請先填寫參數表:

源路徑,目的路徑,數據庫名列表,是否直接還原(@是否執行)

  1 --START--------------------------------------------------------------------------------------------------  2 USE master  3 GO  4 declare @srcPath varchar(500);  5 declare @tarPath varchar(500);  6 declare @是否執行 int;  7   8 CREATE TABLE #DATABASE(  9     id int identity(1,1), 10     name varchar(255) 11 ) 12 --參數表--可同時多個庫------------------------------------------- 13 INSERT INTO #DATABASE(name) 14 SELECT 'DataBaseName0' 15 --UNION ALL SELECT 'DataBaseName1' 16 --UNION ALL SELECT 'DataBaseName2' 17 --UNION ALL SELECT 'DataBaseName3' 18 --UNION ALL SELECT 'DataBaseName4' 19  20 ---路徑---------------------------------------------- 21 SET @是否執行 = 1;--是否直接執行,若否,只打印還原語句 22 SET @srcPath = 'G:/DBDATA/'; 23 SET @tarPath = 'G:/SQLData/SQL00/'; 24 --參數表End--------------------------------------------------- 25  26 DECLARE @newLine varchar(500); 27 SET @newLine =  CHAR(10) --+ CHAR(13); 28 DECLARE @dbName varchar(500); 29 DECLARE @fName varchar(500); 30  31 -------------WHILE 32 DECLARE @I INT; 33 SELECT @I = MAX(id) FROM #DATABASE; 34 WHILE @I IS NOT NULL 35 BEGIN 36  37     SELECT @dbName = name FROM #DATABASE WHERE id = @I; 38      39     CREATE TABLE #TABLE( 40         LogicalName VARCHAR(255), 41         PhysicalName VARCHAR(255), 42         Type VARCHAR(255), 43         FileGroupName VARCHAR(255), 44         Size BIGINT,--NUMERIC 45         MaxSize BIGINT,--NUMERIC 46         FileId BIGINT, 47         CreateLSN BIGINT, 48         DropLSN BIGINT, 49         UniqueId VARCHAR(255), 50         ReadOnlyLSN BIGINT, 51         ReadWriteLSN BIGINT, 52         BackupSizeInBytes BIGINT, 53         SourceBlockSize BIGINT, 54         FileGroupId BIGINT, 55         LogGroupGUID VARCHAR(255),-- 56         DifferentialBaseLSN VARCHAR(255), 57         DifferentialBaseGUID VARCHAR(255), 58         IsReadOnly BIGINT, 59         IsPResent BIGINT, 60         TDEThumbprint VARCHAR(255) 61     ) 62  63     declare @sql varchar(1000); 64     set @sql = 'RESTORE FILELISTONLY FROM DISK = N'''+@srcPath+@dbName+'.bak''' 65     insert into #TABLE exec (@sql) 66     --RESTORE FILELISTONLY FROM DISK = N'G:/DBDATA/20150316_YN_WB/MTNOH_AAA_Resource2.bak'  67     declare @logicalName_d varchar(500); 68     declare @logicalName_l varchar(500); 69     --set @logicalName_d = 'MTNOH_AAA_Resource'; 70     --set @logicalName_l = 'MTNOH_AAA_Resource_log'; 71     SELECT @logicalName_d = LogicalName FROM #TABLE WHERE [Type] = 'D'; 72     SELECT @logicalName_l = LogicalName FROM #TABLE WHERE [Type] = 'L'; 73  74     set @logicalName_d = case when @logicalName_d IS NULL THEN @dbName ELSE @logicalName_d END; 75     set @logicalName_l = case when @logicalName_l IS NULL THEN @dbName+'_log' ELSE @logicalName_l END; 76     set @fName = @dbName + '.bak'; 77  78     create table #temp( 79         dbName varchar(500), 80         fName varchar(500), 81         srcPath varchar(500), 82         tarPath varchar(500) 83     ) 84     declare @RESULT varchar(8000); 85     insert into #temp select @dbName,@fName,@srcPath,@tarPath; 86  87     SELECT @RESULT =  @newLine  88         + CASE WHEN @是否執行 = 1 THEN '' ELSE 'USE master ' END 89         + @newLine + ' RESTORE DATABASE ' +@dbName 90         + @newLine +' FROM DISK = '''+@srcPath+fName+'''' 91         + @newLine + ' WITH MOVE '''+@logicalName_d+''' TO '''+tarPath+dbName+'.mdf'',' 92         + @newLine + ' MOVE '''+@logicalName_l+''' TO '''+tarPath+dbName+'_log.ldf'',' 93         + @newLine + ' STATS = 10, REPLACE ' 94         + @newLine + CASE WHEN @是否執行 = 1 THEN '' ELSE ' GO ' END 95         from #temp; 96          97     PRINT @RESULT; 98     IF @是否執行 = 1 99         EXEC(@RESULT);100     --select @RESULT101     TRUNCATE TABLE #temp;102     DROP TABLE #temp;103     TRUNCATE TABLE #TABLE;104     drop table #TABLE;105     DELETE #DATABASE WHERE id = @I;106     SELECT @I = MAX(id) FROM #DATABASE;107 END108 109 TRUNCATE TABLE #DATABASE110 DROP TABLE #DATABASE;111 112 --END-------------------------------------------------------------------------------------------------- 
View Code


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91啪国产在线| 久久亚洲电影天堂| 91在线视频导航| 久久久久久久久久久久久久久久久久av| 亚洲欧洲国产伦综合| 中文字幕av一区二区| 国产成人精品一区二区三区| 俺去了亚洲欧美日韩| 久久久久久久一| 欧美性猛交xxxxx水多| 日本免费久久高清视频| 自拍偷拍免费精品| 欧美亚洲视频在线看网址| 欧美成人免费小视频| 欧美最猛黑人xxxx黑人猛叫黄| 国产欧美日韩亚洲精品| 亚洲石原莉奈一区二区在线观看| 一本一道久久a久久精品逆3p| 亚洲国产一区二区三区在线观看| 久久久精品视频在线观看| 97香蕉久久超级碰碰高清版| 久久的精品视频| 韩国三级电影久久久久久| 68精品久久久久久欧美| 久久人91精品久久久久久不卡| 国产精品欧美亚洲777777| 在线播放亚洲激情| 国产精品自拍偷拍| 国产日韩专区在线| 亚洲欧美在线一区二区| 97在线视频精品| 国产精品永久在线| 97人人做人人爱| 69av在线视频| 欧美午夜影院在线视频| 国产精品99久久久久久久久| 欧美亚洲伦理www| 日韩天堂在线视频| 精品国产91久久久久久| 精品国产精品三级精品av网址| 亚洲欧美第一页| 国产精品视频免费在线观看| 国产婷婷97碰碰久久人人蜜臀| 亚洲成人精品在线| 91免费视频国产| 668精品在线视频| 国产成人短视频| 国产91热爆ts人妖在线| 992tv成人免费影院| 欧美多人爱爱视频网站| 精品少妇v888av| 2020久久国产精品| 日韩欧美精品网址| 日韩欧美第一页| 91精品91久久久久久| 欧美福利小视频| 久久综合久中文字幕青草| 26uuu国产精品视频| 97精品国产97久久久久久免费| 91色在线视频| 黑人极品videos精品欧美裸| 91色视频在线观看| 在线亚洲国产精品网| 亚洲久久久久久久久久久| 国产精品ⅴa在线观看h| 亚洲国产精品系列| 日韩欧美国产中文字幕| 日韩免费黄色av| 欧美激情亚洲激情| 伊是香蕉大人久久| 久久国产精品免费视频| 欧美日韩中文字幕在线| 午夜精品一区二区三区在线视| 成人亚洲欧美一区二区三区| 91香蕉嫩草影院入口| 国产欧美一区二区白浆黑人| 国产一区二区三区视频在线观看| 国产美女精品视频免费观看| 国产午夜精品久久久| 精品久久久久久久久久久久| 亚洲日韩中文字幕在线播放| 亚洲成avwww人| 日韩av片永久免费网站| 精品偷拍各种wc美女嘘嘘| 97精品国产97久久久久久免费| 亚洲图片欧美日产| 国产精品老女人视频| 岛国av午夜精品| 久久亚洲综合国产精品99麻豆精品福利| 精品国产区一区二区三区在线观看| 51ⅴ精品国产91久久久久久| 久久天天躁狠狠躁夜夜躁| 亚洲欧美日韩视频一区| 欧美情侣性视频| 一区二区国产精品视频| 亚洲精品v天堂中文字幕| 国产免费一区二区三区在线能观看| 国产精品永久免费| 国产美女久久精品香蕉69| 中文字幕亚洲精品| 欧美成在线观看| 国产精品麻豆va在线播放| 亚洲福利视频免费观看| 亚洲娇小xxxx欧美娇小| 午夜精品久久久99热福利| 亚洲欧美中文日韩v在线观看| 国产精品久久久久久久久久久久久久| www.99久久热国产日韩欧美.com| 国内精品中文字幕| 欧美成人精品一区二区三区| 欧美裸体视频网站| 国产脚交av在线一区二区| 欧美高清videos高潮hd| 亚洲国产欧美久久| 97视频在线观看免费| 欧美激情按摩在线| 九九综合九九综合| 91精品在线国产| 亚洲一二在线观看| 国产精品99久久久久久www| 欧美插天视频在线播放| 亚洲白虎美女被爆操| 久久久国产精品免费| 日韩在线欧美在线| 欧美精品在线免费| 红桃av永久久久| 久久久精品在线观看| 全色精品综合影院| 2019最新中文字幕| 久久久午夜视频| 色综合久久久久久中文网| 欧美高清在线播放| 亚洲人在线观看| 91极品女神在线| 成人a视频在线观看| 亚洲va国产va天堂va久久| 亚洲成人国产精品| 久久夜色精品国产亚洲aⅴ| 中文日韩在线视频| 亚洲国产精品一区二区久| 欧美国产日韩xxxxx| 色噜噜狠狠狠综合曰曰曰88av| 国产精品自产拍在线观| 成人在线免费观看视视频| 欧美日韩亚洲视频| 精品久久久久久电影| 国产丝袜一区二区三区| 亚洲裸体xxxx| 欧美做爰性生交视频| 亚洲图片欧美午夜| 在线日韩日本国产亚洲| 成人性教育视频在线观看| 国模精品系列视频| 亚洲一区久久久| 欧美日韩一区二区三区在线免费观看| 久久频这里精品99香蕉| 91国语精品自产拍在线观看性色| 啊v视频在线一区二区三区| 欧美壮男野外gaytube| 欧美大人香蕉在线| 日韩中文字幕在线视频播放| 国产精品美女无圣光视频| 亚洲国产成人91精品| 在线观看欧美视频|