远程数据库备份还原

备份环境:把数据库服务器(192.168.30.8)的数据库(db)备份到(192.168.30.145)的盘符下

1、首 先,做一个与客户端的映射

exec master..xp_cmdshell

''net use z: //192.168.30.145/c$ "密码" /user:192.168.30.145/administrator''

 

说明:

z: 是映射网络路径对应本机的盘符,与下面的备份对应

//192.168.30.145/c$     是要映射的网络路径

192.168.30.145/administrator    192.168.30.145是远程的计算机名,administrator是登陆的用户名

密码     上面指定的administrator用户的密码

 

2、进行数据库备份

backup database TEST to disk=''z:/Test.bak''

3、备份完成后删除映射

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

 

用sql语句表示如下(变量):

远 程数据库的备份:

conn.Open();

    commandStr = "exec master..xp_cmdshell ''net use z: " + ip + "//" + filePath + " /"" + pwd + "/" /user:" + ip + "//" + userName + "'';";

    commandStr += "backup database "+dbName +" to disk=''z://" + fileName + ".bak'';";

    commandStr += "exec master..xp_cmdshell ''net use z: /delete'';";

    SqlCommand mycommand = new SqlCommand(commandStr);

    mycommand.Connection = conn;

    mycommand.CommandTimeout = 100000000;

    mycommand.ExecuteNonQuery();  

    conn.Close();

 

 

远 程数据库的还原:

commandStr = "use   master;exec master..xp_cmdshell ''net use z: " + ip + "//" + filePath + " /"" + pwd + "/" /user:" + ip + "//" + userName + "'';";

    commandStr += "alter database "+dbName +" set single_user with rollback immediate;";

    commandStr += "RESTORE DATABASE " + dbName + " FROM DISK   =''z://" + fileName + "'';";

    commandStr += " alter database " + dbName + " set multi_user;";

    commandStr += "exec master..xp_cmdshell ''net use z: /delete'';";


文章出处:DIY部落(http://www.diybl.com/course/7_databases/database_other/200855/113447_2.html )

文 章出处:DIY部落(http://www.diybl.com/course/7_databases/database_other/200855/113447.html #)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值