使用的是sql server 2000数据库,
我所知道的对数据库的备份主要有:
所有任务里面的:备份数据库、导入导出功能、数据库维护计划
采用“备份数据库”、“数据库维护计划”,可以把数据库备份到本地的硬盘上,可以调度每天自动运行。设置好后不需要人工操作。
而采用“导入导出功能”可以把数据库导出到局域网异地机器上(采用sql server 注册),但是这种方法需要每天手动操作。
我现在想把本地数据库自动备份到局域网其他机器上,不需要人工操作,不知道该怎么做了?
我所知道的对数据库的备份主要有:
所有任务里面的:备份数据库、导入导出功能、数据库维护计划
采用“备份数据库”、“数据库维护计划”,可以把数据库备份到本地的硬盘上,可以调度每天自动运行。设置好后不需要人工操作。
而采用“导入导出功能”可以把数据库导出到局域网异地机器上(采用sql server 注册),但是这种方法需要每天手动操作。
我现在想把本地数据库自动备份到局域网其他机器上,不需要人工操作,不知道该怎么做了?
采用数据库维护计划,备份到本地,然后才有如下到文件,复制到异地机器上。
Copy.bat具体脚本如下:
@echo off
title 正在传输数据库备份文件到远程备份服务器上!
echo 提示:开始验证服务器上是否存在备份文件!
echo 请稍候!
if exist E:\database\*.bak (goto Process ) else goto UnFound
:Process
echo 提示:在服务器上找到了备份文件!
echo -------------------------------------------------------------------------------
echo 提示:开始删除远程备份服务器上的原始文件!rem 备注:下列IP地址为远程备份服务器的IP地址!
del \\192.168.101.121\database /q /s /f
del \\192.168.101.121\database\*.* /q /s /f
if errorlevel 0 goto success
:success
echo 提示:成功删除原始文件!
echo -------------------------------------------------------------------------------
echo 提示:开始复制数据库备份文件到远程备份服务器\\192.168.101.121\database!
echo 请稍候!
rem 备注:请具体更改\\192.168.101.122\database为服务器备份文件存放的位置。\\192.168.101.121\database为备份服务器上存放的位置!
xcopy \\192.168.101.122\database \\192.168.101.121\database /y /f
rem 备注:当Xcopy命令结束后返回的Errorlevel为4说明磁盘控件不足。当Xcopy命令返回0时说明成功完成操作!
if errorlevel 4 goto lowmemory
if errorlevel 0 goto showmessage
:lowmemory
echo 警告:请查看磁盘空间是否不足!:UnFound
echo 警告:在服务器上找不到备份文件,批任务将要结束。服务器备份工作似乎没有正常进行,请确认服务器是否正常生成备份文件!
goto exit:showmessage
echo 提示:批任务完成!
echo 提示:成功复制数据库备份到远程服务器\\192.168.101.121\database!
echo 按任意键结束退出!
echo --------------------------------------------------------------------------------
:exit
pause
echo 成功复制ryckxt数据库备份到远程服务器\\192.168.101.121\1上!
Pause已实验,操作成功。不知道还有没有其他的方法?
--映射网络上的共享文件夹为Z盘
declare @sql1 varchar(8000)
SET @SQL1=
'exec master..xp_cmdshell ''net use z: "' + '网络上的共享路径' + '" "' + '目标客户机访问密码' + '"' + ' /user:' + '目标客户机电脑名或IP' + '\' + '目标客户机上的有效用户名' + ''''
EXEC (@SQL1)
BACKUP DATABASE hrdba --这里的test指的是数据库名称
TO disk = 'z:\ggggg' --这里指名的数据库路径
WITH FORMAT,
NAME = 'Full Backup of MyNwind' --这个是备注,无所谓。。随便写。
--删除映射
exec master..xp_cmdshell 'net use z: /delete'注意,前提是服务器能使用你提供的用户名及密码对客户机进行有效访问。然后将以上做成一个存储过程,放到作业里定时执行就可以了。
以下的方法不需要这个前提
利用FTP网络异地备份 SQL SERVER 2000 数据库解决方案:以下步骤在“需要备份的主机”中进行:
①、先用SQL SERVER 2000 本身的备份计划全库定时备份到服务器本地硬盘的备份目录;
②、在服务器中安装配置Serv-U,并将某个FTP帐户的主目录指定到①所指定的备份目录;以下步骤在“要备份到的主机”中进行:
③、在想要备份到的机器中,安装配置CuteFTP,并登录到②的FTP;
④、利用CuteFTP的“工具”→“文件夹工具”→“备份远程文件夹”菜单命令来进行定时计划备份。