MS SQL Server: BackUP เบเปˆเบฝเบงเบเบฑเบš steroids

เบฅเปเบ–เป‰เบฒ! เบฅเปเบ–เป‰เบฒ! เปเบ—เป‰เบˆเบดเบ‡เปเบฅเป‰เบง, เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบญเบทเปˆเบ™เบเปˆเบฝเบงเบเบฑเบšเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ SQL Server. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบšเปเปˆโ€‹เปเบกเปˆเบ™โ€‹เปเบ•เปˆโ€‹เป€เบงเบปเป‰เบฒโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบ„เบงเบฒเบกโ€‹เปเบ•เบโ€‹เบ•เปˆเบฒเบ‡โ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบเบฒเบ™โ€‹เบŸเบทเป‰เบ™โ€‹เบ•เบปเบงโ€‹เปเบฅเบฐโ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹เบšเบฑเบ™โ€‹เบ—เบถเบ overgrownโ€‹.

เบšเบฒเบ‡เบ—เบต (เบšเบฒเบ‡เบ—เบต), เบซเบผเบฑเบ‡เบˆเบฒเบเบญเปˆเบฒเบ™เบ‚เปเป‰เบ„เบงเบฒเบกเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเบฐเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบฅเบถเบšเบญเบญเบเบˆเบฒเบเป€เบˆเบปเป‰เบฒเป‚เบ”เบเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบˆเบฐเบ–เบทเบเบฅเบถเบšเบญเบญเบเปƒเบ™เบ„เบทเบ™เบกเบทเป‰เบญเบทเปˆเบ™, เบ”เบต, เป„เบงเบเบงเปˆเบฒ 1.5 เป€เบ—เบปเปˆเบฒ. เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบเป‰เบญเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบ—เปˆเบฒเบ™เปƒเบŠเป‰เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™ BACKUP DATABASE เป€เบฅเบฑเบเบ™เป‰เบญเบ.

เบ–เป‰เบฒเป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบˆเบฐเปเบˆเป‰เบ‡เบ•เปเปˆเป€เบˆเบปเป‰เบฒ, เบ‚เป‰เบญเบเบ‚เปเป‚เบ—เบ”. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบญเปˆเบฒเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบ—เบตเปˆ Google เป„เบ”เป‰เบฎเบฑเบšเบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบงเปˆเบฒ "habr sql server backup", เปเบฅเบฐเปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ”เบฝเบงเบšเปเปˆเป„เบ”เป‰เบžเบปเบšเป€เบซเบฑเบ™เบเบฒเบ™เบเปˆเบฒเบงเป€เบ–เบดเบ‡เปƒเบ”เป†เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเป€เบงเบฅเบฒเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเบฒเบกเบฒเบ”เบกเบตเบญเบดเบ”เบ—เบดเบžเบปเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™.

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ—เบฑเบ™โ€‹เบ—เบตโ€‹เบ—เบฑเบ™โ€‹เปƒเบ”โ€‹เบˆเบฐโ€‹เบ”เบถเบ‡โ€‹เบ”เบนเบ”โ€‹เบ„เบงเบฒเบกโ€‹เบชเบปเบ™โ€‹เปƒเบˆโ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เบเบฑเบšโ€‹เบ„เปเบฒโ€‹เป€เบซเบฑเบ™โ€‹เบ‚เบญเบ‡ Alexander Gladchenko (@mssqlhelp):

เบขเปˆเบฒเบ›เปˆเบฝเบ™เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต BUFFERCOUNT, BLOCKSIZE, MAXTRANSFERSIZE เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”. เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹, เบ—เปˆเบฒเบ™โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเปเบฒโ€‹เบˆเบฑเบ”โ€‹เบ‚เบญเบ‡โ€‹เบšเบฑเบ™โ€‹เบซเบฒโ€‹เบ„เบงเบฒเบกโ€‹เบŠเบปเบ‡โ€‹เบˆเปเบฒโ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹.

เปเบ™เปˆเบ™เบญเบ™, เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ”เบตเบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เป€เบ™เบทเป‰เบญเบซเบฒเบ—เบตเปˆเบชเบฐเบซเบผเบฒเบ”เบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบ›เบฐเบเบฒเบ”เป€เบ™เบทเป‰เบญเบซเบฒเบชเบฐเป€เบžเบฒเบฐ, เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบเปเบฅเบฐเบ™เบต. เบกเบตเบ—เบฑเบ‡เบšเบปเบ”เบ„เบงเบฒเบก/เบšเบปเบ”เบ„เบงเบฒเบกเบ—เบตเปˆเป€เบ›เบฑเบ™เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ” เปเบฅเบฐ เบžเบฒเบชเบฒเบฅเบฑเบ”เป€เบŠเบ (เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบฎเบนเป‰เบชเบถเบเบชเบฑเบšเบชเบปเบ™เบชเบฐเป€เปเบตเบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบˆเบฐเป€เบญเบตเป‰เบ™เปƒเบซเป‰เบ–เบทเบเบ•เป‰เบญเบ‡) เบ—เบตเปˆเบญเบธเบ—เบดเบ”เปƒเบซเป‰เบเบฑเบšเบซเบปเบงเบ‚เปเป‰เบ™เบตเป‰. เบ™เบตเป‰เปเบกเปˆเบ™เบšเบฒเบ‡เบญเบฑเบ™เบ—เบตเปˆเบ‚เป‰เบญเบเบžเบปเบš: เป€เบงเบฅเบฒ, ะดะฒะฐ, เบชเบฒเบก (เปƒเบ™ sql.ru).

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ, เบ‚เป‰เบญเบเบˆเบฐเบ„เบฑเบ”เบ•เบดเบ” syntax BACKUP เบ—เบตเปˆเบ–เบทเบเบ–เบญเบ”เบญเบญเบเป€เบฅเบฑเบเบ™เป‰เบญเบเบˆเบฒเบ MSDN (เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ‚เบฝเบ™เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบเปˆเบฝเบงเบเบฑเบš BACKUP DATABASE, เปเบ•เปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เปƒเบŠเป‰เบเบฑเบšเบ—เบฑเบ‡เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเปเบฅเบฐเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เปเบ•เปˆเบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบซเบ™เป‰เบญเบ):

BACKUP DATABASE { database_name | @database_name_var }
  TO <backup_device> [ ,...n ]
  <...>
  [ WITH { <...>
           | <general_WITH_options> [ ,...n ] } ]
[;]

<general_WITH_options> [ ,...n ]::=
<...>
--Media Set Options
 <...>
 | BLOCKSIZE = { blocksize | @blocksize_variable }

--Data Transfer Options
   BUFFERCOUNT = { buffercount | @buffercount_variable }
 | MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }
<...>

<โ€ฆ> - เบกเบฑเบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบกเบตเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เปเบ•เปˆเบ‚เป‰เบญเบเป€เบญเบปเบฒเบกเบฑเบ™เบญเบญเบเป€เบžเบฒเบฐเบงเปˆเบฒเบ•เบญเบ™เบ™เบตเป‰เบกเบฑเบ™เบšเปเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบซเบปเบงเบ‚เปเป‰.

เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเป€เบˆเบปเป‰เบฒเป€เบญเบปเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เปเบ™เบงเปƒเบ”? เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ "เบชเบญเบ™" เบงเบดเบ—เบตเบเบฒเบ™เป€เบญเบปเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบซเบผเบฒเบเบ•เบทเป‰เบšเบปเบ”เบ„เบงเบฒเบก? เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบ–เป‰เบฒเบ‚เป‰เบญเบเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ„เบฑเป‰เบ‡เบ”เบฝเบงเบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบšเปเปˆเปƒเบซเบเปˆเบซเบผเบฒเบ, เบ‚เป‰เบญเบเบˆเบฐเบ‚เบฝเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”:

BACKUP DATABASE smth
TO DISK = 'D:Backupsmth.bak'
WITH STATS = 10, CHECKSUM, COMPRESSION, COPY_ONLY;
--ะปะฐะดะฝะพ, CHECKSUM ั ะฝะฐะฟะธัะฐะป ั‚ะพะปัŒะบะพ ั‡ั‚ะพะฑั‹ ะบะฐะทะฐั‚ัŒัั ัƒะผะฝะตะต

เปเบฅเบฐ, เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™ 75-90% เบ‚เบญเบ‡เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบดเปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเบฅเบฐเบšเบธเป„เบงเป‰เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ”เบต, เบเบฑเบ‡เบกเบต INIT, เบ‚เป‰เบฒเบก. เบ—เปˆเบฒเบ™เป„เบ”เป‰เป„เบ›เบขเป‰เบฝเบกเบขเบฒเบก MSDN เบšเป? เบ—เปˆเบฒเบ™เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเปเบฒเบฅเบฑเบšเบซเบ™เป‰เบฒเบˆเปเบซเบ™เบถเปˆเบ‡เปเบฅเบฐเป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบšเป? เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเบฑเบ‡โ€‹เป„เบ”เป‰โ€‹เป€เบซเบฑเบ™ ...

เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบฎเบนเป‰เปเบฅเป‰เบงเบงเปˆเบฒเบ•เปเปˆเป„เบ›เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบชเบฒเบกเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เบ—เปเบฒเบญเบดเบ” - BLOCKSIZE, BUFFERCOUNT เปเบฅเบฐ MAXTRANSFERSIZE. เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบˆเบฒเบ MSDN:

BLOCKSIZE = { เบ‚เบฐเปœเบฒเบ” | @ blocksize_variable } - เบŠเบตเป‰เบšเบญเบเบ‚เบฐเปœเบฒเบ”เบšเบผเบฑเบญเบเบ—เบฒเบ‡เบเบฒเบเบฐเบžเบฒเบšเปƒเบ™เป„เบšเบ•เปŒ. เบ‚เบฐเปœเบฒเบ”เบ—เบตเปˆเบฎเบญเบ‡เบฎเบฑเบšเปเบกเปˆเบ™ 512, 1024, 2048, 4096, 8192, 16, 384, เปเบฅเบฐ 32 bytes (768 KB). เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบกเปˆเบ™ 65 เบชเปเบฒเบฅเบฑเบšเบญเบธเบ›เบฐเบเบญเบ™ tape เปเบฅเบฐ 536 เบชเปเบฒเบฅเบฑเบšเบญเบธเบ›เบฐเบเบญเบ™เบญเบทเปˆเบ™เป†. เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบดเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ™เบตเป‰เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบฒเบฐเบงเปˆเบฒเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™ BACKUP เบˆเบฐเป€เบฅเบทเบญเบเบ‚เบฐเบซเบ™เบฒเบ”เบšเบฅเบฑเบญเบเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบญเบธเบ›เบฐเบเบญเบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบฐเปœเบฒเบ”เบšเบฅเบฑเบญเบเบˆเบฐเบฅเบปเบšเบฅเป‰เบฒเบ‡เบเบฒเบ™เป€เบฅเบทเบญเบเบ‚เบฐเปœเบฒเบ”เบšเบฅเบฑเบญเบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบขเปˆเบฒเบ‡เบˆเบฐเปเบˆเป‰เบ‡.

BUFFERCOUNT = { buffercount | @ buffercount_variable } - เบเบณเบ™เบปเบ”เบˆเบณเบ™เบงเบ™เบ—เบฑเบ‡เปเบปเบ”เบ‚เบญเบ‡ I/O buffers เบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰เบชเบณเบฅเบฑเบšเบเบฒเบ™เบ”เบณเป€เบ™เบตเบ™เบเบฒเบ™เบชเบณเบฎเบญเบ‡. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบˆเปเบฒเบ™เบงเบ™เบšเบงเบเปƒเบ”เป†, เปเบ•เปˆเบˆเปเบฒเบ™เบงเบ™ buffers เบˆเปเบฒเบ™เบงเบ™เบซเบผเบงเบ‡เบซเบผเบฒเบเบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเบขเบนเปˆเบ™เบญเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบžเบทเป‰เบ™เบ—เบตเปˆเบ—เบตเปˆเบขเบนเปˆ virtual เบซเบผเบฒเบเป€เบเบตเบ™เป„เบ›เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ Sqlservr.exe.

เบˆเบณเบ™เบงเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบ—เบฑเบ‡เปเบปเบ”เบ—เบตเปˆเปƒเบŠเป‰เป‚เบ”เบ buffers เปเบกเปˆเบ™เบเบณเบ™เบปเบ”เป‚เบ”เบเบชเบนเบ”เบ•เปเปˆเป„เบ›เบ™เบตเป‰: BUFFERCOUNT * MAXTRANSFERSIZE.

เบ‚เบฐเบซเบเบฒเบเบชเบนเบ‡เบชเบธเบ” = { maxtransfersize | @ maxtransfersize_variable } เบฅเบฐเบšเบธเบ‚เบฐเปœเบฒเบ”เปเบžเบฑเบเป€เบเบฑเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปƒเบซเบเปˆเบ—เบตเปˆเบชเบธเบ”, เป€เบ›เบฑเบ™เป„เบšเบ•เปŒ, เป€เบžเบทเปˆเบญเปเบฅเบเบ›เปˆเบฝเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ SQL Server เปเบฅเบฐเบชเบทเปˆเบŠเบธเบ”เบชเบณเบฎเบญเบ‡. เบฎเบญเบ‡เบฎเบฑเบšเบซเบผเบฒเบ 65 bytes (536 KB) เบชเบนเบ‡เบชเบธเบ” 64 bytes (4 MB).

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบชเบฒโ€‹เบšเบฒเบ™ - เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เบญเปˆเบฒเบ™โ€‹เบ™เบตเป‰โ€‹เบกเบฒโ€‹เบเปˆเบญเบ™โ€‹, เปเบ•เปˆโ€‹เบงเปˆเบฒโ€‹เบกเบฑเบ™โ€‹เบšเปเปˆโ€‹เป€เบ„เบตเบโ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™โ€‹เบเบฑเบšโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบซเบผเบฒเบโ€‹เบ›เบฒเบ™โ€‹เปƒเบ”โ€‹เบ‚เบญเบ‡โ€‹เบœเบปเบ™โ€‹เบเบฐโ€‹เบ—เบปเบšโ€‹เบ—เบตเปˆโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบกเบตโ€‹เบ•เปเปˆโ€‹เบœเบฐโ€‹เบฅเบดเบ”โ€‹เบ•เบฐโ€‹เบžเบฑเบ™โ€‹. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™, เบ‚เป‰เบญเบเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡ "เบญเบญเบเบกเบฒ" เปเบฅเบฐเบเบญเบกเบฎเบฑเบšเบงเปˆเบฒเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบšเปเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเป€เบฎเบฑเบ”. เบ‚เป‰เบญเบเบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบญเปˆเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบš buffered I/O เปเบฅเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบฎเบฒเบ”เป„เบ”. เบกเบทเป‰เบซเบ™เบถเปˆเบ‡เบ‚เป‰เบญเบเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เบชเบฐเบ„เบดเบšเบ—เบตเปˆเบˆเบฐเบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบ„เปˆเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเปเบ™เบงเปƒเบ”เบ•เปเปˆเบ„เบงเบฒเบกเป„เบงเบ—เบตเปˆเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”.

เบ‚เป‰เบญเบเบชเป‰เบฒเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ, เบ‚เบฐเบซเบ™เบฒเบ”เบ›เบฐเบกเบฒเบ™ 10 GB, เปƒเบชเปˆเบกเบฑเบ™เปƒเบชเปˆ SSD, เปเบฅเบฐเปƒเบชเปˆเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™ HDD.

เบ‚เป‰เบญเบเบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบŠเบปเปˆเบงเบ„เบฒเบงเป€เบžเบทเปˆเบญเป€เบเบฑเบšเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เบ‚เป‰เบญเบเบšเปเปˆเบกเบตเบกเบฑเบ™เบŠเบปเปˆเบงเบ„เบฒเบง, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบ‚เบธเบ”เบ„เบปเป‰เบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เปเบ•เปˆเป€เบˆเบปเป‰เบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเป€เบญเบ‡):

DROP TABLE IF EXISTS ##bt_results; 

CREATE TABLE ##bt_results (
    id              int IDENTITY (1, 1) PRIMARY KEY,
    start_date      datetime NOT NULL,
    finish_date     datetime NOT NULL,
    backup_size     bigint NOT NULL,
    compressed_size bigint,
    block_size      int,
    buffer_count    int,
    transfer_size   int
);

เบซเบผเบฑเบเบเบฒเบ™เบ‚เบญเบ‡เบชเบฐเบ„เบดเบšเปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบ - loops nested, เปเบ•เปˆเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ„เปˆเบฒเบ‚เบญเบ‡เบซเบ™เบถเปˆเบ‡เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต, เปƒเบชเปˆเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ BACKUP, เบšเบฑเบ™เบ—เบถเบเบšเบฑเบ™เบ—เบถเบเบชเบธเบ”เบ—เป‰เบฒเบเบ—เบตเปˆเบกเบตเบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เบˆเบฒเบ msdb.dbo.backupset, เบฅเบถเบšเป„เบŸเบฅเปŒเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐ iteration เบ•เปเปˆเป„เบ›. . เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป€เบญเบปเบฒเบกเบฒเบˆเบฒเบเบŠเบธเบ”เบชเปเบฒเบฎเบญเบ‡, เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เปเบกเปˆเบ™เบชเบนเบ™เป€เบชเบเบšเบฒเบ‡เบขเปˆเบฒเบ‡ (เบšเปเปˆเบกเบตเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบงเบดเบ™เบฒเบ—เบต), เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบขเบนเปˆเบฅเบญเบ”เบ™เบตเป‰.

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ” เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เป€เบ›เบตเบ”เปƒเบŠเป‰ xp_cmdshell เป€เบžเบทเปˆเบญเบฅเบถเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ (เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบขเปˆเบฒเบฅเบทเบกเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™):

EXEC sp_configure 'show advanced options', 1;  
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
EXEC sp_configure 'show advanced options', 0;  
GO

เปเบฅเป‰เบง, เบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบง:

DECLARE @tmplt AS nvarchar(max) = N'
BACKUP DATABASE [bt]
TO DISK = ''D:SQLServerbackupbt.bak''
WITH 
    COMPRESSION,
    BLOCKSIZE = {bs},
    BUFFERCOUNT = {bc},
    MAXTRANSFERSIZE = {ts}';

DECLARE @sql AS nvarchar(max);

/* BLOCKSIZE values */
DECLARE @bs     int = 4096, 
        @max_bs int = 65536;

/* BUFFERCOUNT values */
DECLARE @bc     int = 7,
        @min_bc int = 7,
        @max_bc int = 800;

/* MAXTRANSFERSIZE values */
DECLARE @ts     int = 524288,   --512KB, default = 1024KB
        @min_ts int = 524288,
        @max_ts int = 4194304;  --4MB

SELECT TOP 1 
    @bs = COALESCE (block_size, 4096), 
    @bc = COALESCE (buffer_count, 7), 
    @ts = COALESCE (transfer_size, 524288)
FROM ##bt_results
ORDER BY id DESC;

WHILE (@bs <= @max_bs)
BEGIN
    WHILE (@bc <= @max_bc)
    BEGIN       
        WHILE (@ts <= @max_ts)
        BEGIN
            SET @sql = REPLACE (REPLACE (REPLACE(@tmplt, N'{bs}', CAST(@bs AS nvarchar(50))), N'{bc}', CAST (@bc AS nvarchar(50))), N'{ts}', CAST (@ts AS nvarchar(50)));

            EXEC (@sql);

            INSERT INTO ##bt_results (start_date, finish_date, backup_size, compressed_size, block_size, buffer_count, transfer_size)
            SELECT TOP 1 backup_start_date, backup_finish_date, backup_size, compressed_backup_size,  @bs, @bc, @ts 
            FROM msdb.dbo.backupset
            ORDER BY backup_set_id DESC;

            EXEC xp_cmdshell 'del "D:SQLServerbackupbt.bak"', no_output;

            SET @ts += @ts;
        END
        
        SET @bc += @bc;
        SET @ts = @min_ts;

        WAITFOR DELAY '00:00:05';
    END

    SET @bs += @bs;
    SET @bc = @min_bc;
    SET @ts = @min_ts;
END

เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบ—เบฑเบ™เบ—เบตเบ—เบฑเบ™เปƒเบ”เบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบเบฐเบˆเปˆเบฒเบ‡เปเบˆเป‰เบ‡เบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบ—เบตเปˆเบ™เบตเป‰, เบ‚เบฝเบ™เปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™เบซเบผเบท PM. เบชเปเบฒเบฅเบฑเบšเบ•เบญเบ™เบ™เบตเป‰, เบ‚เป‰เบญเบเบˆเบฐเบšเบญเบเป€เบˆเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบ‚เป‰เบญเบเปƒเบชเปˆเปƒเบ™ BACKUP DATABASE.

เบชเปเบฒเบฅเบฑเบš BLOCKSIZE เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบฅเบฒเบเบเบฒเบ™ "เบ›เบดเบ”" เบ‚เบญเบ‡เบ„เปˆเบฒ, เปเบฅเบฐเบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบเบฑเบš BLOCKSIZE < 4KB. MAXTRANSFERSIZE เบ•เบปเบงเป€เบฅเบเปƒเบ”เบ™เบถเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ„เบนเบ™เบ‚เบญเบ‡ 64KB - เบˆเบฒเบ 64KB เบซเบฒ 4MB. เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบกเปˆเบ™ 1024KB, เบ‚เป‰เบญเบเป€เบญเบปเบฒ 512 - 1024 - 2048 - 4096.

เบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบเบเบฑเบš BUFFERCOUNT - เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเบšเบงเบเปƒเบ”เป†, เปเบ•เปˆเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบงเบปเป‰เบฒเบงเปˆเบฒ เบกเบฑเบ™เบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆเปเบ™เบงเปƒเบ”เปƒเบ™ BACKUP DATABASE เปเบฅเบฐเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ„เปˆเบฒเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบˆเบถเปˆเบ‡เป€เบ›เบฑเบ™เบญเบฑเบ™เบ•เบฐเบฅเบฒเบ?. เบกเบฑเบ™เบเบฑเบ‡เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบงเบดเบ—เบตเบเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบงเปˆเบฒ BUFFERCOUNT เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ•เบปเบงเบˆเบดเบ‡เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบ”เป‰เบงเบ - เบชเปเบฒเบฅเบฑเบšเบ‚เป‰เบญเบเบกเบฑเบ™เปเบกเปˆเบ™ 7. เบšเปเปˆเบกเบตเบˆเบธเบ”เปƒเบ”เปƒเบ™เบเบฒเบ™เบซเบผเบธเบ”เบœเปˆเบญเบ™เบกเบฑเบ™, เปเบฅเบฐเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เป€เบ—เบดเบ‡เป„เบ”เป‰เบ–เบทเบเบ„เบปเป‰เบ™เบžเบปเบšเป‚เบ”เบเบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡ - เบเบฑเบš BUFFERCOUNT = 896 เปเบฅเบฐ MAXTRANSFERSIZE = 4194304 เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบซเบผเบธเบ”เบฅเบปเบ‡เบเบฑเบš เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ” (เบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เบฝเบ™เป„เบงเป‰เปƒเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡):

Msg 3013, Level 16, State 1, Line 7 BACKUP DATABASE เบเปเบฒเบฅเบฑเบ‡เบขเบธเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบด.

Msg 701, Level 17, State 123, Line 7 เบกเบตเบ„เบงเบฒเบกเบˆเบณเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบšเปเปˆเบžเบฝเบ‡เบžเปเปƒเบ™ resource pool 'default' เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ™เบตเป‰.

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš, เบ—เปเบฒเบญเบดเบ”เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบชเบฐเปเบ”เบ‡เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเปƒเบ”เป†เบ—เบฑเบ‡เบซเบกเบปเบ”:

BACKUP DATABASE [bt]
TO DISK = 'D:SQLServerbackupbt.bak'
WITH COMPRESSION;

เบ”เบต, เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™:

เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070072 เปœเป‰เบฒเบชเบณเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ 'bt', เป„เบŸเบฅเปŒ 'bt' เปƒเบ™เป„เบŸเบฅเปŒ 1.

เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 2 เปœเป‰เบฒเบชเบณเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ 'bt', เป„เบŸเบฅเปŒ 'bt_log' เปƒเบ™เป„เบŸเบฅเปŒ 1.

BACKUP DATABASE เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 53.171 เบงเบดเบ™เบฒเบ—เบต (157.227 MB/เบงเบดเบ™เบฒเบ—เบต).

script เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡, เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™, เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบชเบญเบ‡เบชเบฒเบกเบŠเบปเปˆเบงเป‚เบกเบ‡, เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™ google spreadsheet. เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ„เบฑเบ”เป€เบฅเบทเบญเบเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบกเบตเบชเบฒเบกเป€เบงเบฅเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ” (เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบžเบฐเบเบฒเบเบฒเบกเบชเป‰เบฒเบ‡เบเบฒเบŸเบ—เบตเปˆเบชเบงเบเบ‡เบฒเบก, เปเบ•เปˆเปƒเบ™เบšเบปเบ”เบ‚เบฝเบ™เบ‚เป‰เบญเบเบˆเบฐเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เปเบฅเบฐเปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™. @mixsture เป€เบžเบตเปˆเบก เบฎเบนเบšเบžเบฒเบšเป€เบขเบฑเบ™เบซเบผเบฒเบ).

SELECT TOP 7 WITH TIES 
    compressed_size, 
    block_size, 
    buffer_count, 
    transfer_size,
    DATEDIFF(SECOND, start_date, finish_date) AS backup_time_sec
FROM ##bt_results
ORDER BY backup_time_sec ASC;

MS SQL Server: BackUP เบเปˆเบฝเบงเบเบฑเบš steroids

เป€เบญเบปเบฒ เปƒเบˆ เปƒเบชเปˆ, เป€เบ›เบฑเบ™ เบšเบฑเบ™ เบ—เบถเบ เบ—เบตเปˆ เบชเปเบฒ เบ„เบฑเบ™ เบซเบผเบฒเบ เบˆเบฒเบ @mixsture เบˆเบฒเบเบ™เบฑเป‰เบ™ เบ„เบณ เป€เบซเบฑเบ™:

เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบขเปˆเบฒเบ‡เบซเบกเบฑเป‰เบ™เปƒเบˆเบงเปˆเบฒเบเบฒเบ™เบžเบปเบงเบžเบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เปเบฅเบฐเบ„เบงเบฒเบกเป„เบงเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบฒเบเปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบ„เปˆเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เปเบšเบšเบชเบธเปˆเบก, เบšเปเปˆเบกเบตเบฎเบนเบšเปเบšเบš. เปเบ•เปˆเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบญเบญเบเบˆเบฒเบเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปเบ™เปˆเบ™เบญเบ™เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ—เบตเปˆเบ”เบตเบ•เปเปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš

เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เบžเบฝเบ‡เปเบ•เปˆเป‚เบ”เบเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™ BACKUP เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบš 2 เป€เบ—เบปเปˆเบฒเปƒเบ™เป€เบงเบฅเบฒเบเบฒเบ™เป‚เบเบเบเป‰เบฒเบเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™: 26 เบงเบดเบ™เบฒเบ—เบต, เบ—เบฝเบšเบเบฑเบš 53 เปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบ™เบฑเป‰เบ™เบšเปเปˆเปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบšเปเปˆเบ”เบต, เปเบกเปˆเบ™เบšเป? เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบšเบดเปˆเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบน. เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบ–เป‰เบฒเบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒ 4 เป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบˆเบฐเบŸเบทเป‰เบ™เบ•เบปเบง?

เบ—เปเบฒเบญเบดเบ”, เปƒเบซเป‰เบงเบฑเบ”เปเบ—เบเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฐเบŸเบทเป‰เบ™เบŸเบนเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™:

RESTORE DATABASE [bt]
FROM DISK = 'D:SQLServerbackupbt.bak'
WITH REPLACE, RECOVERY;

เบ”เบต, เบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡เบฎเบนเป‰เบงเปˆเบฒ, เบงเบดเบ—เบตเบเบฒเบ™เปเบกเปˆเบ™เบกเบต, เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™, เบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบง. เปเบฅเบฐเบ‚เป‰เบญเบเป€เบฎเบฑเบ”เปเบšเบšเบ™เบตเป‰:

เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070072 เปœเป‰เบฒเบชเบณเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ 'bt', เป„เบŸเบฅเปŒ 'bt' เปƒเบ™เป„เบŸเบฅเปŒ 1.

เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 2 เปœเป‰เบฒเบชเบณเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ 'bt', เป„เบŸเบฅเปŒ 'bt_log' เปƒเบ™เป„เบŸเบฅเปŒ 1.

เบŸเบทเป‰เบ™เบŸเบนเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 40.752 เบงเบดเบ™เบฒเบ—เบต (205.141 MB/เบงเบดเบ™เบฒเบ—เบต).

เบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเบเบนเป‰เบ‚เปเป‰เบกเบนเบ™เบชเบณเบฎเบญเบ‡เบ—เบตเปˆเป€เบญเบปเบฒเบกเบฒเบเบฑเบš BLOCKSIZE, BUFFERCOUNT เปเบฅเบฐ MAXTRANSFERSIZE เบ—เบตเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡.

BLOCKSIZE = 16384, BUFFERCOUNT = 224, MAXTRANSFERSIZE = 4194304

เบŸเบทเป‰เบ™เบŸเบนเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 32.283 เบงเบดเบ™เบฒเบ—เบต (258.958 MB/เบงเบดเบ™เบฒเบ—เบต).

BLOCKSIZE = 4096, BUFFERCOUNT = 448, MAXTRANSFERSIZE = 4194304

เบŸเบทเป‰เบ™เบŸเบนเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 32.682 เบงเบดเบ™เบฒเบ—เบต (255.796 MB/เบงเบดเบ™เบฒเบ—เบต).

BLOCKSIZE = 16384, BUFFERCOUNT = 448, MAXTRANSFERSIZE = 2097152

เบŸเบทเป‰เบ™เบŸเบนเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 32.091 เบงเบดเบ™เบฒเบ—เบต (260.507 MB/เบงเบดเบ™เบฒเบ—เบต).

BLOCKSIZE = 4096, BUFFERCOUNT = 56, MAXTRANSFERSIZE = 4194304

เบŸเบทเป‰เบ™เบŸเบนเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 32.401 เบงเบดเบ™เบฒเบ—เบต (258.015 MB/เบงเบดเบ™เบฒเบ—เบต).

เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™ RESTORE DATABASE เบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบง; เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เบกเบฑเบ™; SQL Server เบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เบเปเบฒเบ™เบปเบ”เบžเบงเบเบกเบฑเบ™เบˆเบฒเบเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐโ€‹เป€เบ›เบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เปเบˆเป‰เบ‡โ€‹เบงเปˆเบฒโ€‹เป€เบ–เบดเบ‡โ€‹เปเบกเปˆเบ™โ€‹เบงเปˆเบฒโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบŸเบทเป‰เบ™โ€‹เบ•เบปเบงโ€‹เบเปโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เป€เบžเบตเปˆเบกโ€‹เบ‚เบถเป‰เบ™ - เป€เบเบทเบญเบš 20โ€‹% เป„เบงโ€‹เบ‚เบถเป‰เบ™ (เบ”เป‰เบงเบเบ„เบงเบฒเบกเบŠเบทเปˆเบชเบฑเบ”, เบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเปƒเบ™เบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบง, เบ‚เป‰เบญเบเปเบฅเปˆเบ™เบœเปˆเบฒเบ™เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ "เป„เบงเบ—เบตเปˆเบชเบธเบ”" เบซเบผเบฒเบเป†เบ„เบฑเป‰เบ‡เปเบฅเบฐเปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบชเบทเปˆเบญเบกเป‚เบŠเบก.).

เปƒเบ™เบเปเบฅเบฐเบ™เบตเปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ‚เปเบŠเบตเป‰เปเบˆเบ‡เบงเปˆเบฒเบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบšเบฒเบ‡เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเบ„เบปเบ™. เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡เป‚เบ”เบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบฎเบฑเบšเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เปเบ•เปˆเบ—เปˆเบฒเบ™เป€เบซเบฑเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ” "เบ›เบฑเบš" เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบงเบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เป„เบงเบ‚เบถเป‰เบ™.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบเบฑเบ‡เปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบ—เปˆเบฒเบ™เบญเปˆเบฒเบ™เป€เบญเบเบฐเบชเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเบกเบต nuances เบชเบฐเป€เบžเบฒเบฐเบเบฑเบšเบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ‚เป‰เบญเบเป€เบฅเบตเปˆเบกเบ‚เบฝเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบฝเบ™เบ—เบฑเบ™เบ—เบตเบเปˆเบฝเบงเบเบฑเบš "เบเบฒเบ™เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš", เป€เบŠเบดเปˆเบ‡เปเบกเปˆเบ™เบ—เบปเปˆเบงเป„เบ›เบซเบผเบฒเบเบเปˆเบงเบฒเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™ "เบ›เบฑเบš" (เป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเปƒเบˆ, เบกเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป‚เบ”เบเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบšเบฒเบ‡เบชเบดเปˆเบ‡เบญเปเบฒเบ™เบงเบเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบชเปเบฒเบฎเบญเบ‡, เบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบกเบตเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™. เป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบเป„เบงเป‰เบเปˆเบญเบ™เปœเป‰เบฒเบ™เบตเป‰), เปเบ•เปˆเบกเบฑเบ™เบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบญเบฐเบ—เบดเบšเบฒเบเบเปˆเบฝเบงเบเบฑเบš Habre เบ„เบทเบเบฑเบ™.

เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบšเบดเปˆเบ‡เปเบ–เบงเบ—เบตเบชเบญเบ‡เปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™, เบžเบฒเบเปƒเบ•เป‰ BACKUP DATABASE, เบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™:

TO <backup_device> [ ,...n ]

เป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒเบˆเบฐเป€เบเบตเบ”เบซเบเบฑเบ‡เบ‚เบถเป‰เบ™เบซเบฒเบเป€เบˆเบปเป‰เบฒเบฅเบฐเบšเบธเบญเบธเบ›เบฐเบเบญเบ™เบชเบณเบฎเบญเบ‡เบซเบผเบฒเบเบญเบฑเบ™? syntax เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบกเบฑเบ™. เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบซเบผเบฒเบเบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™ - เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบฝเบ‡เปเบ•เปˆเบˆเบฐ "เปเบœเปˆเบ‚เบฐเบซเบเบฒเบ" เปƒเบ™เป„เบฅเบเบฐเบญเบธเบ›เบฐเบเบญเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡. เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เปเบ•เปˆเบฅเบฐ "เบญเบธเบ›เบฐเบเบญเบ™" เบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เบˆเบฐเบšเปเปˆเบกเบตเบ›เบฐเป‚เบซเบเบ”, เบชเบนเบ™เป€เบชเบเบซเบ™เบถเปˆเบ‡, เบชเบนเบ™เป€เบชเบเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”. เปเบ•เปˆเบเบฒเบ™ smearing เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ„เบงเบฒเบกเป„เบงเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบ™เบงเปƒเบ”?

เปƒเบซเป‰เบžเบฐเบเบฒเบเบฒเบกเป€เบฎเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบชเบญเบ‡ "เบญเบธเบ›เบฐเบเบญเบ™" เบ—เบตเปˆเบ•เบฑเป‰เบ‡เบขเบนเปˆเบ‚เป‰เบฒเบ‡เบ„เบฝเบ‡เบขเบนเปˆเปƒเบ™เป‚เบŸเบ™เป€เบ”เบตเบ”เบฝเบงเบเบฑเบ™:

BACKUP DATABASE [bt]
TO 
    DISK = 'D:SQLServerbackupbt1.bak',
    DISK = 'D:SQLServerbackupbt2.bak'   
WITH COMPRESSION;

เบžเปเปˆโ€‹เบ‚เบญเบ‡โ€‹เป‚เบฅเบ, เป€เบ›เบฑเบ™โ€‹เบซเบเบฑเบ‡โ€‹เบˆเบถเปˆเบ‡โ€‹เบ–เบทเบโ€‹เป€เบฎเบฑเบ”โ€‹เปเบšเบšโ€‹เบ™เบตเป‰?

เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070072 เปœเป‰เบฒเบชเบณเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ 'bt', เป„เบŸเบฅเปŒ 'bt' เปƒเบ™เป„เบŸเบฅเปŒ 1.

เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 2 เปœเป‰เบฒเบชเบณเบฅเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ 'bt', เป„เบŸเบฅเปŒ 'bt'เป€เบ‚เบปเป‰เบฒโ€‹เบชเบนเปˆโ€‹เบฅเบฐโ€‹เบšเบปเบš 1.

BACKUP DATABASE เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 40.092 เบงเบดเบ™เบฒเบ—เบต (208.519 MB/เบงเบดเบ™เบฒเบ—เบต).

เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™ 25% เป„เบงเบ‚เบถเป‰เบ™เบžเบฝเบ‡เปเบ•เปˆเบญเบญเบเบˆเบฒเบเบชเบตเบŸเป‰เบฒเบšเป? เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบžเบตเปˆเบกเบญเบธเบ›เบฐเบเบญเบ™เบญเบตเบเบชเบญเบ‡เบญเบฑเบ™?

BACKUP DATABASE [bt]
TO 
    DISK = 'D:SQLServerbackupbt1.bak',
    DISK = 'D:SQLServerbackupbt2.bak',
    DISK = 'D:SQLServerbackupbt3.bak',
    DISK = 'D:SQLServerbackupbt4.bak'
WITH COMPRESSION;

BACKUP DATABASE เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 34.234 เบงเบดเบ™เบฒเบ—เบต (244.200 MB/เบงเบดเบ™เบฒเบ—เบต).

เปƒเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เปเบกเปˆเบ™เบ›เบฐเบกเบฒเบ™ 35% เบ‚เบญเบ‡เป€เบงเบฅเบฒเบ‚เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบฝเบ‡เปเบ•เปˆเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เป€เบ›เบฑเบ™ 4 เป„เบŸเบฅเปŒเปƒเบ™เปเบœเปˆเบ™เบ”เบฝเบง. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ•เบปเบงเป€เบฅเบเบ—เบตเปˆเปƒเบซเบเปˆเบเบงเปˆเบฒ - เบšเปเปˆเบกเบตเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‰เบ‚เบญเบ‡เบ‚เป‰เบญเบ, เบ”เบตเบ—เบตเปˆเบชเบธเบ” - 4 เบญเบธเบ›เบฐเบเบญเบ™. เบชเปเบฒเบฅเบฑเบšเป€เบˆเบปเป‰เบฒ - เบ‚เป‰เบญเบเบšเปเปˆเบฎเบนเป‰, เป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เบเบงเบ”เป€เบšเบดเปˆเบ‡. เบ”เบต, เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบญเบธเบ›เบฐเบเบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ - เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เปเบœเปˆเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปเบ—เป‰เป†, เบŠเบปเบกเป€เบŠเบตเบ, เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบ„เบงเบ™เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบเบงเปˆเบฒเป€เบเบปเปˆเบฒ.

เบšเบฑเบ”โ€‹เบ™เบตเป‰โ€‹เปƒเบซเป‰โ€‹เป€เบฎเบปเบฒโ€‹เบกเบฒโ€‹เบฅเบปเบกโ€‹เบเบฑเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบงเบดเบ—เบตโ€‹เบเบฒเบ™โ€‹เบŸเบทเป‰เบ™โ€‹เบŸเบนโ€‹เบ„เบงเบฒเบกโ€‹เบชเบธเบโ€‹เบ™เบตเป‰. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบ›เปˆเบฝเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเปเบฅเบฐเบฅเบฒเบเบŠเบทเปˆเบญเบธเบ›เบฐเบเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”:

RESTORE DATABASE [bt]
FROM 
    DISK = 'D:SQLServerbackupbt1.bak',
    DISK = 'D:SQLServerbackupbt2.bak',
    DISK = 'D:SQLServerbackupbt3.bak',
    DISK = 'D:SQLServerbackupbt4.bak'
WITH REPLACE, RECOVERY;

เบŸเบทเป‰เบ™เบŸเบนเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™ 1070074 เปœเป‰เบฒเบžเบฒเบเปƒเบ™ 38.027 เบงเบดเบ™เบฒเบ—เบต (219.842 MB/เบงเบดเบ™เบฒเบ—เบต).

เป„เบงเป€เบฅเบฑเบเบ™เป‰เบญเบ, เปเบ•เปˆเบšเบฒเบ‡เบšเปˆเบญเบ™เปƒเบเป‰เป†, เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™. เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเป„เบง, เปเบ•เปˆเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™ - เบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”? เบชเปเบฒเบฅเบฑเบšเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒ, เบกเบฑเบ™เป€เบ›เบฑเบ™เบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”เบซเบผเบฒเบ. เบ™เบตเป‰ เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™, เบชเบฐเบ™เบฑเป‰เบ™เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบฎเบฑเบ”เป€เบฅเบทเป‰เบกเบ„เบทเบ™ - เบ–เป‰เบฒเบ—เปˆเบฒเบ™ เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบชเบนเบ™เป€เบชเบเบขเปˆเบฒเบ‡เปœเป‰เบญเบเปœเบถเปˆเบ‡เป„เบŸเบฅเปŒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเบฐเบชเบนเบ™เป€เบชเบเบเบฒเบ™เบชเบณเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบšเบดเปˆเบ‡เบขเบนเปˆเปƒเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฎเบญเบ‡เบ—เบตเปˆเบชเบฐเปเบ”เบ‡เป‚เบ”เบเปƒเบŠเป‰ Trace Flags 3213 เปเบฅเบฐ 3605, เบ—เปˆเบฒเบ™เบˆเบฐเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบญเบธเบ›เบฐเบเบญเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡, เบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ BUFFERCOUNT เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™. เบญเบฒเบ”เบˆเบฐ, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบžเบฐเบเบฒเบเบฒเบกเป€เบฅเบทเบญเบเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบš BUFFERCOUNT, BLOCKSIZE, MAXTRANSFERSIZE, เปเบ•เปˆเบ‚เป‰เบญเบเบšเปเปˆเบชเปเบฒเป€เบฅเบฑเบ”เปƒเบ™เบ—เบฑเบ™เบ—เบต, เปเบฅเบฐเบ‚เป‰เบญเบเบ‚เบตเป‰เบ„เป‰เบฒเบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบˆเปเบฒเบ™เบงเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบญเบฑเบšเบญเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบฅเปเป‰. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบขเบนเปˆเป€เบฎเบทเบญเบ™, เบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบเบฒเบเบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เบชเบฐเบ„เบดเบšเบ„เบทเบ™เปƒเบซเบกเปˆ.

เบชเบธเบ”เบ—เป‰เบฒเบ, เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบฅเบฒเบ„เบฒ. เบ–เป‰เบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเบ‚เบฐเบซเบ™เบฒเบ™เบเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเบซเบผเบฒเบเปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เป€เบžเบฒเบฐเบงเปˆเบฒเบ–เป‰เบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเป„เบง, เปเบœเปˆเบ™เปเบกเปˆเบ™เป€เบ„เบฑเปˆเบ‡เบ„เบฑเบ”เบซเบผเบฒเบ, เบเบฒเบ™เป‚เบซเบผเบ”เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบˆเบฐเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™ (เบ—เปˆเบฒเบ™เบเบฑเบ‡เบ•เป‰เบญเบ‡เบšเบตเบšเบญเบฑเบ”. เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบเบฒเบ™เบšเบดเบ™), เปเบฅเบฐเบ•เบฒเบกเบ„เบงเบฒเบกเป€เบซเบกเบฒเบฐเบชเบปเบก, เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เป‚เบ”เบเบฅเบงเบกเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบซเบผเบธเบ”เบฅเบปเบ‡.

เป€เบงเบปเป‰เบฒเบ•เบฐเบซเบผเบปเบ, เปเบ•เปˆเบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเปƒเบˆเบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™เบงเปˆเบฒเบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เป€เบ›เบตเบ”เป€เบœเบตเบเบซเบเบฑเบ‡เป€เบฅเบตเบ. เบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เบฝเบ™เป„เบงเป‰เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบชเบฒเบ—เบดเบ”เบงเบดเบ—เบตเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™.

เบˆเบปเปˆเบ‡เบˆเบทเปˆเป„เบงเป‰เบงเปˆเบฒเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบขเบนเปˆเปƒเบ™เบญเบฑเบ™เบ•เบฐเบฅเบฒเบเปเบฅเบฐเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡. เบเบงเบ”เป€เบšเบดเปˆเบ‡เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเบขเปˆเบฒเบฅเบทเบกเบเปˆเบฝเบงเบเบฑเบš DBCC CHECKDB.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™