Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
SQL Server ´óÊý¾Ý°áǨ֮Îļþ×鱸·Ý»¹Ô­ÊµÕ½
 
×÷ÕߣºÌý·ç´µÓêµÄ²©¿Í À´Ô´£º²©¿ÍÔ° ·¢²¼ÓÚ£º2015-04-29
  2527  次浏览      27
 

Ò».±³¾°£¨Contexts£©

ÓÐÒ»¸öÊý¾Ý¿â´ó¸ÅÔÚ700G×óÓÒ£¬ÐèÒª´Ó·þÎñÆ÷A°áǨµ½·þÎñÆ÷B£¬Á½Ì¨·þÎñÆ÷ÍøÂç´«ÊäËÙ¶È¿ÉÒÔ´ïµ½8MB/s£¬Ôõô×ö²ÅÄܸü¿ìµÄ°áǨ²¢ÇÒå´»úʱ¼ä×î¶ÌÄØ£¿

Êý¾Ý¿âÒµÎñÂß¼­¸ÅÊö£ºÕâ¸öÊý¾Ý¿âÖ»»á²åÈëÊý¾Ý£¬Ã¿Ìì´ó¸ÅÓÐ300WÌõÊý¾Ý£¬²»»á¶ÔÊý¾Ý½øÐÐÐ޸ģ¬Ö»ÓÐÒ»¸ö±í±È½Ï´ó£¬²¢ÇÒÕâ¸ö±íÊÇÒÔ×ÔÔöID×÷Ϊ·ÖÇøÒÀ¾ÝÁеģ¬Îļþ×é»á±»ÖØÓã¬Êý¾Ý¿âΪ¼òµ¥»Ö¸´Ä£Ê½£¬ÎÒ¶¨Ê±»á¶Ô±íÊý¾Ý½øÐн»»»·ÖÇøÉ¾³ýÊý¾Ý£»

¶þ.½â¾ö·½°¸£¨Solution£©

֮ǰÎÒҲд¹ý¹ØÓÚ°áǨÊý¾Ý¿âµÄһЩÎÄÕ£º

1. SQL Server Êý¾Ý¿â×îС崻úÇ¨ÒÆ·½°¸£¬ÕâÆªÎÄÕÂÊÇͨ¹ýÍêÈ«±¸·Ý+²îÒ챸·ÝµÄ·½Ê½Ç¨ÒÆÊý¾Ý¿âµÄ£¬ÕâÖÖ·½Ê½±È½ÏºÏÊÊÊý¾Ý¿âÖ»ÓÐ20G×óÓÒµÄÊý¾Ý¿â£¬å´»úʱ¼ä=²îÒ챸·Ýʱ¼ä+´«Êä²îÒ챸·Ýʱ¼ä+»¹Ô­²îÒ챸·Ýʱ¼ä£¬Ò»°ãÀ´ËµÕâ¸öʱ¼ä¶¼±È½Ï¶Ì£¬ÒòΪ²îÒ챸·Ý¶¼²»»áÌ«´ó£»

2. SQL Server Êý¾Ý¿âÇ¨ÒÆÆ«·½£¬ÕâÆªÎÄÕÂÊÇͨ¹ý×÷ÒµµÄ·½Ê½Ç¨ÒÆÊý¾Ý¿âµÄ£¬Ò»¸öÊÂÎñÖÐ×ªÒÆNÌõ£¨´óÔ¼2WÌõ£©Êý¾Ý£¬NÖµ¿ÉÒÔͨ¹ý²âÊÔ½øÐе÷Õû£¨ÐèÒª¿´ÍøÂçÇé¿ö¶ø¶¨£©£¬ÕâÖÖ·½Ê½±È½ÏÊʺÏÊý¾Ý¿â±È½Ï´ó£¬±ÈÈ缸°ÙGµÄÊý¾Ý¿â£¬¶øÇÒÍøÂç»·¾³±È½Ï²îµÄÇé¿öÏ£¬å´»úʱ¼ä¡Ö0£¨µ±×ªÒÆ×îºóÒ»²¿·ÖÊý¾Ý×㹻С£©£¬È±µã¾ÍÊÇÇ¨ÒÆµÄʱ¼ä»á±È½Ï³¤£»

3. ÄÇôÕâÆªÎÄÕÂÎÒÃÇÔÙÀ´½²½²ÆäËü·½Ê½µÄÇ¨ÒÆ£¬ÔÚÉÏÃæÌáµ½µÄ±³¾°Ï£¬¿ÉÒÔͨ¹ý¶Ô·ÖÇøÎļþ×é½øÐб¸·ÝµÄ·½Ê½Ç¨ÒÆÊý¾Ý¿â£¬ÕâÖÖ·½Ê½±È½ÏÊʺϴóÊý¾Ý¿âµÄÇ¨ÒÆ£¬å´»úʱ¼ä=×îºóÒ»¸öÎļþ×鱸·Ýʱ¼ä+´«Ê䱸·Ýʱ¼ä+»¹Ô­×îºóÒ»¸öÎļþ×éʱ¼ä£¬È±µãÊÇå´»úʱ¼ä»á±È½Ï´ó£¬µ«ÊÇÕûÌåÇ¨ÒÆµÄʱ¼ä»á±È½ÏС£»ÏÂÃæÊÇÂß¼­½á¹¹Í¼£º

F1_Îļþ×é°áǨÂß¼­Í¼

Èý.°áǨ²½Ö裨Procedure£©

ÔÚ½²Êö°áǨ²½Öè֮ǰ£¬ÎÒÃÇÊ×ÏÈÀ´¿´¿´Îļþ×éµÄ´óÌåÇé¿ö£¬Í¨¹ýÏÂÃæµÄSQLÓï¾ä¿ÉÒԲ鿴Îļþ×éµÄÏà¹ØÐÅÏ¢£¬¼ûFigure2¡¢Figure3£»

--²é¿´Îļþ×éÐÅÏ¢
SELECT df.[name], df.physical_name, df.[size], df.growth, fg.[name]
[filegroup], fg.is_default
FROM sys.database_files df
JOIN sys.filegroups fg
ON df.data_space_id = fg.data_space_id

£¨Figure2£ºÎļþ×éÁÐ±í£©

£¨Figure3£ºÎļþ×éÁÐ±í£©

ÏÂÃæ¾Í½²½²°áǨµÄ²½Ö裺

1. Ê×ÏÈÎÒÃÇÏÈÇåÀíÏÂÊý¾Ý£¬°Ñ²»±ØÒªµÄÊý¾Ýͨ¹ý½»»»·ÖÇøµÄ·½Ê½½»»»³öÈ¥£»

2. ²é¿´ÕâÕÅ´ó±íµ±Ç°µÄ×ÔÔöIDÖµ£¬Í¨¹ýÐ޸ķÖÇø·½°¸ÈÃвåÈëµÄÊý¾Ý´æÈëµ½Ò»¸ö¿ÕµÄÎļþ×飨ÒòΪ¿ÕµÄÎļþ×éÔÚ×îºó±¸·Ý»á¸üСһµã£©£¬ºÜ¶àÇé¿öÏ£¬Îļþ×éÊÇ»áÖØÓõģ¬ËùÒÔҪעÒâÕâ¸öÎļþ×éÊǿյģ»

3. ÉèÖÃÊý¾Ý¿âΪÍêÕû»Ö¸´Ä£Ê½£»

4. ±¸·Ý³ýÁËÉÏÃæÌáµ½µÄÎļþ×飬Èç¹ûÌõ¼þÔÊÐí¿ÉÒÔ½øÐб¸·ÝµÄѹËõ£»£¨¶¯Ì¬Éú³ÉSQL£©

5. ͨ¹ýFTP´«Ê䱸·ÝÎļþµ½ÐµķþÎñÆ÷£»

6. ±¸·ÝÖ÷·ÖÇø£¬ÐèҪȷ±£Õâ¸öʱºò²»»á¶ÔÖ÷·ÖÇøµÄÊý¾Ý½øÐÐÐ޸쬲¢´«ÊäÖ÷·ÖÇø±¸·ÝÎļþ£»

7. ÏÈ»¹Ô­Ö÷·ÖÇøµÄ±¸·Ý£¬ÔÙ»¹Ô­ÉÏÃæµÄÎļþ×鱸·Ý£»£¨¶¯Ì¬Éú³ÉSQL£©

8. ¶Ô×îºóÒ»¸öÎļþ×é½øÐб¸·Ý£¬¶ÔÈÕÖ¾½øÐб¸·Ý£¬¶ÔûÓÐ×ö·ÖÇø¶ÔÆëµÄË÷ÒýÎļþ×é½øÐб¸·Ý£¬°ÑÕâ3¸ö±¸·Ý´«Ê䵽зþÎñÆ÷£»

9. »¹Ô­Îļþ×飬»¹Ô­ÈÕÖ¾£»

ËÄ.°áǨ½Å±¾£¨SQL Codes£©

°áǨ½Å±¾°üÀ¨Á½¸ö²¿·Ö£¬Ò»¸ö±¸·ÝʹÓõĽű¾£¬Ò»¸öÊÇ»¹Ô­Ê¹ÓõĽű¾£º

1. ±¸·Ý½Å±¾£¬¸ù¾Ý·ÖÇøÇé¿öÀ´×Ô¶¯Éú³É¶ÔÓ¦µÄ±¸·Ý½Å±¾£»

2. »¹Ô­½Å±¾£¬¸ù¾Ý·ÖÇøÇé¿öºÍ±¸·ÝÎļþµÄ¹æÔòÀ´Éú³É¶ÔÓ¦µÄ»¹Ô­½Å±¾£¬Ò²¾ÍÊÇ˵»¹Ô­½Å±¾ÊÇÒÀ¾Ý±¸·Ý½Å±¾µÄ£»

(Ò») ÏÂÃæÊÇÓÃÓÚÉú³É±¸·ÝSQLµÄ´úÂ룬Õâ¸ö´úÂëÐèÒªÌṩÁ½¸ö±äÁ¿Öµ£º

1. @DataBaseNameÖ¸¶¨ÐèÒª½øÐб¸·ÝµÄÊý¾Ý¿âÃû£¬ÖµÎª'Barefoot.Archives'£»

2. @BackupPathÔھɷþÎñÆ÷±¾µØ±¸·ÝÎļþ×é´æ·ÅµÄµØÖ·£¬ÖµÎª£º'E:\DBBackup\'£»

ÔÚ¾ÉÊý¾Ý¿âBarefoot.ArchivesÖÐÖ´ÐÐÏÂÃæµÄSQL½Å±¾£º

-- =============================================

-- Author:      <Ìý·ç´µÓê>
-- Blog:        
-- Create date: <2014/02/26>
-- Description: <Éú³É·ÖÇø±¸·Ý½Å±¾>
-- =============================================
DECLARE @DataBaseName SYSNAME--Êý¾Ý¿âÃû³Æ
DECLARE @BackupPath SYSNAME--±£´æ·ÖÇø±¸·ÝµÄ·¾¶
DECLARE @FilegroupName SYSNAME--·ÖÇøÎļþ×éÃû³Æ
DECLARE @sql NVARCHAR(MAX)--sql×Ö·û´®

--ÉèÖÃÏÂÃæ±äÁ¿
SET @DataBaseName = 'DataBaseName'
SET @BackupPath = 'D:\DBBackup\'

--1.ÉèÖÃÍêÕûģʽ
PRINT '--ÉèÖÃÍêÕûģʽ'
SET @sql = 'USE [master]
GO
ALTER DATABASE ['+@DataBaseName +'] SET RECOVERY FULL WITH NO_WAIT
GO'
PRINT @sql + CHAR(13)

--2.±¸·Ý·ÖÇø
DECLARE @itemCur CURSOR
SET @itemCur = CURSOR FOR
    SELECT [name] FROM sys.filegroups ORDER BY is_default

OPEN @itemCur
FETCH NEXT FROM @itemCur INTO @FilegroupName
WHILE @@FETCH_STATUS=0
BEGIN
    --Âß¼­´¦Àí
    PRINT '--±¸·Ý·ÖÇø- ' + @FilegroupName
    SET @sql = 'BACKUP DATABASE [' + @DataBaseName + ']
FILEGROUP = ''' + @FilegroupName + '''
TO DISK = ''' + @BackupPath+@FilegroupName + '.bak'' WITH FORMAT
GO'
    PRINT @sql + CHAR(13)
    
    FETCH NEXT FROM @itemCur INTO @FilegroupName
END 

CLOSE @itemCur
DEALLOCATE @itemCur

--3.±¸·ÝÈÕÖ¾
PRINT '--±¸·ÝÈÕÖ¾'
SET @sql = 'BACKUP LOG [' + @DataBaseName + ']
TO DISK = ''' + @BackupPath+@DataBaseName + '_Log.bak'' WITH FORMAT
GO'
PRINT @sql + CHAR(13)

¸´ÖÆ´úÂë

ÉÏÃæSQL½Å±¾µÄÂß¼­ÊÇ£º

1. Ê×ÏÈÉèÖÃÊý¾Ý¿âµÄ»Ö¸´Ä£Ê½ÎªÍêÕû»Ö¸´Ä£Ê½£¬ÕâÊÇΪÁ˺óÃæ¶ÔÊý¾Ý¿âµÄÈÕÖ¾½øÐб¸·Ý£»

2. ͨ¹ýµ±Ç°Êý¾Ý¿âµÄϵͳ±ísys.filegroupsÄõ½Îļþ×éµÄÃû³Æ£¬ÕâÀï°ÑĬÈÏÎļþÅÅÔÚ×îºóÃæ£¬ÕâÊÇÒòΪÓпÉÄÜ»á¶ÔÅäÖÃ±í½øÐеIJÙ×÷£¬ËùÒÔ°ÑÕâ¸öÎļþ×é·Åµ½×îºó±¸·Ý£»

3. ʹÓÃÓαêµÄ·½Ê½À´Ñ­»·Îļþ×飬Éú³ÉÎļþ×é¶ÔÓ¦µÄ±¸·ÝSQLÓï¾ä£»

4. ×îºó±¸·ÝÊý¾Ý¿âµÄÈÕÖ¾£¬¶ÔÎļþ×éµÄ»¹Ô­ÊÇÐèҪͨ¹ýÈÕÖ¾±¸·Ý²ÅÄÜ»¹Ô­µÄ£»

ÔÚ¾ÉÊý¾Ý¿âÖ´ÐÐÉÏÃæµÄSQL½Å±¾£¬½«»á²úÉúÉú³ÉÏÂÃæµÄSQL£¨Ö»±£ÁôÁ˲¿·ÖSQL£©£º

--ÉèÖÃÍêÕûģʽ
USE [master]
GO
ALTER DATABASE [DataBaseName] SET RECOVERY FULL WITH NO_WAIT
GO

--±¸·Ý·ÖÇø- FG_Archive_Id_01
BACKUP DATABASE [DataBaseName]
FILEGROUP = 'FG_Archive_Id_01'
TO DISK = 'D:\DBBackup\FG_Archive_Id_01.bak' WITH FORMAT
GO

--±¸·Ý·ÖÇø- FG_Archive_Id_02
BACKUP DATABASE [DataBaseName]
FILEGROUP = 'FG_Archive_Id_02'
TO DISK = 'D:\DBBackup\FG_Archive_Id_02.bak' WITH FORMAT
GO

--±¸·Ý·ÖÇø- FG_Archive_Index
BACKUP DATABASE [DataBaseName]
FILEGROUP = 'FG_Archive_Index'
TO DISK = 'D:\DBBackup\FG_Archive_Index.bak' WITH FORMAT
GO

--±¸·Ý·ÖÇø- PRIMARY
BACKUP DATABASE [DataBaseName]
FILEGROUP = 'PRIMARY'
TO DISK = 'D:\DBBackup\PRIMARY.bak' WITH FORMAT
GO

--±¸·ÝÈÕÖ¾
BACKUP LOG [DataBaseName]
TO DISK = 'D:\DBBackup\Barefoot.Archives_Log.bak' WITH FORMAT
GO

Ö´ÐÐÍêÉÏÃæµÄ½Å±¾£¬»áÉú³ÉÏÂͼËùʾµÄ±¸·ÝÎļþ£º

F4_±¸·ÝÎļþÁбí

(¶þ) ÏÂÃæÊÇÓÃÓÚÉú³É»¹Ô­SQLµÄ´úÂ룬Õâ¸ö´úÂëÐèÒªÌṩ¼¸¸ö±äÁ¿Öµ£º

1. @DataBaseNameÖ¸¶¨ÐèÒª½øÐб¸·ÝµÄÊý¾Ý¿âÃû£¬ÖµÎª'Barefoot.Archives'£»

2. @BackupPathÔÚзþÎñÆ÷Îļþ×鱸·ÝµÄµØÖ·£¬ÖµÎª£º'E:\DBBackup\'£»

3. @SavePath_Drive´æÔÚÊý¾ÝÎļþµÄÅÌ·û£¬ÖµÎª£º'F:\'£»

4. @SavePath_FolderName´æ·ÅÊý¾ÝÎļþµÄÎļþ¼Ð£¬ÖµÎª£º'DataBase\'£»

5. @SavePath_SubFolderName´æ·ÅndfÎļþµÄÎļþ¼Ð£¬ÖµÎª£º'FG_Archive\'£»

6. @IsSamePath±íʾÊÇ·ñÑÓÐøÖ®Ç°µÄphysical_nameÖµ£¬ÖµÎª1±íʾÑÓÐø£¬ÕâÑù»áʹÓÃ@SavePath_DriveÌæ»»physical_nameµÄÅÌ·û£¬ÕâÑù@SavePath_FolderNameºÍ@SavePath_SubFolderName¾Í²»»áÆð×÷ÓÃÁË£¬ÖµÎª0±íʾ²»ÑÓÐø£¬ÕâÑùphysical_nameµÄÖµ=@SavePath_Drive+@SavePath_FolderName+@SavePath_SubFolderName£»

ÔÚ¾ÉÊý¾Ý¿âBarefoot.ArchivesÖÐÖ´ÐÐÏÂÃæµÄSQL½Å±¾£º

-- ====================
-- Author:      <Ìý·ç´µÓê>

-- Blog:        
-- Create date: <2014/02/26>
-- Description: <Éú³É·ÖÇø»¹Ô­½Å±¾>
-- =======================
DECLARE @DataBaseName SYSNAME--Êý¾Ý¿âÃû³Æ
DECLARE @BackupPath SYSNAME--±£´æ±¸·ÝÎļþµÄ·¾¶
DECLARE @SavePath_Drive SYSNAME--±£´æÊý¾Ý¿âÎļþµÄÅÌ·û
DECLARE @SavePath_FolderName SYSNAME--±£´æÊý¾Ý¿âµÄÎļþ¼Ð
DECLARE @SavePath_SubFolderName SYSNAME--±£´æ·ÖÇøµÄÎļþ¼Ð
DECLARE @FilegroupName SYSNAME--·ÖÇøÎļþ×éÃû³Æ
DECLARE @FileName SYSNAME--·ÖÇøÎļþÃû³Æ
DECLARE @PhysicalName SYSNAME--ÎïÀí·¾¶
DECLARE @IsSamePath INT--ÊÇ·ñ¸úԶ·¾¶Ò»Ñù1,0
DECLARE @sql NVARCHAR(MAX)--sql×Ö·û´®

--ÉèÖÃÏÂÃæ±äÁ¿
SET @DataBaseName = 'DataBaseName'
SET @BackupPath = 'E:\DBBackup\'
SET @SavePath_Drive = 'F:\'
SET @SavePath_FolderName = 'DataBase\'
SET @SavePath_SubFolderName = 'FG_Archive\'
SET @IsSamePath = 1

--1.»¹Ô­Ö÷·ÖÇø
SELECT @FilegroupName = [name] FROM sys.filegroups WHERE is_default = 1
PRINT '--»¹Ô­Ö÷·ÖÇø'
SET @sql = 'RESTORE DATABASE [' + @DataBaseName + ']
FILEGROUP = ''' + @FilegroupName + '''
FROM DISK = ''' + @BackupPath + @FilegroupName + '.bak'' WITH FILE = 1, 
MOVE N''' + @DataBaseName + ''' TO N''' + @SavePath_Drive +
 @SavePath_FolderName + @DataBaseName + '.mdf'',  
MOVE N''' + @DataBaseName + '_log'' TO N''' + 
@SavePath_Drive + @SavePath_FolderName + @DataBaseName + '_log.ldf'',
NORECOVERY,REPLACE,STATS = 10
GO'
PRINT @sql + CHAR(13)

--2.»¹Ô­·ÖÇø
DECLARE @itemCur CURSOR
SET @itemCur = CURSOR FOR
    SELECT df.[name] AS FileName, df.physical_name, fg.[name] AS FilegroupName
        FROM sys.database_files df
        JOIN sys.filegroups fg
        ON df.data_space_id = fg.data_space_id
     WHERE fg.is_default = 0

OPEN @itemCur
FETCH NEXT FROM @itemCur INTO @FileName,@PhysicalName,@FilegroupName
WHILE @@FETCH_STATUS=0
BEGIN
    --Âß¼­´¦Àí
    PRINT '--»¹Ô­·ÖÇø- ' + @FilegroupName
    IF @IsSamePath = 0
        SET @PhysicalName = @SavePath_Drive + 
@SavePath_FolderName + @SavePath_SubFolderName + '\' + @FileName + '.ndf'
    ELSE
        SET @PhysicalName = @SavePath_Drive + SUBSTRING
(@PhysicalName,CHARINDEX('\',@PhysicalName)+1,LEN(@PhysicalName))
    SET @sql = 'RESTORE DATABASE [' + @DataBaseName + ']
FILEGROUP = ''' + @FilegroupName + '''
FROM DISK = ''' + @BackupPath+@FilegroupName + '.bak'' WITH FILE = 1, 
MOVE N''' + @FileName + ''' 
TO N''' + @PhysicalName + ''',
NORECOVERY
GO'
    PRINT @sql + CHAR(13)
    
    FETCH NEXT FROM @itemCur INTO @FileName,@PhysicalName,@FilegroupName
END 

CLOSE @itemCur
DEALLOCATE @itemCur

--3.»¹Ô­ÈÕÖ¾
PRINT '--»¹Ô­ÈÕÖ¾'
SET @sql = 'RESTORE LOG [' + @DataBaseName + ']
FROM DISK = ''' + @BackupPath + @DataBaseName + '_Log.bak''
WITH NORECOVERY
GO'
PRINT @sql + CHAR(13)

--4.»¹Ô­ÔÚÏß
PRINT '--»¹Ô­ÔÚÏß'
SET @sql = 'RESTORE DATABASE [' + @DataBaseName + ']
WITH RECOVERY
GO'
PRINT @sql + CHAR(13)

ÉÏÃæSQL½Å±¾µÄÂß¼­ÊÇ£º

1. ͨ¹ýϵͳ±ísys.filegroupsÕÒµ½Ä¬ÈÏÎļþ×飬ÏÈ»¹Ô­Õâ¸öÖ÷Îļþ£»

2. ʹÓÃÓαêµÄ·½Ê½À´Ñ­»·ÏµÍ³±ísys.filegroups£¬Äõ½Îļþ×éÃû³Æ£¬Éú³ÉÎļþ×é¶ÔÓ¦µÄ»¹Ô­SQLÓï¾ä£»

3. ½Ó×Å»¹Ô­Êý¾Ý¿âµÄÈÕÖ¾£»

4. ×îºó»¹Ô­ÔÚÏߣ¬ÈÃÊý¾Ý¿âÔÚÏߣ»

Ö´ÐÐÉÏÃæµÄSQL½Å±¾£¬½«»á²úÉúÉú³ÉÏÂÃæµÄSQL£¨Ö»±£ÁôÁ˲¿·ÖSQL£©£º

--»¹Ô­Ö÷·ÖÇø
RESTORE DATABASE [DataBaseName]
FILEGROUP = 'PRIMARY'
FROM DISK = 'E:\DBBackup\PRIMARY.bak' WITH FILE = 1, 
MOVE N'Barefoot.Archives' TO N'F:\DataBase\Barefoot.Archives.mdf',  
MOVE N'Barefoot.Archives_log' TO N'F:\DataBase\Barefoot.Archives_log.ldf',
NORECOVERY,REPLACE,STATS = 10
GO

--»¹Ô­·ÖÇø- FG_Archive_Id_01
RESTORE DATABASE [DataBaseName]
FILEGROUP = 'FG_Archive_Id_01'
FROM DISK = 'E:\DBBackup\FG_Archive_Id_01.bak' WITH FILE = 1, 
MOVE N'FG_Archive_Id_01_data' 
TO N'F:\DataBase\FG_Archive\FG_Archive_Id_01_data.ndf',
NORECOVERY
GO

--»¹Ô­·ÖÇø- FG_Archive_Id_02
RESTORE DATABASE [DataBaseName]
FILEGROUP = 'FG_Archive_Id_02'
FROM DISK = 'E:\DBBackup\FG_Archive_Id_02.bak' WITH FILE = 1, 
MOVE N'FG_Archive_Id_02_data' 
TO N'F:\DataBase\FG_Archive\FG_Archive_Id_02_data.ndf',
NORECOVERY
GO

--»¹Ô­·ÖÇø- FG_Archive_Index
RESTORE DATABASE [DataBaseName]
FILEGROUP = 'FG_Archive_Index'
FROM DISK = 'E:\DBBackup\FG_Archive_Index.bak' WITH FILE = 1, 
MOVE N'FG_Archive_Index_data' 
TO N'F:\DataBase\Barefoot.Archives\FG_Archive_Index_data.ndf',
NORECOVERY
GO

--»¹Ô­ÈÕÖ¾
RESTORE LOG [DataBaseName]
FROM DISK = 'E:\DBBackup\Barefoot.Archives_Log.bak'
WITH NORECOVERY
GO

--»¹Ô­ÔÚÏß
RESTORE DATABASE [DataBaseName]
WITH RECOVERY
GO

ÔÚзþÎñÆ÷ÉÏÖ´ÐÐÉÏÃæµÄSQL½Å±¾»¹Ô­Êý¾Ý¿â£¬ÐèҪעÒâµÄÊÇ£ºÔÚ»¹Ô­ÔÚÏß֮ǰÊý¾Ý¿â¶¼ÊÇÒ»Ö±´¦ÓÚ£ºÕýÔÚ»¹Ô­µÄ״̬µÄ£»

Îå.×¢ÒâÊÂÏAttention£©

1. ÔÚʵ¼ÊÔËÓÃÖУ¬¿ÉÒÔ½áºÏ±¾ÎĺÍSQL Server Êý¾Ý¿âÇ¨ÒÆÆ«·½½øÐÐÁé»î½áºÏÔËÓ㬵±Í¨¹ý±¾Îļþ×鱸·Ýºó£¬¾É¿â¼ÌÐø½øÊý¾Ý£¬ÔÚ»¨Ïúʱ¼ä×î´óµÄÍøÂç´«Êä¹ý³ÌºÍ»¹Ô­¹ý³Ì¼ÌÐø¶ÔÀÏ¿â½øÊý¾Ý£¬ÕâÑùµ±»¹Ô­ºÃÊý¾Ý¿âÖ®ºóʹÓÃSQL Server Êý¾Ý¿âÇ¨ÒÆÆ«·½À´×ªÒÆ×îеÄÊý¾Ý£¬ÕâÑùå´»úµÄʱ¼ä»áÇ÷ÏòÓÚ0£»

2. ÆäʵΪÁËÈ·±£Ä³Ð©Îļþ×é²»±»Ð޸ģ¬¿ÉÒÔÉèÖÃÎļþ×éµÄÖ»¶ÁÊôÐÔ£¬ÕâÑù¿ÉÒÔÈ·±£Ö»ÓÐij¸öÎļþ×éÔÚ½øÐÂÊý¾Ý£¬¿ÉϧµÄÊÇÉèÖÃÁËÖ»¶ÁÒ²ÎÞ·¨¿½±´ÕâЩÎļþ×éÎļþͨ¹ýFTP´«Ê䣬Ìáʾ£º²Ù×÷ÎÞ·¨Íê³É£¬ÒòΪÎļþÒÑÔÚSQL Server£¨MSSQLSERVER£©Öдò¿ª¡£

3. ÉÏÃæ½Å±¾µÄÿ¸öÎļþ×éÖÐÖ»°üº¬ÁËÒ»¸öÎļþ£¬Èç¹ûÒ»¸öÎļþ×é°üº¬¶à¸öÎļþ£¬ÄǾÍÐèÒªÐÞ¸ÄϽű¾ÁË£»

4. ¸ßÎļÑÔø¾­Ëµ¹ý£¬¿ÉÒÔÏÈɾ³ýË÷Òý£¬ÔÙѹËõ±¸·Ý£¬»¹Ô­Ö®ºóÔÙ´´½¨Ë÷Òý£¬Êǵģ¬Õâ²»·ÀÊÇÒ»¸öºÃ·½·¨£¬²»¹ýÐèÒª¿¼ÂÇÁ½µã£¬Ò»¸öÊÇÔÚ»¹Ô­Ö®ºó´´½¨Ë÷ÒýµÄËÙ¶ÈÓëʱ¼ä£¬Èç¹û´ÅÅÌËٶȲ»Ëã¿ì£¬ÄÇÄã¾ÍÒª¿¼ÂÇɾ³ýË÷ÒýÊÇ·ñÊʺÏÁË£»ÁíÍâÒ»µãÊÇÄãµÄÊý¾Ý¿âÊÇ·ñÄÜÍ£»úÈÃÄãɾ³ýË÷Òý£¬Õâ¸ö¸ú¾ßÌåµÄÒµÎñÓйأ»

Áù.ÒÉÎÊ£¨Questions£©

1. ¶Ôprimary½øÐÐÍêÕûÎļþ×鱸·Ý£¨×÷Ϊ»ù±¸·Ý£©£¬¶ÔFG1½øÐÐÍêÕûÎļþ×鱸·Ý£¨×÷Ϊ»ù±¸·Ý£©ÕâЩÃèÊöÓÐÎÊÌâ°É£¿¶Ôprimary½øÐÐÍêÕûÎļþ×鱸·ÝÓ¦¸Ã²»»áÉú³É»ùÏߵİɣ¿ SQLÎļþ×鱸·ÝºÍ»¹Ô­

2. Èç¹ûÔÚͬһ¸öÎļþ×éÖÐÓÐÁ½¸öÒÔÉϵķÖÇøÖµ£¬¾ÍÊǰÑÁ½¸ö¶ÎµÄ·ÖÇø·½°¸ÖÐָͬÏòͬһ¸ö·ÖÇøÎļþ×飬ÄÇÔÚ±¸·ÝºÍ»¹Ô­ÓÐʲôÐèҪעÒâµÄÄØ£¿Äܳɹ¦±¸·Ý»¹Ô­Â

--±¸·Ý·ÖÇø
DECLARE @FileName VARCHAR(200)
SET @FileName = 'G:\DBBackup\FG_Archive_Id_05_null.bak'
BACKUP DATABASE [DataBaseName]
FILEGROUP='FG_Archive_Id_05' TO DISK=@FileName WITH FORMAT
GO

--»¹Ô­·ÖÇø
RESTORE DATABASE [DataBaseName]
FILEGROUP='FG_Archive_Id_05' FROM DISK='E:\DBBackup\FG_Archive_Id_05_null.bak' WITH  FILE = 1, 
MOVE N'FG_Archive_Id_05_data' TO N'E:\DataBase\FG_Archive\FG_Archive_Id_05_data.ndf',  
NORECOVERY
GO

½â´ð£º´Ó±¸·ÝºÍ»¹Ô­µÄ´úÂë¿ÉÒÔ¿´³öÖ»ÊǰÑFILEGROUPÓëbak¶ÔÓ¦£¬ÓëndfÎļþ¶ÔÓ¦£¬ËùÒÔÊDz»ÐèÒªÀí»áÕâ¸öÎļþ×éÖаüº¬Á˶àÉÙ¸öÂß¼­·ÖÇø£»

   
2527 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

MySQLË÷Òý±³ºóµÄÊý¾Ý½á¹¹
MySQLÐÔÄܵ÷ÓÅÓë¼Ü¹¹Éè¼Æ
SQL ServerÊý¾Ý¿â±¸·ÝÓë»Ö¸´
ÈÃÊý¾Ý¿â·ÉÆðÀ´ 10´óDB2ÓÅ»¯
oracleµÄÁÙʱ±í¿Õ¼äдÂú´ÅÅÌ
Êý¾Ý¿âµÄ¿çƽ̨Éè¼Æ


²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿â
¸ß¼¶Êý¾Ý¿â¼Ü¹¹Éè¼ÆÊ¦
HadoopÔ­ÀíÓëʵ¼ù
Oracle Êý¾Ý²Ö¿â
Êý¾Ý²Ö¿âºÍÊý¾ÝÍÚ¾ò
OracleÊý¾Ý¿â¿ª·¢Óë¹ÜÀí


GE Çø¿éÁ´¼¼ÊõÓëʵÏÖÅàѵ
º½Ìì¿Æ¹¤Ä³×Ó¹«Ë¾ Nodejs¸ß¼¶Ó¦Óÿª·¢
ÖÐÊ¢Òæ»ª ׿Խ¹ÜÀíÕß±ØÐë¾ß±¸µÄÎåÏîÄÜÁ¦
ijÐÅÏ¢¼¼Êõ¹«Ë¾ PythonÅàѵ
ij²©²ÊITϵͳ³§ÉÌ Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
ÖйúÓÊ´¢ÒøÐÐ ²âÊÔ³ÉÊì¶ÈÄ£Ðͼ¯³É(TMMI)
ÖÐÎïÔº ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí