[GCP] 在Compute Engine上部屬SQL Server,並從GCS還原

點閱: 158

公司最近擬定新的計畫,打算從公司的NAS備份至Google Cloud Storage(GCS)上,並在Compute Engine上建立一個SQL Server 2016的服務,將GCS上的備份資料還原至Compute Engine,作為日後歷史資料的查詢使用。


啟動GCP認證

gcloud init -- 啟動gcp認證

移除GCP認證

gcloud auth revoke [email_address]

設定資料夾同步至GCS

gsutil rsync -d -r [local_file_path] gs://[my_bucket_name_on_GCS]

複製特定資料至GCS

gsutil cp [local_file_path] gs://[my_bucket_name_on_GCS]

選定機器等級

開到V16的CPU, 60G的RAM

布署選擇

直接布署應用程式映像檔,主機不用布署

備份流程圖

程式碼

--1. download from gcs by gsutil.cmd
gsutil rsync -d -r gs://[my_bucket_name_on_GCS] [local_file_path]

--2. create db
create database [your_db_name]
go

--3. Restore the cold data from gcs.
USE [master]
RESTORE DATABASE [your_db_name] --Full backup
FROM  DISK = {path:}\your_db_name.bak
WITH  FILE = 1,
    RECOVERY,  -- recovery, norecovery, standby
    REPLACE,   -- to overrite db setting. only done this first time for full backup.
    STATS = 5, -- control how many percentage reach will show the complete message.
MOVE N'your_db_name' TO {path:}\your_db_name.mdf, --把your_db_name的mdf檔寫到 {path:}\your_db_name.mdf 中
MOVE N'your_db_name_log' TO {path:}\your_db_name_log.ldf --把your_db_name的ldf檔寫到 {path:}\your_db_name_log.ldf 中

RESTORE DATABASE [your_db_name] FROM  DISK = {path:}\your_db_name.bak WITH  FILE = 1,  NOUNLOAD,  STATS = 5 -- Diff backup

GO

About the Author

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Related Posts