日期:2014-05-18  浏览次数:20544 次

sql server 20005 dos 备份操作等命令
sql server 20005 dos 备份操作等命令 就资料详细点

------解决方案--------------------
exec sp_addumpdevice‘设备类型’,‘指定备份设备的逻辑名称,‘指定备份设备的物理名称’例:exec sp_addumpdevice 'disk','含笑工作室','J:\ databasebak\含笑工作室.bak'
------解决方案--------------------
进入安全模式或dos后(建议安全模式,因为路径名称太长)找到sqlserver安装是指定的数据目录,如果你没又修改过一般是在c:或d:即c:\Program Files\Microsoft SQL Server\MSSQL\Data 或 D:\Program Files\Microsoft SQL Server\MSSQL\Data(没有的话自己加油去别的地找找)。对于每一个数据库都对应两个文件,.mdf为数据文件.ldf为日志文件,把你想备份的数据库文件(两个都要哦)考走就ok了。把操作系统ok了之后,将文件考回,然后在sql的企业管理器中用那条“附加数据库”选项就能将数据回复了。

------解决方案--------------------
SQL code
1 制作批处理文件

将下面的源代码保存为(文件名.bat),标注为蓝色的需要根据个人环境来改变

::文件名:SQLServer2000数据库自动备份.bat 
::作者:Feng   创建日期:2008-11-27 
::功能:将数据库备份导出到以当前日期和时间命名的文件中,并保存到该月的文件夹下。 
::注意:脚本在windows 2003中文版操作系统下测试可用,其他环境下请先测试是否可用。 
::测试:在运行前,请先在DOS命令行中键入echo %date%%time%,查看日期格式,如果是“yyyy-mm-dd 星期N 时:分:秒.厘秒”,例如“2008-11-26 星期三08:30:43.90”,则可用 

::--------------------------设置变量 

::服务器名 
@set ServerName=. 

::登陆用户名 
@set LoginUser=sa 

::登陆密码 
@set LoginPwd=sa 

::数据库名 
@set DataBaseName=backupBasedata 

::ISQL的路径,这个需要配置到系统环境变量中去(我的电脑属性-高级-环境变量-系统环境变量-path值后面添加sql工具的路径,如C:\Program Files\Microsoft SQL Server\80\Tools\BINN) 
::@set ISQLPath=C:\Program Files\Microsoft SQL Server\80\Tools\Binn 

::设置保存的绝对路径 
@set SavePath=G:\11 

::根据当前的日期时间,生成备份的文件名。格式可以自己改 
@set FileName=bak-[%date:~0,10%-%time:~0,2%-%time:~3,2%-%time:~6,2%.%time:~9,2%]-bak.bak 

::生成当月的文件夹名 
@set DirName=%date:~0,7% 

::备份数据库语句 
@set ExecSQL="backup database %DataBaseName% to disk='%SavePath%\%DirName%\%FileName%'" 

::-------------------------创建文件夹 

::每月1号创建新的文件夹 
@if %date:~8,2%==01 (md %SavePath%\%DirName%) 

::如果没有本月文件夹(初次运行时如果不是1号),则创建本月文件夹 
@if not exist %SavePath%\%DirName% (md %SavePath%\%DirName%) 

::-------------------------备份数据 

::开始执行导出 
@echo 开始备份数据 
isql -U %LoginUser% -P %LoginPwd% -S %ServerName% -d %DataBaseName% -Q %ExecSQL% 

::-------------------------完成备份 

@echo 数据备份成功 

::如果需要让客户确认,请去掉下面代码前面的::注释符。 
::@pause
 

2  添加windows计划任务

控制面板--任务计划--添加任务计划

定期执行这个批处理文件

或者手动双击执行该批处理文件,来实现数据库的备份

------解决方案--------------------
我承认我是被标题骗进来的
顺便说明一下 别把dos和命令行方式混淆,其实从2000开始就不存在dos了严格的说
如果脱离windows什么也别谈了,就copy xcopy等,参考楼上的
命令行下的操作方式就多了
------解决方案--------------------
为何不用sql job或维护计划进行备份呢,
一定要dos方式吗?

可以把备份命令写成存储过程, 
然后再dos下用sqlcmd连进sql server,
然后执行 exec [存储过程名]
------解决方案--------------------
dos 方式那是 7.0以前的事情了,现在很少直接用命令行方式去运行这些东西,除非你是入侵者.

其实备份最好还是通过界面进行,当然也可以写语句由服务器处理或创建作业定时运行,但这与命令行方式可不是一回事.
------解决方案--------------------
我回去给你找 我有现成的代码 是成功的 不过今天忘带了
------解决方案--------------------
你直接在数据库里面写有时候会挂掉的 放在后台 有个专门的类的
------解决方案--------------------
还有还原的是吗