sqlserver 数据库,通过页面备份数据库的问题

小猫王 发布于 2013/08/03 16:01
阅读 188
收藏 0

项目有在这样一个需求:通过页面来备份 sqlserver数据库;

我现在的方法:

String command = dir + "backup_eiis_sqlServer.bat";

Runtime.getRuntime().exec(command);

下面是backup_eiis_sqlServer.bat

SET dbbak_dir=C:\EIIS_DBBaker\
if not exist %dbbak_dir% mkdir %dbbak_dir%

REM Backup Database Name
SET B_Database_Name=eiis
SET B_DATE=%date:~0,4%%date:~5,2%%date:~8,2%
ECHO use master ;>%dbbak_dir%FULL_backup.sql
ECHO go >>%dbbak_dir%FULL_backup.sql
ECHO BACKUP DATABASE %B_Database_Name% >>%dbbak_dir%FULL_backup.sql
ECHO TO DISK = '%dbbak_dir%%B_Database_Name%_%B_DATE%_FULL.bak' >>%dbbak_dir%FULL_backup.sql
ECHO WITH INIT , NOUNLOAD ;>>%dbbak_dir%FULL_backup.sql
ECHO go >>%dbbak_dir%FULL_backup.sql

REM SQLCMD.EXE path
SET SQLCMD_PATH=C:\Program Files\Microsoft SQL Server\90\Tools\Binn\

REM Database user name and password
SET DBUser=eiis
SET DBpassword=eiis
SET DBAddress=192.168.1.22
ECHO BACKUP DATABASE
"%SQLCMD_PATH%SQLCMD.EXE" -U %DBUser% -P %DBpassword% -S %DBAddress% -i %dbbak_dir%FULL_backup.sql -o %dbbak_dir%%B_Database_Name%_%B_DATE%_FULL.log

REM Delete old backup files
FORFILES /P %dbbak_dir% /D -60 -M %B_Database_Name%*.bak /C "cmd /c del
@file"
FORFILES /P %dbbak_dir% /D -60 -M %B_Database_Name%*.log /C "cmd /c del
@file"


REM Delete Temp files
DEL /Q %dbbak_dir%FULL_backup.sql

发现这个bat文件,使用SQLCMD.EXE工具,只有在 数据库服务器上才能执行;

要在web服务器上怎么备份sqlserver数据库?

mysql 和 oracle 用的时间多,sqlserver不怎么熟悉,网上也没找到;


加载中
0
一堆BUG
一堆BUG
我记得可以直接通过Sql语句备份,具体Google一下
小猫王
小猫王
这是网上找的,我就用sql备份了
0
一堆BUG
一堆BUG

Sqlserver通过Sql语句

backup database Company to disk='d:\backup\1.bak'

会把数据库备份到服务器指定的位置,后面要怎么操作自己做呗。

很久没搞这个了,具体也不记得了。

可以看这个网址:http://www.cnblogs.com/qinpengming/archive/2011/03/07/struggle.html

或者自己看一下MSDN

http://technet.microsoft.com/zh-cn/library/ms187510.aspx

返回顶部
顶部