如何进行数据库远程备份?
一个消费交易系统,数据库安全很重要,打算采取远程(异地)备份。
目前还不能决定是进行实时备份还是定期(一天或是一周)备份。
现在想采取的办法是:
1、在主机系统以外的地方建立备份点。
2、备份点的选择可能是:
同一办公楼的其它办公室;
或办公楼附近的另一办公楼;
IDC机位;
另一城市的办公点或是IDC机位;
现在不知道采取什么方式对数据进行备份操作,是人工用FTP软件传输,还是写个软件写期自动传输,或是sql server 2000本身就具备这样的功能?
不知是否可利用sql 2000的数据发布功能来实现?
[解决办法]
SQL如何备份到异机(远程?应该是一个道理.)
写成存储过程,建立作业定时备份~~~
--在sql中映射一下就可以了
exec master..xp_cmdshell 'net use z: \\yizhi\D$ "密码 " /user:yizhi\administrator '
/*--说明:
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码 " /user:xz\administrator '
z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径
xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--*/
--备份;with init覆盖|noinit添加
backup database 库名 to disk= 'E:\H_BACKUP.bak ' with init
--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z: '
--删除(这句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak '
--完成后删除映射
exec master..xp_cmdshell 'net use z: /delete '
[解决办法]
mark
[解决办法]
數據庫復制可以實現吧
[解决办法]
远程(异地)备份,在备份的过程中网络稳定很关键,这样的备份很容易失败,即使备份成功了还原的成功率也不高
建议还是在本机备份,传送bak文件好一点
[解决办法]
建议在本机定期备份
再通过软件或其它方式传到其它地方(将bak文件压缩打包再传更安全)
[解决办法]
建议在本机定期备份
再通过软件或其它方式传到其它地方(将bak文件压缩打包再传更安全)
[解决办法]
divmedia() 说的没错,但是如果是要手动转送的话,那岂不是一件麻烦事,能不能用什么自动转送的,比如用SQL语句 ,或者是用什么软件完成自动转送??
[解决办法]
即时远程备份不可靠,现实环境告诉我们,网络24小时保持100M速度的可能性不高,广域网就更加不用说, 所以建议让SQL自动备份到SQL服务器本地, 然后通过其它专业备份软件做远程备份, 只要设好执行时间不冲突就可以了.
[解决办法]
參考http://blog.csdn.net/feixiangVB/archive/2007/06/18/1656240.aspx試試
測試可以通過~~~
[解决办法]
写个链接下载
[解决办法]
create table t ( uid varchar(100), dgrade varchar(100)) insert into t
--在sql中映射一下就可以了 exec master..xp_cmdshell 'net use z: \\yizhi\D$ "密码 " /user:yizhi\administrator '
/*--说明: exec master..xp_cmdshell 'net use z: \\xz\c$ "密码 " /user:xz\administrator '
z:是映射网络路径对应本机的盘符,与下面的备份对应 \\xz\c$是要映射的网络路径
xz\administrator xz是远程的计算机名,
administrator是登陆的用户名密码 面指定的administrator用户的密码
--*/ --备份;with init覆盖|noinit添加
backup database 库名 to disk= 'E:\H_BACKUP.bak ' with init
--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z: '
--删除(这句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak '
--完成后删除映射 exec master..xp_cmdshell 'net use z: /delete '
[解决办法]
create proc spDBBackUNC @DBName varchar(20),@Path nvarchar(50)
As
declare @fname varchar(100),@fname1 varchar(100),@sql varchar(200)
set @fname = @Path +(case when right(@Path,1) <> '\ ' then '\ ' else ' ' end)
+@DBName+ '_ '+convert(char(8),getdate(),112)+ '_ '+replace(convert(char(8),getdate(),108), ': ', ' ')+ '.bak '
set @sql = 'backup database '+@DBName+ ' to disk = ' ' ' +@fname+ ' ' ' '
exec(@sql)
--print @sql
go
/* 异地备份数据库: 将远程路径使用net Use映射到本地来备份.需要使用:xp_cmdshell
@DBName 需备份的数据库名
@Path 备份文件存放路径,可以是本机路径或网络上的路径(需完全权限共享)
Usage:
Exec spDBBackUNC 'DB_Name ', '\\UNC\shareName '
*/