sql >> Databáze >  >> RDS >> Sqlserver

Jak zálohujete a obnovujete databázi jako kopii na stejném serveru?

RESTORE FILELISTONLY je informační příkaz a není vyžadován k provedení obnovy. Uživatel to může použít k tomu, aby zjistil, jaké jsou logické názvy datových souborů, které lze použít s MOVE příkazy k obnovení databáze do nového umístění.

Jak naznačuje chybová zpráva, musíte použít RESTORE FILELISTONLY abyste viděli, jaká jsou logická jména databáze. Váš příkaz pro obnovení má tyto chyby.

Zde je pracovní příklad toho, co musíte udělat:

--backup the database
backup database test1 to disk='c:\test1_full.bak'

-- use the filelistonly command to work out  what the logical names 
-- are to use in the MOVE commands.  the logical name needs to
-- stay the same, the physical name can change
restore filelistonly from disk='c:\test1_full.bak'
 --------------------------------------------------
|  LogicalName  |           PhysicalName           |
 --------------------------------------------------
| test1         | C:\mssql\data\test1.mdf          |
| test1_log     | C:\mssql\data\test1_log.ldf      |
 -------------------------------------------------

restore database test2 from disk='c:\test1_full.bak'
with move 'test1' to 'C:\mssql\data\test2.mdf',
move 'test1_log' to 'C:\mssql\data\test2.ldf'


  1. Oprava „Aritmetická chyba přetečení při převodu int na datový typ numeric“ v SQL Server

  2. DROP TABLE, POKUD EXISTUJE v SQLite

  3. SQL příkaz není správně ukončen?

  4. Automatická oprava plánu v SQL Server