1create
proc
[dbo
].[usp_autobackupdb]2
@dbname sysname=
null
--要備份的資料庫名,不指定即為全部備份
3 ,@path
nvarchar(128)=
'd:\'--
備份目錄路徑
4 ,@backup_type
varchar(16)=
'database'--
備份型別,可以為database,log
5 ,@backup_sysdb
int=0--
是否備份系統資料庫,0為不備份,1為備份6as
7set nocount on;8
9declare
@dbcnt
int=
010 ,@sql
varchar(2000)=
''11 ,@except_db
varchar(1000)=
case
@backup_sysdb
12when
0then
''''+'
master'+
''''+'
,'+''''+'
msdb'+
''''+'
,'+''''+'
tempdb'+
''''+'
,'+''''+'
model'+
''''
13when
1then
''end;14
declare
@db_list
table(id int
identity(1,1) not
null
,name sysname);
15declare
@backup_err_list
table(id int
identity(1,1) not
null
,name sysname);
16if
right(@path,1)<>'\
'17set@path
=@path+'
\'1819
if@dbname
isnull
or@dbname
in ('
all','*'
)20begin
21--
將所有資料庫名存到一張臨時表上
22set
@sql='
select name from sys.databases where name not in ('+
@except_db+'
);'23insert
into
@db_list(name) exec(@sql
);24
25--
得到一共有多少個資料庫
26select
@dbcnt
=count(1) from
@db_list;27
--開始迴圈
28while
@dbcnt
>029
begin
30--
從臨時表中獲得最後乙個資料庫的名字
31select
@dbname
=name from
@db_list
where id=
@dbcnt;32
set@sql='
backup '+
@backup_type+'
'+@dbname+'
to disk='+
''''
+@path
+@backup_type+'
_'+@dbname+'
.'+convert(varchar(8),getdate(),112)+'.
'+datename(hh,getdate())+
''''
33--
開始迴圈備份
34exec (@sql
);35
if@@error
<>036
insert
into
@backup_err_list(name) values(@dbname
);37
set@dbcnt
=@dbcnt-1
38end
39end
40else
41begin
42set
@sql='
backup '+
@backup_type+'
'+@dbname+'
to disk='+
''''
+@path
+@backup_type+'
_'+@dbname+'
.'+convert(varchar(8),getdate(),112)+'.
'+datename(hh,getdate())+
''''
43--
僅備份一次
44exec (@sql
);45
if@@error
<>046
insert
into
@backup_err_list(name) values(@dbname
);47
48end
49if
exists(select
*from
@backup_err_list)50
select id ,name as
'backup_err_dbname
'from
@backup_err_list;51
else
'backup success';
5253
set nocount off;54
55go
Sqlserver2008 R2 機器改名
sqlserver2008 r2 機器改名 1.對於安裝好 sqlserver 2008 r2 的機器首先要啟動混合方式登入,允許 sa賬戶登入 2.重啟機器更名後,可以將新機器的 windows 賬戶加入到 sql中,需要兩步,先增加登入使用者,再增加角色 3.在查詢視窗執行如下命名 1.使用se...
Sqlserver2008 R2 機器改名
今天在做sql server 2008 複製的發布時,發現所用的伺服器被改名過,發布時總是找回原來的名稱。1.對於安裝好sqlserver 2008 r2 的機器首先要啟動混合方式登入,允許sa賬戶登入 2.重啟機器更名後,可以將新機器的windows賬戶加入到sql中,需要兩步,先增加登入使用者,...
SQLSERVER2008 R2的埠設定
通過儲存過程檢視 我們首先開啟sqlserver連線sqlserver2008的資料庫例項,然後執行如下儲存過程 查詢埠號 exec sys.sp readerrorlog 0,1,listening 查詢出來的結果如下圖所示 從上圖我們可以看出sql server 2008的埠號是1433。這邊也...