🧠【完整教學】Spotfire 資料庫備份與還原(遠端 → 本機)|SQL Server 實戰搬家指南
📌 前言:為什麼你會需要搬 Spotfire 資料庫?
在實務上,你很常會遇到這種情境:
- 想在本機測試 Spotfire Automation
- 客戶環境不能亂動 → 要複製一份到自己電腦
- Server 壞掉 → 要快速復原
- 想分析 Job / 排程 / Routing 設定
👉 這時候你要做的其實只有一件事:
把 Spotfire 的資料庫從遠端搬到本機
但問題是…
❌ 很多人不知道該備哪個 DB
❌ 還原後連不起來
❌ Job 查不到資料
這篇會帶你「一步一步」搞懂 👇
🧩 一、Spotfire 架構(新手一定要懂)
Spotfire Server 的「核心其實是資料庫」
通常會有兩個關鍵 DB:
| 資料庫名稱 | 功能 |
|---|---|
| Spotfire_DB | 存設定、Automation Job、排程 |
| Spotfire_Config | 存 Server 設定、帳號、節點 |
👉 這兩個缺一不可!
🧠 二、你現在在做的事情(白話版)
你可以想成:
把「公司電腦的設定」複製到「你自己的電腦」
流程其實只有 3 步:
遠端 Server → 備份 → 搬檔案 → 本機還原
🛠️ 三、Step 1:從遠端 Server 做備份
📍 目標:把資料庫變成一個
.bak 檔
你可以在 SQL Server 裡執行類似這種指令(⚠️已改寫):
BACKUP DATABASE Spotfire_DB
TO DISK = 'E:\Backup\sf_main.bak'
WITH FORMAT;
再備份另一個:
BACKUP DATABASE Spotfire_Config
TO DISK = 'E:\Backup\sf_config.bak'
WITH FORMAT;
🧠 新手理解
這一步在做什麼?
👉 就像把資料「打包成壓縮檔」
📦 四、Step 2:把備份檔搬到本機
你只需要把這兩個檔案:
sf_main.bak
sf_config.bak
搬到你的電腦,例如:
D:\Restore\
📌 常見方式
- 遠端桌面(RDP)
- USB
- 網路共用資料夾
- WinSCP
🔄 五、Step 3:在 localhost 還原資料庫
📍 還原概念(超重要)
👉 把
.bak 還原成「可以用的資料庫」
✏️ 還原指令(已改寫版本)
RESTORE DATABASE Spotfire_DB
FROM DISK = 'D:\Restore\sf_main.bak'
WITH
MOVE 'SF_Data' TO 'D:\SQLData\Spotfire_DB.mdf',
MOVE 'SF_Log' TO 'D:\SQLData\Spotfire_DB.ldf',
REPLACE;
另一個:
RESTORE DATABASE Spotfire_Config
FROM DISK = 'D:\Restore\sf_config.bak'
WITH
MOVE 'CFG_Data' TO 'D:\SQLData\Spotfire_Config.mdf',
MOVE 'CFG_Log' TO 'D:\SQLData\Spotfire_Config.ldf',
REPLACE;
🧠 新手理解
這一步就是:
把壓縮檔「解壓縮回資料庫」
🔍 六、驗證是否成功(非常重要)
你可以查一個「系統內建 View」
SELECT TOP 10 *
FROM Job_Status_View;
如果有資料:
✅ 表示 Automation Job 存在
✅ 排程有被帶過來
✅ 系統正常
⚠️ 七、最常見錯誤(90%的人卡這)
❌ 1. 還原成功但 Spotfire 連不上
原因:
👉 連線字串還指向「舊 Server」
✔ 解法:
改成:
localhost
❌ 2. 帳號不存在
錯誤現象:
Login failed for user
✔ 解法(示意):
CREATE LOGIN sf_user WITH PASSWORD = 'Test123!';
ALTER USER sf_user WITH LOGIN = sf_user;
❌ 3. 還原失敗(檔案路徑錯誤)
👉 SQL Server 沒權限寫入資料夾
✔ 解法:
- 改成 SQL Server Data 目錄
- 或給權限
🚀 八、進階:這樣做可以幹嘛?
完成後你可以:
✅ 1. 本機跑 Automation Services
不用動正式環境
✅ 2. Debug Job 問題
例如:
- Job 為什麼沒跑
- Routing Rule 錯誤
- 排程時間異常
✅ 3. 做資料分析
例如你畫面中的:
SELECT * FROM Job_Instance_View;
👉 可以分析:
- 哪些 Job 常失敗
- 執行時間
- Server 負載
🧠 九、工程師觀點(重點總結)
👉 Spotfire 本質:
Server = 程式
DB = 大腦(最重要)
👉 你做的事情其實是:
複製大腦 → 放到新身體
🎯 十、結論(給忙碌工程師)
如果你只記得一件事:
Spotfire 搬家 = 備份 2 個 DB + 還原
留言
張貼留言