查看: 25|回复: 0

[win2003] sql server 2005 的卸载和自动备份 说明

[复制链接]

4

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2008-6-12
发表于 2008-9-8 19:44:12 | 显示全部楼层 |阅读模式

卸载:执行命令
c:\sqlserver2005\Setup.exe /qb REMOVE=ALL INSTANCENAME=<InstanceName>
其中,setup.exe是SQLEXPR_ADV.EXE解压缩之后的安装程序。

之所以这么做,是因为在控制面板卸载时不干净,sql的实例都还在。用这个方法最好。

自动备份:
原文:http://www.mssqltips.com/tip.asp?tip=1174
思路:
  1:生成一个自动备份的sql脚本,一个名叫 sp_BackupDatabase 的存贮过程。
 

1

USE [master]  
 2
GO  
 3
/**//****** Object:  StoredProcedure [dbo].[sp_BackupDatabase]    Script Date: 02/07/2007 11:40:47 ******/  
 4
SET ANSI_NULLS ON  
 5
GO  
 6
SET QUOTED_IDENTIFIER ON  
 7
GO  
 8

 9

10
-- =============================================  
11
--
 Author: Edgewood Solutions  
12
--
 Create date: 2007-02-07  
13
--
 Description: Backup Database  
14
--
 arameter1: databaseName  
15
--
 arameter2: backupType F=full, D=differential, L=log
16
--
 =============================================  
17
CREATE PROCEDURE [dbo].[sp_BackupDatabase]   
18
       
@databaseName sysname, @backupType CHAR(1)  
19
AS  
20
BEGIN  
21
       
SET NOCOUNT ON;  
22

23
       
DECLARE @sqlCommand NVARCHAR(1000)  
24
       
DECLARE @dateTime NVARCHAR(20)  
25

26
       
SELECT @dateTime = REPLACE(CONVERT(VARCHARGETDATE(),111),'/',''+  
27
       
REPLACE(CONVERT(VARCHARGETDATE(),108),':','')   
28

29
       
IF @backupType = 'F'  
30
               
SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName +  
31
               
' TO DISK = ''C:\Backup\' + @databaseName + '_Full_' + @dateTime + '.BAK'''  
32
         
33
       
IF @backupType = 'D'  
34
               
SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName +  
35
               
' TO DISK = ''C:\Backup\' + @databaseName + '_Diff_' + @dateTime + '.BAK'' WITH DIFFERENTIAL'  
36
         
37
       
IF @backupType = 'L'  
38
               
SET @sqlCommand = 'BACKUP LOG ' + @databaseName +  
39
               
' TO DISK = ''C:\Backup\' + @databaseName + '_Log_' + @dateTime + '.TRN'''  
40
         
41
       
EXECUTE sp_executesql @sqlCommand  
42
END

  注意,要编译一下。

  2:调用这个存储过程的一个sql脚本2。这个脚本可以被外部的程序调用,使用sqlcmd.exe来解释执行。
     

1

sp_BackupDatabase 'master''F'
2
GO
3
sp_BackupDatabase 
'model''F'
4
GO
5
sp_BackupDatabase 
'msdb''F'
6
GO
7
QUIT


  3:设置定时任务,每天执行上述脚本2.
 

sqlcmd -S serverName --i C:\Backup\脚本2.sql

      上述语句是计划任务的“Run”里面的参数。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部