教你怎麼把伺服器上的資料庫備份到本地計算機

2022-08-31 17:54:22 字數 2528 閱讀 2977

declare @sql varchar(500)

select @sql='\\192.168.2.73\testfolder\'+'_db_'+convert(varchar(10),getdate(),112) + substring(convert(varchar(10),getdate(),108),1,2) + substring(convert(varchar(10),datepart(minute,getdate())),1,2) +'.bak'

exec master..xp_cmdshell 'net use \\192.168.2.73\testfolder "" /user:192.168.2.73\jaymezhang'

backup database master to disk=@sql

go要用遠端資料庫可以備份本地。

本地資料庫也可以備份到遠端。

--備份環境:把資料庫伺服器(192.168.1.8)的資料庫(test)備份到(192.168.1.145)的c$下

--首先,做乙個與客戶端的對映

exec master..xp_cmdshell

'net use z: \\192.168.1.145\ "" /user:192.168.1.145\administrator'

/*--說明:

z: 是對映網路路徑對應本機的碟符,與下面的備份對應

\\192.168.1.145\c$    是要對映的網路路徑

192.168.1.145\administrator   

192.168.1.145是遠端的計算機名,administrator是登陸的使用者名稱

密碼                        上面指定的administrator使用者的密碼

--*/

--其次,進行資料庫備份

backup database test to disk='z:\test.bak'

--最後.備份完成後刪除對映

exec master..xp_cmdshell 'net use z: /delete'

--來自網路

--以下**放在作業裡做排程,自動備份、自動刪除4天前備份

--建立對映

exec master..xp_cmdshell 'net use w: \databasebackup$  "password"/user:roy',no_output

go-----2000用游標:

declare @s nvarchar(200),@del nvarchar(200)

select  @s='',@del=''

declare datebak cursor for

select

[bak]='backup database  '+quotename(name)+'  to disk =''w:'+name+'_'+convert(varchar(8),getdate(),112)+'.bak''  with init',

[del]='exec master..xp_cmdshell '' del w:'+name+'_'+convert(varchar(8),getdate()-4,112)+'.bak'', no_output'

from master..sysdatabases where dbid>4 --不備份系統資料庫

open datebak

fetch next from datebak into @s,@del

while @@fetch_status=0

begin

exec (@del)

exec(@s)

fetch next from datebak into @s,@del

endclose datebak

deallocate datebak

go--刪除對映

exec master..xp_cmdshell 'net use w: /delete'

go--用job.

--sql server2000為例

企業管理器—>資料庫伺服器—>管理目錄—>sql server**—>作業—>右鍵 選—>新建

常規選項頁—>輸入作業名稱—>選中所有者。

步驟選項頁—>新建—>輸入步驟名—>型別 tsql指令碼—>選擇需要執行的資料庫—>在命令框裡輸入你的sql 指令碼:

如:update tb set 狀態= ...  where 日期...........

你可以點左下角的【分析】按鈕,分析一下語法,分析無誤,按確定。

排程選項頁—>新建排程—>輸入排程名稱—>排程型別 你可以選擇也可以點右下角的【更改】按鈕進行更改,確定。

工作列 sql server伺服器的小圖示 雙擊 服務 選中 sql server agent,點【開始/繼續】,選中當啟動os時,自動啟動服務,就可以了。

到你定的那個時間點,sql server會自動去執行你的指令碼的。

如果需要生成指令碼的話,企業管理器—>資料庫伺服器—>管理目錄—>sql server**—>作業—>右鍵你剛完成的作業—>所有任務

—>生成sql指令碼,即可生成你需要的指令碼。

怎麼把伺服器的資料同步到本地資料庫

同步兩個資料庫的示例 有資料 srv1.庫名.author有欄位 id,name,phone,srv2.庫名.author有欄位 id,name,telphone,adress 要求 srv1.庫名.author增加記錄則srv2.庫名.author記錄增加 srv1.庫名.author的phone...

Linux伺服器上Mysql資料庫備份命令

oschina 每天凌晨使用 crontab 自動對 mysql 資料庫進行備份,備份命令如下 date str date y m d cd data2 backup mysqldump h localhost u oschina password x r e e max allowed packe...

資料庫資料備份 本機備份 跨伺服器備份

前段時間因為資料庫的種種問題搞得我焦頭爛額,我其實也是知道資料庫本身是有很多功能,但實際經常用到的就是增刪改查,所以對於備份 匯入之類的,也沒太在意,基本就是保持著有問題找度娘,再不行,就必應,各種搜尋,現在把自己當時的軟體配置和成功匯入的對策記錄下來,希望可以幫到有需要的人。server os w...