本頁說明如何建立來源連線設定檔,以便執行同質 SQL Server 遷移作業。這個遷移情境的來源連線設定檔,會因來源資料庫而異:
- 自行管理和 Amazon RDS 來源的來源連線設定檔。
- SQL Server 適用的 Cloud SQL 來源的來源連線設定檔。
適用於自行管理和 Amazon RDS 來源
如要為自行管理或 Amazon RDS 來源建立來源連線設定檔,請按照下列步驟操作:
控制台
- 前往 Google Cloud 控制台的「Connection profiles」(連線設定檔) 頁面。
- 按一下 Create profile。
- 在「建立連線設定檔」頁面,從「設定檔角色」清單選取「來源」。
- 從「Database engine」(資料庫引擎) 清單中選取「SQL Server」。
- 提供連線設定檔的下列資訊:
- 連線設定檔名稱。
- 連線設定檔 ID。
- 區域。
- Cloud Storage bucket,其中包含 上層資料庫資料夾,您可以在其中建立 full、diff 和 logs 資料夾 (用於存放完整備份、差異備份和交易記錄檔)。
如要進一步瞭解連線設定檔欄位,請參閱「 連線設定檔總覽」。
- 選用:在「測試連線設定檔」部分,按一下「執行測試」。
資料庫遷移服務會快速檢查,確認您提供的連線詳細資料足以存取資料。
- 按一下頁面底部的「建立」。
「Connection profiles」(連線設定檔) 頁面隨即顯示,並列出新建立的連線設定檔。
gcloud
這個範例使用選用的 --no-async 旗標,因此所有作業都會同步執行。這表示某些指令可能需要一段時間才能完成。您可以略過 --no-async 旗標,以非同步方式執行指令。如果使用,則需要使用
gcloud database-migration operations describe 指令,確認作業是否成功。
使用下列任何指令資料前,請先替換以下項目:
- CONNECTION_PROFILE_ID 替換為連線設定檔的機器可讀 ID。
- 將 REGION 替換為要儲存連線設定檔的區域 ID。
- CONNECTION_PROFILE_NAME 替換成連線設定檔的人類可讀名稱。這個值會顯示在 Google Cloud 控制台的資料庫遷移服務中。
- SOURCE_STORAGE_BUCKET_NAME Cloud Storage bucket 名稱,其中包含您建立 full、diff 和 logs 資料夾的上層資料庫資料夾 (這些資料夾會存放完整備份、差異備份和交易記錄檔)。
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud database-migration connection-profiles \ create sqlserver CONNECTION_PROFILE_ID \ --no-async \ --display-name=CONNECTION_PROFILE_NAME \ --gcs-bucket=SOURCE_STORAGE_BUCKET_NAME \ --region=REGION
Windows (PowerShell)
gcloud database-migration connection-profiles ` create sqlserver CONNECTION_PROFILE_ID ` --no-async ` --display-name=CONNECTION_PROFILE_NAME ` --gcs-bucket=SOURCE_STORAGE_BUCKET_NAME ` --region=REGION
Windows (cmd.exe)
gcloud database-migration connection-profiles ^ create sqlserver CONNECTION_PROFILE_ID ^ --no-async ^ --display-name=CONNECTION_PROFILE_NAME ^ --gcs-bucket=SOURCE_STORAGE_BUCKET_NAME ^ --region=REGION
您應該會收到類似以下的回應:
Waiting for connection profile [CONNECTION_PROFILE_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created connection profile CONNECTION_PROFILE_ID [OPERATION_ID]
SQL Server 適用的 Cloud SQL 來源
您可以使用 Google Cloud CLI,為 SQL Server 適用的 Cloud SQL 來源建立來源連線設定檔。
這個範例使用選用的 --no-async 旗標,因此所有作業都會同步執行。這表示某些指令可能需要一段時間才能完成。您可以略過 --no-async 旗標,以非同步方式執行指令。如果使用,則需要使用
gcloud database-migration operations describe 指令,確認作業是否成功。
使用下列任何指令資料前,請先替換以下項目:
- CONNECTION_PROFILE_NAME 替換成連線設定檔的人類可讀名稱。這個值會顯示在 Google Cloud 控制台的資料庫遷移服務中。
- CONNECTION_PROFILE_ID 替換為連線設定檔的機器可讀 ID。
- 將 REGION 替換為要儲存連線設定檔的區域 ID。這個區域必須與目的地執行個體所在區域相同。
- SOURCE_STORAGE_BUCKET_NAME :Cloud Storage bucket 名稱,用於儲存資料庫遷移服務建立的備份檔案。
-
SOURCE_STORAGE_BUCKET_FOLDER_PREFIX
替換成要儲存資料庫遷移服務所建立備份檔案的資料夾路徑。
這個路徑應以反斜線字元 (即
\) 結尾,例如:my-backup-directory/my-database/。如要進一步瞭解 Cloud Storage 物件命名空間,請參閱 Cloud Storage 說明文件中的「 關於 Cloud Storage 物件」。 - SOURCE_CLOUD_SQL_PROJECT_ID 替換為 Google Cloud 專案 ID,其中包含來源 SQL Server 適用的 Cloud SQL 執行個體。
- SOURCE_CLOUD_SQL_INSTANCE_ID 替換為來源 SQL Server 適用的 Cloud SQL 執行個體 ID。
- DESTINATION_PROJECT_ID 替換為 Google Cloud 專案 ID,其中包含目的地 SQL Server 適用的 Cloud SQL 執行個體。這個專案必須與您啟用資料庫遷移服務 API 及建立遷移工作的專案相同。
- USERNAME:資料庫遷移服務用來連線至來源資料庫的資料庫帳戶名稱。
- PASSWORD:資料庫遷移服務用來連線至來源資料庫的資料庫帳戶密碼。
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud database-migration connection-profiles \ create sqlserver CONNECTION_PROFILE_ID \ --no-async \ --display-name=CONNECTION_PROFILE_NAME \ --gcs-bucket=SOURCE_STORAGE_BUCKET_NAME \ --gcs-prefix=SOURCE_STORAGE_BUCKET_FOLDER_PREFIX \ --cloudsql-instance=SOURCE_CLOUD_SQL_INSTANCE_ID \ --cloudsql-project-id=SOURCE_CLOUD_SQL_PROJECT_ID \ --region=REGION \ --project=DESTINATION_PROJECT_ID \ --username=USERNAME \ --password=PASSWORD \ --role=SOURCE
Windows (PowerShell)
gcloud database-migration connection-profiles ` create sqlserver CONNECTION_PROFILE_ID ` --no-async ` --display-name=CONNECTION_PROFILE_NAME ` --gcs-bucket=SOURCE_STORAGE_BUCKET_NAME ` --gcs-prefix=SOURCE_STORAGE_BUCKET_FOLDER_PREFIX ` --cloudsql-instance=SOURCE_CLOUD_SQL_INSTANCE_ID ` --cloudsql-project-id=SOURCE_CLOUD_SQL_PROJECT_ID ` --region=REGION ` --project=DESTINATION_PROJECT_ID ` --username=USERNAME ` --password=PASSWORD ` --role=SOURCE
Windows (cmd.exe)
gcloud database-migration connection-profiles ^ create sqlserver CONNECTION_PROFILE_ID ^ --no-async ^ --display-name=CONNECTION_PROFILE_NAME ^ --gcs-bucket=SOURCE_STORAGE_BUCKET_NAME ^ --gcs-prefix=SOURCE_STORAGE_BUCKET_FOLDER_PREFIX ^ --cloudsql-instance=SOURCE_CLOUD_SQL_INSTANCE_ID ^ --cloudsql-project-id=SOURCE_CLOUD_SQL_PROJECT_ID ^ --region=REGION ^ --project=DESTINATION_PROJECT_ID ^ --username=USERNAME ^ --password=PASSWORD ^ --role=SOURCE
您應該會收到類似以下的回應:
Waiting for connection profile [CONNECTION_PROFILE_ID] to be created with [OPERATION_ID] Waiting for operation [OPERATION_ID] to complete...done. Created connection profile CONNECTION_PROFILE_ID [OPERATION_ID]