bestlong 怕失憶筆記

當健忘由隨機逐漸趨向常態時,作筆記是非常必要的

Entries for the ‘Database’ Category

[DB] MS SQL 6.5 安裝後預設會建立的 Device 與 Database

預設會建立的 Device 列表:

master
MSDBData
MSDBLog
TEMP_DB

預設會建立的 Database 列表:

master – 用於控制使用者資料庫以及 SQL Server 的運作。
model – 使用者資料庫樣板,所有新建立的使用者資料庫均會依此建立。
msdb – 存放各種 SQL Executive Services 相關的設定。
pubs – 為一個範例資料庫,安裝完後若不需要可直接刪除。
tempdb – 提供存放運算過程中產生的暫時性 Table 或其他需要儲存空間的運算。

上列的 Database 除了msdb 的 data 位於 MSDBData device 而 log 位於 MSDBLog device 外,其於 database 均位於 master device 上。

Leave a Comment

[DB] MS SQL 6.5 發現有 Database 的狀態為 Suspect 如何處理?

因為想移動 MS SQL 6.5 的其中一個資料庫到速度較快的磁碟機,所以在 Query 工具下改好 master.sysdevices 中的紀錄後,停止 SQL Server 服務並將 Data 與 Log 的 Device 檔案移動好,然後再啟動 SQL Server 服務。卻發現在 Enterprice Manager 程式內所移動的 Database 的圖示變成灰色並且顯示 Suspect 的訊息。重新檢查過程發現是因為改 master.sysdevices 的 phyname 時所指定的路徑有誤,所以 SQL Server 找不到檔案所以造成問題。

不過 Enterprice Manager 程式沒有支援解決 Suspect 的功能,必須手動處理步驟如下:

1. 確定 Database 所在的 Device 檔案都存在。
2. 在 ISQL/W 下開啟 MSSQL\Install\Instsupl.sql 並執行。
3. 執行下列指令:

use master
go
exec sp_resetstatus suspect_db_name

4. 重新啟動 SQL Server
5. 確定 之前 Suspect 的 Database 是否已恢復正常。
6. 執行 dbcc newalloc, dbcc textall, and dbcc checkdb 檢查 Database 狀況。

Leave a Comment

[DB] 如何設定 Client 連線至 MS SQL 2005

微軟的 MS SQL 2005 在 2005/12 發表上市,去了官方網站下載 Express 版本來研究一下。安裝過程還算平順,然後開始用 Delphi 5 寫程式來連線卻碰到找不到主機連接失敗的問題。用了幾個小時的時間摸索與上網找資料終於有了概念並成功建立連線。並且在其他 MS SQL2000 的 Client 電腦,在不安裝任何程式下也成功建立連線。

可以參考下列資料:
http://www.datamasker.com/SSE2005_NetworkCfg.htm
http://blogs.msdn.com/sqlexpress/archive/2005/05/05/415084.aspx
http://blogs.msdn.com/sqlexpress/archive/2004/07/23/192044.aspx

http://blogs.msdn.com/sqlexpress/

Comments (4)

如何在 MS SQL 環境計算 SQL 語法的執行時間

對於資料異動量大的資料庫來說,將其調校至最佳化的狀況,唯有透過不斷的進行綜合分析與測試,來決定調校的方向。
想要計算出 SQL 語法的執行時間,可以使用以下簡單的方式

使用 MSSQL 6.5

declare @d datetime
select @d = getdate()
— 要計算時間的 SQL 語法開始
select * from TableName
— 要計算時間的 SQL 語法結束
select datediff(ms,@d,getdate())

使用 MSSQL 2000

declare @d datetime
set @d = getdate()
— 要計算時間的 SQL 語法開始
select * from TableName
— 要計算時間的 SQL 語法結束
select datediff(ms,@d,getdate())

Leave a Comment

資料庫故障

公司的 MS SQL 6.5 資料庫又出問題
上ㄧ次是 94/11/02 資料遺失,這次的狀況同樣是 Table : GLOSSY 的所有資料全部遺失。
確認可能發生錯誤的時間是 94/11/07 21:00 至 94/11/08 06:00 時段之間
檢查主機的事件檢視器也沒有相關訊息
該 Table 會在每日的 22:45 執行 index 重建作業,不確定是否有關

目前的處理方法
先重建 Table 後,用 94/11/07 21:00 的備份檔(歷史部份)與 94/11/08 21:00 備份檔(當日新增資料)救回
並將重建 Index 的作業改成每週二的 22:45 執行。

同時盡速進行將 MS SQL 6.5 升級到 MS SQL 2000 的計畫。

Leave a Comment

  • 工商服務

    廣告讀取中...
  • 近期留言

  • 標籤

  • 彙整