рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡реНрд╣рд░: рд╕реНрдЯрд┐рд░реЙрдЗрдбреНрд╕рд╡рд░ рдмреЕрдХрдЕрдк

рдерд╛рдВрдмрд╛! рдерд╛рдВрдмрд╛! рдЦрд░реЗ рдЖрд╣реЗ, SQL рд╕рд░реНрд╡реНрд╣рд░ рдмреЕрдХрдЕрдкрдЪреНрдпрд╛ рдкреНрд░рдХрд╛рд░рд╛рдВрдмрджреНрджрд▓ рд╣рд╛ рджреБрд╕рд░рд╛ рд▓реЗрдЦ рдирд╛рд╣реА. рдореА рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА рдореЙрдбреЗрд▓рдордзреАрд▓ рдлрд░рдХ рдЖрдгрд┐ рдЕрддрд┐рд╡реГрджреНрдз рд▓реЙрдЧрдЪрд╛ рд╕рд╛рдордирд╛ рдХрд╕рд╛ рдХрд░рд╛рд╡рд╛ рдпрд╛рдмрджреНрджрд▓ рджреЗрдЦреАрд▓ рдмреЛрд▓рдгрд╛рд░ рдирд╛рд╣реА.

рдХрджрд╛рдЪрд┐рдд (рдлрдХреНрдд рдХрджрд╛рдЪрд┐рдд), рд╣реЗ рдкреЛрд╕реНрдЯ рд╡рд╛рдЪрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдкрдг рд╣реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕рд╛рд▓ рдХреА рдорд╛рдирдХ рдорд╛рдзреНрдпрдорд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рдЖрдкрд▓реНрдпрд╛рдХрдбреВрди рдХрд╛рдврд▓реЗрд▓рд╛ рдмреЕрдХрдЕрдк рдЙрджреНрдпрд╛ рд░рд╛рддреНрд░реА, рддрд╕реЗрдЪ, 1.5 рдкрдЯ рд╡реЗрдЧрд╛рдиреЗ рдХрд╛рдврд▓рд╛ рдЬрд╛рдИрд▓. рдЖрдгрд┐ рдлрдХреНрдд рддреБрдореНрд╣реА рдереЛрдбреЗ рдЕрдзрд┐рдХ рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рд╡рд╛рдкрд░рддрд╛ рдпрд╛ рд╡рд╕реНрддреБрд╕реНрдерд┐рддреАрдореБрд│реЗ.

рдЬрд░ рдкреЛрд╕реНрдЯрдЪреА рд╕рд╛рдордЧреНрд░реА рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рд╕реНрдкрд╖реНрдЯ рдЕрд╕реЗрд▓ рддрд░ рдорд▓рд╛ рдорд╛рдл рдХрд░рд╛. тАЬhabr sql server backupтАЭ рдпрд╛ рд╡рд╛рдХреНрдпрд╛рдВрд╢рд╛рд╕рд╛рдареА Google рд▓рд╛ рдорд┐рд│рд╛рд▓реЗрд▓реА рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯ рдореА рд╡рд╛рдЪрд▓реА рдЖрдгрд┐ рдПрдХрд╛рд╣реА рд▓реЗрдЦрд╛рдд рдорд▓рд╛ рдпрд╛ рд╡рд╕реНрддреБрд╕реНрдерд┐рддреАрдЪрд╛ рдЙрд▓реНрд▓реЗрдЦ рдЖрдврд│рд▓рд╛ рдирд╛рд╣реА рдХреА рдмреЕрдХрдЕрдк рд╡реЗрд│реЗрд╡рд░ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рд╡рд╛рдкрд░реВрди рдХрд╕рд╛ рддрд░реА рдкреНрд░рднрд╛рд╡ рдЯрд╛рдХрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ.

рдЕрд▓реЗрдХреНрдЭрд╛рдВрдбрд░ рдЧреНрд▓реЕрдбрдЪреЗрдиреНрдХреЛрдЪреНрдпрд╛ рдЯрд┐рдкреНрдкрдгреАрдХрдбреЗ рдореА рддрд╛рдмрдбрддреЛрдм рдЖрдкрд▓реЗ рд▓рдХреНрд╖ рд╡реЗрдзреВрди рдШреЗрдИрди (@mssqlhelp):

рдЙрддреНрдкрд╛рджрдирд╛рддреАрд▓ BUFFERCOUNT, BLOCKSIZE, MAXTRANSFERSIZE рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдХрдзреАрд╣реА рдмрджрд▓реВ рдирдХрд╛. рддреЗ рдЕрд╕реЗ рд▓реЗрдЦ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕рд╛рдареАрдЪ рдмрдирд╡рд▓реЗ рдЬрд╛рддрд╛рдд. рд╕рд░рд╛рд╡ рдордзреНрдпреЗ, рдЖрдкрдг рдереЛрдбреНрдпрд╛рдЪ рд╡реЗрд│рд╛рдд рд╕реНрдорд░рдгрд╢рдХреНрддреАрдЪреНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдВрдкрд╛рд╕реВрди рдореБрдХреНрдд рд╡реНрд╣рд╛рд▓.

рдЕрд░реНрдерд╛рддрдЪ, рд╕рд░реНрд╡рд╛рдд рд╣реБрд╢рд╛рд░ рдЖрдгрд┐ рдкреЛрд╕реНрдЯ рдЕрдирдиреНрдп рд╕рд╛рдордЧреНрд░реА рдЕрд╕рдгреЗ рдЫрд╛рди рд╣реЛрдИрд▓, рдкрд░рдВрддреБ, рджреБрд░реНрджреИрд╡рд╛рдиреЗ, рдЕрд╕реЗ рдирд╛рд╣реА. рдпрд╛ рд╡рд┐рд╖рдпрд╛рд▓рд╛ рд╡рд╛рд╣рд┐рд▓реЗрд▓реЗ рдЗрдВрдЧреНрд░рдЬреА-рднрд╛рд╖рд╛ рдЖрдгрд┐ рд░рд╢рд┐рдпрди-рднрд╛рд╖реЗрддреАрд▓ рджреЛрдиреНрд╣реА рд▓реЗрдЦ/рдкреЛрд╕реНрдЯ рдЖрд╣реЗрдд (рддреНрдпрд╛рдВрдирд╛ рдиреЗрдордХреЗ рдХрд╛рдп рдореНрд╣рдгрд╛рдпрдЪреЗ рдпрд╛рдмрджреНрджрд▓ рдореА рдиреЗрд╣рдореА рд╕рдВрднреНрд░рдорд╛рдд рдЕрд╕рддреЛ). рдорд▓рд╛ рднреЗрдЯрд▓реЗрд▓реНрдпрд╛рдВрдкреИрдХреА рдХрд╛рд╣реА рдпреЗрдереЗ рдЖрд╣реЗрдд: рд╡реЗрд│рд╛, ╨┤╨▓╨░, рддреАрди (sql.ru рд╡рд░).

рддрд░, рд╕реБрд░рд╡рд╛рддреАрд▓рд╛, рдореА рд╡рд░реВрди рдереЛрдбрд╛рд╕рд╛ рд╕реНрдЯреНрд░рд┐рдк-рдбрд╛рдЙрди рдмреЕрдХрдЕрдк рд╕рд┐рдВрдЯреЕрдХреНрд╕ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрди MSDN (рддрд╕реЗ, рдореА рд╡рд░ рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕рдмрджреНрджрд▓ рд▓рд┐рд╣рд┐рд▓реЗ рдЖрд╣реЗ, рдкрд░рдВрддреБ рд╣реЗ рд╕рд░реНрд╡ рд╡реНрдпрд╡рд╣рд╛рд░ рд▓реЙрдЧ рдмреЕрдХрдЕрдк рдЖрдгрд┐ рд╡рд┐рднреЗрджрдХ рдмреЕрдХрдЕрдк рджреЛрдиреНрд╣реАрд╡рд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ, рдкрд░рдВрддреБ рдХрджрд╛рдЪрд┐рдд рдХрдореА рд╕реНрдкрд╖реНрдЯ рдкрд░рд┐рдгрд╛рдорд╛рд╕рд╣):

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, SKIP рджреЗрдЦреАрд▓ рдЖрд╣реЗ. рддреБрдореНрд╣реА MSDN рд▓рд╛ рднреЗрдЯ рджрд┐рд▓реА рдЖрд╣реЗ рдХрд╛? рджреАрдб рд╕реНрдХреНрд░реАрдирд╕рд╛рдареА рдкрд░реНрдпрд╛рдп рдЖрд╣реЗрдд рд╣реЗ рддреБрдореНрд╣реА рдкрд╛рд╣рд┐рд▓реЗ рдЖрд╣реЗ рдХрд╛? рдореА рдкрдг рдкрд╛рд╣рд┐рд▓рдВ...

рддреБрдореНрд╣рд╛рд▓рд╛ рдХрджрд╛рдЪрд┐рдд рдЖрдзреАрдЪ рдХрд│рд▓реЗ рдЕрд╕реЗрд▓ рдХреА рдпрд╛рдкреБрдвреЗ рдЖрдореНрд╣реА рдХреЛрдбрдЪреНрдпрд╛ рдкрд╣рд┐рд▓реНрдпрд╛ рдмреНрд▓реЙрдХрдордзреНрдпреЗ рд░рд╛рд╣рд┐рд▓реЗрд▓реНрдпрд╛ рддреАрди рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдмрджреНрджрд▓ рдмреЛрд▓реВ - BLOCKSIZE, BUFFERCOUNT рдЖрдгрд┐ MAXTRANSFERSIZE. MSDN рдХрдбреВрди рддреНрдпрд╛рдВрдЪреА рд╡рд░реНрдгрдиреЗ рдпреЗрдереЗ рдЖрд╣реЗрдд:

BLOCKSIZE = { рдмреНрд▓реЙрдХ рдЖрдХрд╛рд░ | @ blocksize_variable } - рдмрд╛рдЗрдЯреНрд╕рдордзреНрдпреЗ рднреМрддрд┐рдХ рдмреНрд▓реЙрдХ рдЖрдХрд╛рд░ рджрд░реНрд╢рд╡рддреЛ. рд╕рдорд░реНрдерд┐рдд рдЖрдХрд╛рд░ 512, 1024, 2048, 4096, 8192, 16, 384 рдЖрдгрд┐ 32 рдмрд╛рдЗрдЯреНрд╕ (768 KB) рдЖрд╣реЗрдд. рдЯреЗрдк рдЙрдкрдХрд░рдгрд╛рдВрд╕рд╛рдареА рдбреАрдлреЙрд▓реНрдЯ рдореВрд▓реНрдп 65 рдЖрдгрд┐ рдЗрддрд░ рдЙрдкрдХрд░рдгрд╛рдВрд╕рд╛рдареА 536 рдЖрд╣реЗ. рд╕рд╛рдорд╛рдиреНрдпрддрдГ рд╣реЗ рдкреЕрд░рд╛рдореАрдЯрд░ рдЖрд╡рд╢реНрдпрдХ рдирд╕рддреЗ рдХрд╛рд░рдг рдмреЕрдХрдЕрдк рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕рд╕рд╛рдареА рдпреЛрдЧреНрдп рдмреНрд▓реЙрдХ рдЖрдХрд╛рд░ рдирд┐рд╡рдбрддреЗ. рдмреНрд▓реЙрдХ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░рдгреЗ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдмреНрд▓реЙрдХ рдЖрдХрд╛рд░ рдирд┐рд╡рдб рдУрд╡реНрд╣рд░рд░рд╛рдЗрдб рдХрд░рддреЗ.

рдмрдлрд░рдХрд╛рдЙрдВрдЯ = { рдмрдлрд░рдЧрдгрдирд╛ | @ buffercount_variable } - рдмреЕрдХрдЕрдк рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ I/O рдмрдлрд░рдЪреА рдПрдХреВрдг рд╕рдВрдЦреНрдпрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ. рддреБрдореНрд╣реА рдХреЛрдгрддреЗрд╣реА рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреВрд░реНрдгрд╛рдВрдХ рдореВрд▓реНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрддрд╛, рдкрд░рдВрддреБ рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рдмрдлрд░рдореБрд│реЗ Sqlservr.exe рдкреНрд░рдХреНрд░рд┐рдпреЗрдордзреНрдпреЗ рдЕрддреНрдпрд╛рдзрд┐рдХ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдЕреЕрдбреНрд░реЗрд╕ рд╕реНрдкреЗрд╕рдореБрд│реЗ рдореЗрдорд░реАрдмрд╛рд╣реЗрд░ рддреНрд░реБрдЯреА рдпреЗрдК рд╢рдХрддреЗ.

рдмрдлрд░рджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реЗрд▓реА рдПрдХреВрдг рдЬрд╛рдЧрд╛ рдЦрд╛рд▓реАрд▓ рд╕реВрддреНрд░рд╛рджреНрд╡рд╛рд░реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреЗрд▓реА рдЬрд╛рддреЗ: BUFFERCOUNT * MAXTRANSFERSIZE.

MAXTRANSFERSIZE = { maxtransfersize | @ maxtransfersize_variable } рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡реНрд╣рд░ рдЖрдгрд┐ рдмреЕрдХрдЕрдк рд╕реЗрдЯ рдореАрдбрд┐рдпрд╛ рдпрд╛рдВрдЪреНрдпрд╛рдд рджреЗрд╡рд╛рдгрдШреЗрд╡рд╛рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдмрд╛рдЗрдЯреНрд╕рдордзреНрдпреЗ, рд╕рд░реНрд╡рд╛рдд рдореЛрдард╛ рдбреЗрдЯрд╛ рдкреЕрдХреЗрдЯ рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ. 65 рдмрд╛рдЗрдЯреНрд╕ (536 MB) рдкрд░реНрдпрдВрдд 64 рдмрд╛рдЗрдЯреНрд╕ (4 KB) рдЪреНрдпрд╛ рдЧреБрдгрд╛рдХрд╛рд░ рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗрдд.

рдореА рд╢рдкрде рдШреЗрддреЛ - рдореА рд╣реЗ рдЖрдзреА рд╡рд╛рдЪрд▓реЗ рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рдВрдЪрд╛ рдЙрддреНрдкрд╛рджрдХрддреЗрд╡рд░ рдХрд┐рддреА рдкрд░рд┐рдгрд╛рдо рд╣реЛрдК рд╢рдХрддреЛ рд╣реЗ рдорд▓рд╛ рдХрдзреАрдЪ рдЬрд╛рдгрд╡рд▓реЗ рдирд╛рд╣реА. рд╢рд┐рд╡рд╛рдп, рд╡рд░рд╡рд░ рдкрд╛рд╣рддрд╛, рдорд▓рд╛ рдПрдХ рдкреНрд░рдХрд╛рд░рдЪреЗ "рдмрд╛рд╣реЗрд░ рдпреЗрдгреЗ" рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЖрдгрд┐ рдХрдмреВрд▓ рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ рдХреА рддреЗ рдиреЗрдордХреЗ рдХрд╛рдп рдХрд░рдд рдЖрд╣реЗрдд рд╣реЗ рдорд▓рд╛ рдкреВрд░реНрдгрдкрдгреЗ рд╕рдордЬрд▓реЗ рдирд╛рд╣реА. рдорд▓рд╛ рдХрджрд╛рдЪрд┐рдд рдмрдлрд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ 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
);

рд╕реНрдХреНрд░рд┐рдкреНрдЯрдЪреЗ рддрддреНрддреНрд╡ рд╕реЛрдкреЗ рдЖрд╣реЗ - рдиреЗрд╕реНрдЯреЗрдб рд▓реВрдк, рдЬреНрдпрд╛рдкреИрдХреА рдкреНрд░рддреНрдпреЗрдХ рдкреЕрд░рд╛рдореАрдЯрд░рдЪреЗ рдореВрд▓реНрдп рдмрджрд▓рддреЗ, рд╣реЗ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ BACKUP рдХрдорд╛рдВрдбрдордзреНрдпреЗ рдШрд╛рд▓рд╛, msdb.dbo.backupset рд╡рд░реВрди рдЗрддрд┐рд╣рд╛рд╕рд╛рд╕рд╣ рд╢реЗрд╡рдЯрдЪреЗ рд░реЗрдХреЙрд░реНрдб рдЬрддрди рдХрд░рд╛, рдмреЕрдХрдЕрдк рдлрд╛рдЗрд▓ рд╣рдЯрд╡рд╛ рдЖрдгрд┐ рдкреБрдвреАрд▓ рдкреБрдирд░рд╛рд╡реГрддреНрддреА . рдмреЕрдХрдЕрдк рдПрдХреНрдЭрд┐рдХреНрдпреВрд╢рди рдбреЗрдЯрд╛ рдмреЕрдХрдЕрдкрд╕реЗрдЯрдордзреВрди рдШреЗрддрд▓рд╛ рдЬрд╛рдд рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рдЕрдЪреВрдХрддрд╛ рдХрд╛рд╣реА рдкреНрд░рдорд╛рдгрд╛рдд рдЧрдорд╛рд╡рд▓реА рдЖрд╣реЗ (рд╕реЗрдХрдВрджрд╛рдВрдЪреЗ рдХреЛрдгрддреЗрд╣реА рдЕрдкреВрд░реНрдгрд╛рдВрдХ рдирд╛рд╣реАрдд), рдкрд░рдВрддреБ рдЖрдореНрд╣реА рд╣реЗ рдЯрд┐рдХреВрди рд░рд╛рд╣реВ.

рдкреНрд░рдердо рддреБрдореНрд╣рд╛рд▓рд╛ рдмреЕрдХрдЕрдк рд╣рдЯрд╡рдгреНрдпрд╛рд╕рд╛рдареА 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 рдордзреНрдпреЗ рд▓рд┐рд╣рд╛. рдЖрддреНрддрд╛рд╕рд╛рдареА, рдореА рддреБрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рдареЗрд╡рд▓реЗрд▓реНрдпрд╛ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдмрджреНрджрд▓ рд╕рд╛рдВрдЧреЗрди.

BLOCKSIZE рд╕рд╛рдареА рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдореВрд▓реНрдпрд╛рдВрдЪреА "рдмрдВрдж" рдпрд╛рджреА рдЖрд╣реЗ рдЖрдгрд┐ рдореА BLOCKSIZE < 4KB рд╕рд╣ рдмреЕрдХрдЕрдк рдШреЗрддрд▓реЗрд▓рд╛ рдирд╛рд╣реА. 64KB рддреЗ 64MB рдкрд░реНрдпрдВрдд - 4KB рдЪрд╛ рдЧреБрдгрд╛рдХрд╛рд░ рдЕрд╕рд▓реЗрд▓реА рдХреЛрдгрддреАрд╣реА рд╕рдВрдЦреНрдпрд╛ MAXTRANSFERSIZE. рдорд╛рдЭреНрдпрд╛ рд╕рд┐рд╕реНрдЯрдорд╡рд░ рдбреАрдлреЙрд▓реНрдЯ 1024KB рдЖрд╣реЗ, рдореА 512 - 1024 - 2048 - 4096 рдШреЗрддрд▓реЗ.

BUFFERCOUNT рд╕рд╣ рд╣реЗ рдЕрдзрд┐рдХ рдХрдареАрдг рд╣реЛрддреЗ - рддреА рдХреЛрдгрддреАрд╣реА рд╕рдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ рдЕрд╕реВ рд╢рдХрддреЗ, рдкрд░рдВрддреБ рджреБрд╡рд╛ рдореНрд╣рдгрддреЗ рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рддреНрдпрд╛рдЪреА рдЧрдгрдирд╛ рдХрд╢реА рдХреЗрд▓реА рдЬрд╛рддреЗ рдЖрдгрд┐ рдореЛрдареА рдореВрд▓реНрдпреЗ рдзреЛрдХрд╛рджрд╛рдпрдХ рдХрд╛ рдЖрд╣реЗрдд?. рдХреЛрдгрддреНрдпрд╛ BUFFERCOUNT рдЪрд╛ рдмреЕрдХрдЕрдк рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рдШреЗрддрд▓рд╛ рдЬрд╛рддреЛ рдпрд╛рдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рдХрд╢реА рдорд┐рд│рд╡рд╛рдпрдЪреА - рдорд╛рдЭреНрдпрд╛рд╕рд╛рдареА рддреЗ 7 рдЖрд╣реЗ. рддреЗ рдХрдореА рдХрд░рдгреНрдпрд╛рдд рдХрд╛рд╣реА рдЕрд░реНрде рдирд╡реНрд╣рддрд╛ рдЖрдгрд┐ рд╡рд░рдЪреА рдорд░реНрдпрд╛рджрд╛ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХрд░рд┐рддреНрдпрд╛ рд╢реЛрдзрд▓реА рдЧреЗрд▓реА - BUFFERCOUNT = 896 рдЖрдгрд┐ MAXTRANSFERSIZE = 4194304 рд╕рд╣ рдмреЕрдХрдЕрдк рдХрдореА рдЭрд╛рд▓рд╛. рдПрдХ рддреНрд░реБрдЯреА (рдЬреНрдпрд╛рдмрджреНрджрд▓ рд╡рд░реАрд▓ рд▓рд┐рдВрдХрдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗ рдЖрд╣реЗ):

рд╕рдВрджреЗрд╢ 3013, рд╕реНрддрд░ 16, рд░рд╛рдЬреНрдп 1, рд▓рд╛рдЗрди 7 рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрд╕рд╛рдорд╛рдиреНрдпрдкрдгреЗ рд╕рдорд╛рдкреНрдд рд╣реЛрдд рдЖрд╣реЗ.

Msg 701, Level 17, State 123, Line 7 рд╣реА рдХреНрд╡реЗрд░реА рд░рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд░рд┐рд╕реЛрд░реНрд╕ рдкреВрд▓ 'рдбреАрдлреЙрд▓реНрдЯ' рдордзреНрдпреЗ рдкреБрд░реЗрд╢реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдорд░реА рдирд╛рд╣реА.

рддреБрд▓рдиреЗрд╕рд╛рдареА, рдореА рдкреНрд░рдердо рдХреЛрдгрддреЗрд╣реА рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рди рдХрд░рддрд╛ рдмреЕрдХрдЕрдк рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреЗ рдкрд░рд┐рдгрд╛рдо рджрд░реНрд╢рд╡реЗрди:

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

рдмрд░рдВ, рдмреЕрдХрдЕрдк рдЖрдгрд┐ рдмреЕрдХрдЕрдк:

рдбреЗрдЯрд╛рдмреЗрд╕ 'bt' рд╕рд╛рдареА 1070072 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА, рдлрд╛рдЗрд▓ 1 рд╡рд░ 'bt' рдлрд╛рдЗрд▓.

рдбреЗрдЯрд╛рдмреЗрд╕ 'bt' рд╕рд╛рдареА 2 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА, рдлрд╛рдЗрд▓ 1 рд╡рд░ 'bt_log' рдлрд╛рдЗрд▓.

рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕рдиреЗ 1070074 рд╕реЗрдХрдВрджрд╛рдд (53.171 MB/рд╕реЗрдХрдВрдж) 157.227 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

рд╕реНрдХреНрд░рд┐рдкреНрдЯрдиреЗрдЪ, рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдЪреА рдЪрд╛рдЪрдгреА рдХреЗрд▓реА, рджреЛрди рддрд╛рд╕рд╛рдВрдд рдХрд╛рдо рдХреЗрд▓реЗ, рд╕рд░реНрд╡ рдореЛрдЬрдорд╛рдк рдкреВрд░реНрдг рдЭрд╛рд▓реЗ рдЧреБрдЧрд▓ рд╕реНрдкреНрд░реЗрдбрд╢реАрдЯ. рдЖрдгрд┐ рдпреЗрдереЗ рддреАрди рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╡реЗрд│реЗрд╕рд╣ рдирд┐рдХрд╛рд▓рд╛рдВрдЪреА рдирд┐рд╡рдб рдЖрд╣реЗ (рдореА рдПрдХ рдЫрд╛рди рдЖрд▓реЗрдЦ рдмрдирд╡рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХреЗрд▓рд╛, рдкрд░рдВрддреБ рдкреЛрд╕реНрдЯрдордзреНрдпреЗ рдорд▓рд╛ рдЯреЗрдмрд▓ рдЖрдгрд┐ рдЯрд┐рдкреНрдкрдгреНрдпрд╛рдВрд╕рд╣ рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧреЗрд▓ @рдорд┐рд╢реНрд░рдг рдЬреЛрдбрд▓реЗ рдЦреВрдк рдЫрд╛рди рдЧреНрд░рд╛рдлрд┐рдХреНрд╕).

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;

рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡реНрд╣рд░: рд╕реНрдЯрд┐рд░реЙрдЗрдбреНрд╕рд╡рд░ рдмреЕрдХрдЕрдк

рд▓рдХреНрд╖ рджреНрдпрд╛, рдХрдбреВрди рдПрдХ рдЕрддрд┐рд╢рдп рдорд╣рддреНрд╡рд╛рдЪреА рдЯреАрдк @рдорд┐рд╢реНрд░рдг рдкрд╛рд╕реВрди рднрд╛рд╖реНрдп:

рдЖрдореНрд╣реА рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рдиреЗ рдореНрд╣рдгреВ рд╢рдХрддреЛ рдХреА рдореВрд▓реНрдпрд╛рдВрдЪреНрдпрд╛ рдпрд╛ рд╢реНрд░реЗрдгреАрдВрдордзреНрдпреЗ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдЖрдгрд┐ рдмреЕрдХрдЕрдк рдЧрддреАрдордзреАрд▓ рд╕рдВрдмрдВрдз рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЖрд╣реЗ, рдХреЛрдгрддрд╛рд╣реА рдирдореБрдирд╛ рдирд╛рд╣реА. рдкрд░рдВрддреБ рдмрд┐рд▓реНрдЯ-рдЗрди рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдкрд╛рд╕реВрди рджреВрд░ рдЬрд╛рдгреНрдпрд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдорд╛рд╡рд░ рдирдХреНрдХреАрдЪ рдЪрд╛рдВрдЧрд▓рд╛ рдкрд░рд┐рдгрд╛рдо рдЭрд╛рд▓рд╛

рддреНрдпрд╛. рдлрдХреНрдд рдорд╛рдирдХ рдмреЕрдХрдЕрдк рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реНрдпрд╛рдиреЗ рдмреЕрдХрдЕрдк рдХрд╛рдврдгреНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрд│реЗрдд 2 рдкрдЯ рд╡рд╛рдв рд╣реЛрддреЗ: 26 рд╕реЗрдХрдВрдж, рд╡рд┐рд░реБрджреНрдз 53 рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛. рддреЗ рд╡рд╛рдИрдЯ рдирд╛рд╣реА, рдмрд░реЛрдмрд░? рдкрдг рдЬреАрд░реНрдгреЛрджреНрдзрд╛рд░рд╛рдЪреЗ рдХрд╛рдп рд╣реЛрддреЗ рддреЗ рдкрд╛рд╣рд╛рд╡реЗ рд▓рд╛рдЧреЗрд▓. рдЖрддрд╛ рдмрд░реЗ рд╣реЛрдгреНрдпрд╛рд╕рд╛рдареА 4 рдкрдЯ рдЬрд╛рд╕реНрдд рд╡реЗрд│ рд▓рд╛рдЧрд▓рд╛ рддрд░?

рдкреНрд░рдердо, рдбреАрдлреЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрдЬрд╕рд╣ рдмреЕрдХрдЕрдк рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрд┐рддреА рд╡реЗрд│ рд▓рд╛рдЧрддреЛ рддреЗ рдореЛрдЬреВрдпрд╛:

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

рдмрд░рдВ, рддреБрдореНрд╣рд╛рд▓рд╛ рд╕реНрд╡рддрдГрд▓рд╛ рдорд╛рд╣рд┐рдд рдЖрд╣реЗ рдХреА, рдорд╛рд░реНрдЧ рдЖрд╣реЗрдд, рдкреБрдирд░реНрд╕реНрдерд┐рдд рдХрд░рдгреЗ рдмрджрд▓рдгреЗ рдирд╛рд╣реА, рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА рдирд╛рд╣реА. рдЖрдгрд┐ рдореА рд╣реЗ рдЕрд╕реЗ рдХрд░рддреЛ:

рдбреЗрдЯрд╛рдмреЗрд╕ 'bt' рд╕рд╛рдареА 1070072 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА, рдлрд╛рдЗрд▓ 1 рд╡рд░ 'bt' рдлрд╛рдЗрд▓.

рдбреЗрдЯрд╛рдмреЗрд╕ 'bt' рд╕рд╛рдареА 2 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА, рдлрд╛рдЗрд▓ 1 рд╡рд░ 'bt_log' рдлрд╛рдЗрд▓.

рдбреЗрдЯрд╛рдмреЗрд╕ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛ 1070074 рд╕реЗрдХрдВрджрд╛рдд (40.752 MB/рд╕реЗрдХрдВрдж) 205.141 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

рдЖрддрд╛ рдореА рдмрджрд▓рд▓реЗрд▓реНрдпрд╛ BLOCKSIZE, BUFFERCOUNT рдЖрдгрд┐ MAXTRANSFERSIZE рд╕рд╣ рдШреЗрддрд▓реЗрд▓реЗ рдмреЕрдХрдЕрдк рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реЗрди.

BLOCKSIZE = 16384, BUFFERCOUNT = 224, MAXTRANSFERSIZE = 4194304

рдбреЗрдЯрд╛рдмреЗрд╕ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛ 1070074 рд╕реЗрдХрдВрджрд╛рдд (32.283 MB/рд╕реЗрдХрдВрдж) 258.958 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

BLOCKSIZE = 4096, BUFFERCOUNT = 448, MAXTRANSFERSIZE = 4194304

рдбреЗрдЯрд╛рдмреЗрд╕ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛ 1070074 рд╕реЗрдХрдВрджрд╛рдд (32.682 MB/рд╕реЗрдХрдВрдж) 255.796 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

BLOCKSIZE = 16384, BUFFERCOUNT = 448, MAXTRANSFERSIZE = 2097152

рдбреЗрдЯрд╛рдмреЗрд╕ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛ 1070074 рд╕реЗрдХрдВрджрд╛рдд (32.091 MB/рд╕реЗрдХрдВрдж) 260.507 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

BLOCKSIZE = 4096, BUFFERCOUNT = 56, MAXTRANSFERSIZE = 4194304

рдбреЗрдЯрд╛рдмреЗрд╕ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛ 1070074 рд╕реЗрдХрдВрджрд╛рдд (32.401 MB/рд╕реЗрдХрдВрдж) 258.015 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА рджрд░рдореНрдпрд╛рди рдмрджрд▓рдд рдирд╛рд╣реА; рд╣реЗ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рддреНрдпрд╛рдд рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓реЗ рдирд╛рд╣реАрдд; SQL рд╕рд░реНрд╡реНрд╣рд░ рд╕реНрд╡рддрдГрдЪ рддреНрдпрд╛рдВрдирд╛ рдмреЕрдХрдЕрдкрдордзреВрди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЛ. рдЖрдгрд┐ рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдЖрд╣реЗ рдХреА рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреАрд╕рд╣ рджреЗрдЦреАрд▓ рдлрд╛рдпрджрд╛ рд╣реЛрдК рд╢рдХрддреЛ - рдЬрд╡рд│рдЬрд╡рд│ 20% рд╡реЗрдЧрд╡рд╛рди (рдЦрд░реЗ рд╕рд╛рдВрдЧрд╛рдпрдЪреЗ рддрд░, рдореА рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреАрд╡рд░ рдЬрд╛рд╕реНрдд рд╡реЗрд│ рдШрд╛рд▓рд╡рд▓рд╛ рдирд╛рд╣реА, рдореА рдЕрдиреЗрдХ тАЬрдЬрд▓рджтАЭ рдмреЕрдХрдЕрдкреНрд╕рдордзреВрди рдзрд╛рд╡ рдШреЗрддрд▓реА рдЖрдгрд┐ рдХреЛрдгрддреАрд╣реА рдмрд┐рдШрд╛рдб рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХреЗрд▓реА).

рдлрдХреНрдд рдмрд╛рдмрддреАрдд, рдореА рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЛ рдХреА рд╣реЗ рдХрд╛рд╣реА рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдирд╛рд╣реАрдд рдЬреЗ рдкреНрд░рддреНрдпреЗрдХрд╛рд╕рд╛рдареА рдЗрд╖реНрдЯрддрдо рдЖрд╣реЗрдд. рддреБрдореНрд╣реА рдлрдХреНрдд рдЪрд╛рдЪрдгреА рдХрд░реВрди рд╕реНрд╡рддрдГрд╕рд╛рдареА рдЗрд╖реНрдЯрддрдо рдорд╛рдкрджрдВрдб рдорд┐рд│рд╡реВ рд╢рдХрддрд╛. рдорд▓рд╛ рд╣реЗ рдкрд░рд┐рдгрд╛рдо рдорд┐рд│рд╛рд▓реЗ рдЖрд╣реЗрдд, рддреБрдореНрд╣рд╛рд▓рд╛ рд╡реЗрдЧрд│реЗ рдорд┐рд│рддреАрд▓. рдкрд░рдВрддреБ рдЖрдкрдг рдкрд╣рд╛рд▓ рдХреА рдЖрдкрдг рдЖрдкрд▓реЗ рдмреЕрдХрдЕрдк "рдЯреНрдпреВрди" рдХрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рддреЗ рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рддрдпрд╛рд░ рдЖрдгрд┐ рдЬрд▓рдж рддреИрдирд╛рдд рдХрд░реВ рд╢рдХрддрд╛рдд.

рдореА рддреБрдореНрд╣рд╛рд▓рд╛ рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рд╕рдВрдкреВрд░реНрдгрдкрдгреЗ рд╡рд╛рдЪрдгреНрдпрд╛рдЪреА рдЬреЛрд░рджрд╛рд░ рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рддреЛ, рдХрд╛рд░рдг рддреБрдордЪреНрдпрд╛ рд╕рд┐рд╕реНрдЯрдорд╕рд╛рдареА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдмрд╛рд░рдХрд╛рд╡реЗ рдЕрд╕реВ рд╢рдХрддрд╛рдд.

рдореА рдмреЕрдХрдЕрдк рдмрджреНрджрд▓ рд▓рд┐рд╣рд╛рдпрд▓рд╛ рд╕реБрд░реБрд╡рд╛рдд рдХреЗрд▓реНрдпрд╛рдкрд╛рд╕реВрди, рдорд▓рд╛ рддрд╛рдмрдбрддреЛрдм рдЖрдгрдЦреА рдПрдХрд╛ "рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди" рдмрджреНрджрд▓ рд▓рд┐рд╣рд╛рдпрдЪреЗ рдЖрд╣реЗ, рдЬреЗ "рдЯреНрдпреВрдирд┐рдВрдЧ" рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдкреЗрдХреНрд╖рд╛ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рдЖрд╣реЗ (рдЬреНрдпрд╛рдкрд░реНрдпрдВрдд рдорд▓рд╛ рд╕рдордЬрд▓реЗ рдЖрд╣реЗ, рддреЗ рдХрдореАрддрдХрдореА рдХрд╛рд╣реА рдмреЕрдХрдЕрдк рдпреБрдЯрд┐рд▓рд┐рдЯреАрдЬрджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ, рдХрджрд╛рдЪрд┐рдд рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рд╕рд╣. рдкреВрд░реНрд╡реА рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реЗ), рдкрд░рдВрддреБ рдЕрджреНрдпрд╛рдк рд╣реЗрдмреНрд░реЗрд╡рд░ рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реЗ рдирд╛рд╣реА.

рдЬрд░ рдЖрдкрдг рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдВрддрд░реНрдЧрдд рдХрд╛рдЧрджрдкрддреНрд░рд╛рддреАрд▓ рджреБрд╕рд░реА рдУрд│ рдкрд╛рд╣рд┐рд▓реА, рддрд░ рддреЗрдереЗ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рджрд┐рд╕реЗрд▓:

TO <backup_device> [ ,...n ]

рддреБрдореНрд╣реА рдЕрдиреЗрдХ рдмреЕрдХрдЕрдк_рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реНрдпрд╛рд╕ рдХрд╛рдп рд╣реЛрдИрд▓ рдЕрд╕реЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рдЯрддреЗ? рд╡рд╛рдХреНрдпрд░рдЪрдирд╛ рддреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рдЖрдгрд┐ рдПрдХ рдЕрддрд┐рд╢рдп рдордиреЛрд░рдВрдЬрдХ рдЧреЛрд╖реНрдЯ рдШрдбреЗрд▓ - рдмреЕрдХрдЕрдк рдлрдХреНрдд рдЕрдиреЗрдХ рдЙрдкрдХрд░рдгрд╛рдВрд╡рд░ "рдкрд╕рд░рд▓рд╛" рдЬрд╛рдИрд▓. рддреНрдпрд╛. рдкреНрд░рддреНрдпреЗрдХ "рдбрд┐рд╡реНрд╣рд╛рдЗрд╕" рд╡реИрдпрдХреНрддрд┐рдХрд░рд┐рддреНрдпрд╛ рдирд┐рд░реБрдкрдпреЛрдЧреА рд╣реЛрдИрд▓, рдПрдХ рдЧрдорд╛рд╡рд▓реЗ рдЬрд╛рдИрд▓, рд╕рдВрдкреВрд░реНрдг рдмреЕрдХрдЕрдк рдЧрдорд╛рд╡рд▓рд╛ рдЬрд╛рдИрд▓. рдкрд░рдВрддреБ рдЕрд╢рд╛ рд╕реНрдореАрдЕрд░рд┐рдВрдЧрдЪрд╛ рдмреЕрдХрдЕрдк рдЧрддреАрд╡рд░ рдХрд╕рд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдИрд▓?

рдПрдХрд╛рдЪ рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рд╢реЗрдЬрд╛рд░реА рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рджреЛрди "рдбрд┐рд╡реНрд╣рд╛рдЗрд╕реЗрд╕" рд╡рд░ рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реВрдпрд╛:

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

рдЬрдЧрд╛рдЪреНрдпрд╛ рдмрд╛рдкрд╛рдВрдиреЛ, рдЕрд╕реЗ рдХрд╛ рдХреЗрд▓реЗ рдЬрд╛рдд рдЖрд╣реЗ?

рдбреЗрдЯрд╛рдмреЗрд╕ 'bt' рд╕рд╛рдареА 1070072 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА, рдлрд╛рдЗрд▓ 1 рд╡рд░ 'bt' рдлрд╛рдЗрд▓.

рдбреЗрдЯрд╛рдмреЗрд╕ 'bt', рдлрд╛рдЗрд▓ 'bt' рд╕рд╛рдареА 2 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реАрдлрд╛рдЗрд▓ 1 рд╡рд░ рд▓реЙрдЧ' рдХрд░рд╛.

рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕рдиреЗ 1070074 рд╕реЗрдХрдВрджрд╛рдд (40.092 MB/рд╕реЗрдХрдВрдж) 208.519 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

рдмреЕрдХрдЕрдк рдирд┐рд│реНрдпрд╛ рд░рдВрдЧрд╛рдд 25% рдЬрд▓рдж рдЭрд╛рд▓рд╛ рдХрд╛? рдЖрдореНрд╣реА рдЖрдгрдЦреА рдХрд╛рд╣реА рдЙрдкрдХрд░рдгреЗ рдЬреЛрдбрд▓реНрдпрд╛рд╕ рдХрд╛рдп рд╣реЛрдИрд▓?

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

рдмреЕрдХрдЕрдк рдбреЗрдЯрд╛рдмреЗрд╕рдиреЗ 1070074 рд╕реЗрдХрдВрджрд╛рдд (34.234 MB/рд╕реЗрдХрдВрдж) 244.200 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

рдПрдХреВрдг, рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрд│реЗрдЪреНрдпрд╛ рд╕реБрдорд╛рд░реЗ 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 MB/рд╕реЗрдХрдВрдж) 219.842 рдкреГрд╖реНрдард╛рдВрд╡рд░ рдпрд╢рд╕реНрд╡реАрд░рд┐рддреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА.

рдереЛрдбреЗ рд╡реЗрдЧрд╡рд╛рди, рдкрд░рдВрддреБ рдХреБрдареЗрддрд░реА рдЬрд╡рд│, рд▓рдХреНрд╖рдгреАрдп рдирд╛рд╣реА. рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдмреЕрдХрдЕрдк рдЬрд▓рдж рдХрд╛рдврд▓рд╛ рдЬрд╛рддреЛ рдЖрдгрд┐ рддреНрдпрд╛рдЪ рдкреНрд░рдХрд╛рд░реЗ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ - рдпрд╢? рдорд╛рдЭреНрдпрд╛рд╕рд╛рдареА, рд╣реЗ рдЦреВрдк рдпрд╢рд╕реНрд╡реА рдЖрд╣реЗ. рдпрд╛ рдорд╣рддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рдореА рдкреБрдиреНрд╣рд╛ рд╕рд╛рдВрдЧрддреЛ - рдЬрд░ рддреБрдореНрд╣реА рддреБрдореНрд╣реА рдпрд╛рдкреИрдХреА рдХрд┐рдорд╛рди рдПрдХ рдлрд╛рдЗрд▓ рдЧрдорд╛рд╡рд▓реНрдпрд╛рд╕, рддреБрдореНрд╣реА рд╕рдВрдкреВрд░реНрдг рдмреЕрдХрдЕрдк рдЧрдорд╛рд╡рд╛рд▓.

рдЖрдкрдг рдЯреНрд░реЗрд╕ рдлреНрд▓реЕрдЧреНрд╕ 3213 рдЖрдгрд┐ 3605 рд╡рд╛рдкрд░реВрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдмреЕрдХрдЕрдк рдорд╛рд╣рд┐рддреАрдЪреНрдпрд╛ рд▓реЙрдЧрдордзреНрдпреЗ рдкрд╛рд╣рд┐рд▓реНрдпрд╛рд╕, рдЖрдкрд▓реНрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдпреЗрдИрд▓ рдХреА рдЕрдиреЗрдХ рдЙрдкрдХрд░рдгрд╛рдВрд╡рд░ рдмреЕрдХрдЕрдк рдШреЗрддрд╛рдирд╛, рдХрдореАрддрдХрдореА BUFFERCOUNT рдЪреА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рдврддреЗ. рдХрджрд╛рдЪрд┐рдд, рддреБрдореНрд╣реА BUFFERCOUNT, BLOCKSIZE, MAXTRANSFERSIZE рд╕рд╛рдареА рдЕрдзрд┐рдХ рдЗрд╖реНрдЯрддрдо рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдирд┐рд╡рдбрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реВ рд╢рдХрддрд╛, рдкрд░рдВрддреБ рдореА рд▓рдЧреЗрдЪ рдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реЛ рдирд╛рд╣реА рдЖрдгрд┐ рдореА рдЕрд╢реА рдЪрд╛рдЪрдгреА рдкреБрдиреНрд╣рд╛ рдХрд░рдгреНрдпрд╛рд╕ рдЦреВрдк рдЖрд│рд╢реА рд╣реЛрддреЛ, рдкрд░рдВрддреБ рднрд┐рдиреНрди рд╕рдВрдЦреНрдпреЗрдЪреНрдпрд╛ рдлрд╛рдпрд▓реАрдВрд╕рд╛рдареА. рдЖрдгрд┐ рдЪрд╛рдХрд╛рдВрдЪреА рд▓рд╛рдЬ рд╡рд╛рдЯрддреЗ. рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рдШрд░рдЪреНрдпрд╛ рдШрд░реА рдЕрд╢реА рдЪрд╛рдЪрдгреА рдЖрдпреЛрдЬрд┐рдд рдХрд░рд╛рдпрдЪреА рдЕрд╕реЗрд▓, рддрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯрдЪрд╛ рд░реАрдореЗрдХ рдХрд░рдгреЗ рдХрдареАрдг рдирд╛рд╣реА.

рд╢реЗрд╡рдЯреА, рдХрд┐рдВрдорддреАрдмрджреНрджрд▓ рдмреЛрд▓реВрдпрд╛. рдЬрд░ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рдХрд╛рдорд╛рдЪреНрдпрд╛ рд╕рдорд╛рдВрддрд░ рдмреЕрдХрдЕрдк рдХрд╛рдврд▓рд╛ рдЧреЗрд▓рд╛ рдЕрд╕реЗрд▓, рддрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рдЪрд╛рдЪрдгреАрд╕рд╛рдареА рдПрдХ рдЕрддрд┐рд╢рдп рдЬрдмрд╛рдмрджрд╛рд░ рджреГрд╖реНрдЯреАрдХреЛрди рдШреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдХрд╛рд░рдг рдЬрд░ рдмреЕрдХрдЕрдк рдЬрд▓рдж рдХрд╛рдврд▓рд╛ рдЧреЗрд▓рд╛ рддрд░, рдбрд┐рд╕реНрдХ рдЕрдзрд┐рдХ рддрд╛рдгрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд, рдкреНрд░реЛрд╕реЗрд╕рд░рд╡рд░реАрд▓ рднрд╛рд░ рд╡рд╛рдврддреЛ (рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрджреНрдпрд╛рдк рд╕рдВрдХреБрдЪрд┐рдд рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧреЗрд▓. рддреЗ рдлреНрд▓рд╛рдпрд╡рд░), рдЖрдгрд┐ рддреНрдпрд╛рдиреБрд╕рд╛рд░, рд╕рд┐рд╕реНрдЯрдордЪреА рдПрдХреВрдг рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрдореА рд╣реЛрддреЗ.

рдлрдХреНрдд рдЧрдВрдордд рдХрд░рдд рдЖрд╣реЗ, рдкрдг рдорд▓рд╛ рдЪрд╛рдВрдЧрд▓реЗ рд╕рдордЬрд▓реЗ рдЖрд╣реЗ рдХреА рдореА рдХреЛрдгрддрд╛рд╣реА рдЦреБрд▓рд╛рд╕рд╛ рдХреЗрд▓реЗрд▓рд╛ рдирд╛рд╣реА. рд╡рд░ рдЬреЗ рд▓рд┐рд╣рд┐рд▓реЗ рдЖрд╣реЗ рддреЗ рддреБрдореНрд╣реА рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рдЗрд╖реНрдЯрддрдо рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдХрд╕реЗ рдирд┐рд╡рдбреВ рд╢рдХрддрд╛ рдпрд╛рдЪреЗ рдлрдХреНрдд рдПрдХ рдкреНрд░рд╛рддреНрдпрдХреНрд╖рд┐рдХ рдЖрд╣реЗ.

рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ рдХреА рддреБрдореНрд╣реА рдЬреЗ рдХрд╛рд╣реА рдХрд░рддрд╛ рддреЗ рддреБрдордЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рдЬреЛрдЦрдореАрд╡рд░ рдЖрдгрд┐ рдЬреЛрдЦрдореАрд╡рд░ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рддреБрдордЪреЗ рдмреЕрдХрдЕрдк рддрдкрд╛рд╕рд╛ рдЖрдгрд┐ DBCC CHECKDB рдмрджреНрджрд▓ рд╡рд┐рд╕рд░реВ рдирдХрд╛.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛