目前分類:SQL學習筆記 (6)

瀏覽方式: 標題列表 簡短摘要

建立SQL Server Express 的定期自動備份

最近因為工作上的需要,開始了跟sql server的親密接觸。這才發現express版本並沒有提供自動備份的功能,一切都需要手工操作。

都甚麼年代了,竟然還需要手工操作。根據網路上谷哥大神的指示,這才發現原來,express上的agent套件是個裝飾品。

如果express版本要備份的話就只能自己寫程式來使用。歷經千辛萬苦、這才真的完成整個自動備份的過程。

基本上,自動備份需要兩個程式來互相呼叫。一個是用bat檔案、另一個是用T-SQL語法。來達成自動備份的目的

我的作法如下:

1.T-SQL語法

 

GO
DECLARE
@backupTime VARCHAR(20)
DECLARE
@fileName VARCHAR(1000)
SELECT
@backupTime=(CONVERT(VARCHAR(8), GETDATE(), 112) +REPLACE(CONVERT(VARCHAR(5), GETDATE(), 114), ':', ''))
SELECT
@fileName='F:\Database_Backup\DB_'+@backupTime+'.bak'
backup database DBName to disk=@fileName

GO

 

@fileName='F:\Database_Backup(用來設定備份檔案存放位置請自行設定)\DB(備份檔案的前綴字)_'+@backupTime+'.bak' 

backup database DBName(資料庫名稱) to disk=@fileName 資料庫名稱請自行修改為你所要備份的資料庫,不然系統出現錯誤問題本人概不負責

然後將上面的程式用筆記本另外存檔為*.sql的檔案,副檔名為sql。

2.bat檔案

大家都說只要這段就可以了sqlcmd -S 主機名稱\instance -i c:\XXX.sql

我個人搞了半天是沒成功過,後來換用另一個只不過是多加一個參數 sqlcmd -S 主機名稱\instance -E -i c:\XXX.sql

這樣就可以正常備份了

當然~我並沒有寫成.bat的檔案去執行,因為不知道是我笨還是電腦笨。*.bat的檔案可以執行。但是沒有產生備份檔案。

我就索性直接在排程內將上面的指令直接丟進去執行。然後~就很神奇的成功了..........

 

以下為參考網站有疑問的各位可以去看看,也感謝這幾個網站的大大熱情的分享

1.yilin的程式日記

 

2.愛力克斯的賣寇蒐福特Blog

3.想。涉。經

4.JERRY技術分享

5.積沙成塔

 

 

 

 

 

kidspeak 發表在 痞客邦 留言(1) 人氣()

SQL Server 在運行 Microsoft SQL Server 2000 的電腦上啟動時,SQL Server 程式總會嘗試在 Active Directory 中註冊虛擬伺服器。您可能會在 Microsoft Windows NT 事件日誌中看到以下警告:

Warning SuperSocket Info : (SPNRegister) :Error 1355
Event Category 8
Event ID 19011

這條資訊不是錯誤資訊。這條資訊僅僅是一個警告,說明 SQL Server 無法註冊服務主要名稱 (Service Principal Name, SPN)。這表示將使用 Microsoft Windows NT Challenge\Response (NTLM) 驗證機制,而不使用 Kerberos

原因
通常,出現這條資訊的原因是 SQL Server 服務帳戶正以不具有註冊 SPN 的必要許可權的域用戶身份運行。此外,該錯誤也可能與伺服器是 Active Directory 目前不支持的群集伺服器或故障轉移虛擬伺服器有關。

狀態
Microsoft 已經證實這是 SQL Server 2000 中存在的問題。

參考
269229 How to Manually Re-Create the Cluster Service Account(如何手動重新創建群集服務帳戶

kidspeak 發表在 痞客邦 留言(0) 人氣()

使用文字介面一次建立多個資料庫檔案

USE master;

CREATE DATABASE demoscript                                           ------>資料庫名稱
ON (
NAME = demoscript_data,                                                 ------->檔案名稱
FILENAME = ‘C:\SQLData\Data\demoscript_data.mdf’,      ------->檔案路徑
SIZE = 10MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 5MB
)
,(
NAME = demoscript_data2,
FILENAME = ‘C:\SQLData\Data\demoscript_data2.ndf’,
SIZE = 10MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 5MB
)
LOG ON (
NAME = demoscript_log,
FILENAME = ‘C:\SQLData\Log\demoscript_log.mdf’,
SIZE = 5MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 2MB
);
GO

kidspeak 發表在 痞客邦 留言(0) 人氣()

指令碼內容:

USE master;      (master主要資料庫)

CREATE DATABASE demoscript(資料庫名稱可以更改為自定名稱)
ON (
NAME = demoscript_data,(檔案名稱)
FILENAME = ‘C:\SQLData\Data\demoscript_data.mdf’,(存放路徑)
SIZE = 10MB,                  ------>存放空間
MAXSIZE = UNLIMITED,   ------>最大空間
FILEGROWTH = 5MB        ------>自動成長
)
LOG ON (
NAME = demoscript_log,
FILENAME = ‘C:\SQLData\Log\demoscript_log.mdf’,
SIZE = 5MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 2MB
);
GO

kidspeak 發表在 痞客邦 留言(0) 人氣()

sql資料型態整理表,資料來源微軟技術中心

 

分類

資料類型

位元數

描述

exact numeric

精確數值

bigint

8 byte

 

-2^63 (-9,223,372,036,854,775,808) 2^63-1 (9,223,372,036,854,775,807)整數

Bit

1 byte

0,1,null

decimal

視精確度而定

decimal[ (p[ ,s] )]

p (有效位數)

s(小數位數)

0 <= s <= p

 

-10^3810^38-1

有效位數

儲存體位元組

1~9

5

10~19

9

20~28

13

29~38

17

int

4 byte

-2^31 2^31 -1
( -2147483648 ~ 2147483467)
整數

Money

8 byte

-922,337,203,685,477.5808 922,337,203,685,477.5807 (縮放到小數點後四位)

numeric

視精確度而定

numeric[ (p[ ,s] )]

p (有效位數)

s(小數位數)

0 <= s <= p

 

-10^3810^38-1
decimal(18,0)18是定點精度,0是小數位數。
decimal(a,b)
a指定指定小數點左邊和右邊可以儲存的十進位數字的最大個數,最大精度38
b指定小數點右邊可以儲存的十進位數字的最大個數。小數位數必須是從 0  a之間的值。預設小數位數是 0

smallint

2 byte

-2^15 (-32,768) 2^15-1 (32,767)整數型態

Smallmoney

4 byte

- 214748.3648 214748.3647(縮放到小數點後四位)

tinyint

1 byte

0 255整數

 

kidspeak 發表在 痞客邦 留言(0) 人氣()

MySQL工作台簡介

MySQL工作台提供了圖形化工具的工作與 MySQL服務器和數據庫。MySQL工作台完全支持MySQL伺服器5.1及5.1以上版本。mysql workbench登入畫面它也同時相容於 MySQL伺服器5.0但不支援5.0所有功能,只有部份支援。它不支援MySQL伺服器版本4.x。 

MySQL的工作台提供了三個主要方面的功能:  

  • SQL開發
  •  資料塑模化
  •  伺服器管理

kidspeak 發表在 痞客邦 留言(0) 人氣()

Close

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

reload

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼