通過SQL語句來備份,還原資料庫

2021-04-27 14:30:55 字數 1259 閱讀 8288

這裡僅僅用到了一種方式而已,把資料庫檔案備份到磁碟然後在恢復.

eg:

1: /*
2: 通過sql 語句備份資料庫
3: */
4: backup database mydb
5: to disk ='c:/dbback/mydb.bak'
6: --這裡指定需要備份資料庫的路徑和檔名,注意:路徑的資料夾是必須已經建立的.檔名可以使用日期來標示
7:
8: /*
9: 通過sql語句還原資料庫
10: */
11: use master
12: restore database mydb
13: from disk='c:/dbback/mydb.bak'
14: with replace

注意:很多時候不能直接還原,因為資料不是獨佔開啟.可能用到下面的過程

1: --kill掉訪問某個資料庫的連線
2: create proc killspid(@dbname varchar)
3: as
4: begin
5:     declare @sql varchar
6:     declare @spid int
7:     set @sql='declare currentid cursor for
8:     select spid from sysprocesses where dbid=db_id('''+@dbname+''') '
9:     fetch next from currentid into @spid
10:     while @@fetch_status <>-1
11:     begin
12:         exec('kill '+@spid)
13:         fetch next from  currentid into @spid
14:     end
15:     close currentid
16:     deallocate currentid
17: end

當kill掉使用者後最好使用單使用者運算元據庫

sp_dboption @dbname,'single user','true'

通過SQL語句來備份,還原資料庫

這裡僅僅用到了一種方式而已,把資料庫檔案備份到磁碟然後在恢復.eg 1 2 通過sql 語句備份資料庫3 4 backup database mydb5 todisk c dbback mydb.bak 6 這裡指定需要備份資料庫的路徑和檔名,注意 路徑的資料夾是必須已經建立的.檔名可以使用日期來標...

通過SQL語句來備份,還原資料庫

1 2 通過sql 語句備份資料庫3 4 backup database mydb5 todisk c dbback mydb.bak 6 這裡指定需要備份資料庫的路徑和檔名,注意 路徑的資料夾是必須已經建立的.檔名可以使用日期來標示7 8 9 通過sql語句還原資料庫10 11 use maste...

通過SQL語句來備份,還原資料庫

eg 複製 如下 通過sql 語句備份資料庫 backup database mydb to disk c dbback mydb.bak 這裡指定需要備份資料庫的路徑和檔名,注意 路徑的資料夾是必須已經建立的.檔名可以使用日期來標示 通過sql語句還原資料庫 u程式設計客棧se master re...