設定 Cloud SQL 執行個體

本頁說明如何使用 Cloud Tools for PowerShell 設定新的 Cloud SQL 執行個體。如要進一步瞭解 cmdlet,請參閱 Cloud Tools for PowerShell cmdlet 參考資料

您可以為大部分的 cmdlet 指定專案 ID,但如果您省略此步驟,PowerShell 會預設為有效的 gcloud CLI 設定所指定的值。

設定新的執行個體

Cloud SQL 執行個體是一種在雲端執行的 MySQL 資料庫。您可以使用 Cloud SQL 執行個體來儲存、複製及保護 MySQL 資料庫。您可以設定執行個體的行為,例如要在何時複製資料、複製什麼位置的資料,或者何時可執行資料庫維護作業。

如要建立及啟動 Cloud SQL 資料庫,您必須先指定資料庫的配置和設定。如要使用 Cloud Tools for PowerShell 進行這些操作,請利用 New-GcSqlSettingConfigNew-GcSqlInstanceConfig cmdlet。

記錄、維護期間等 SQL 設定都是 New-GcSqlSettingConfig cmdlet 參數。資料庫機器的硬體特性這類執行個體層級設定,則是透過 SqlInstanceConfig 物件或 New-GcSqlInstanceConfig 指令碼上的標記進行設定。

如果不指定任何參數,則系統會使用「db-n1-standard-1」層級建立最基本的 Cloud SQL 執行個體:

$setting = New-GcSqlSettingConfig
$instance = New-GcSqlInstanceConfig `
    "mynewinstance" -SettingConfig $setting

如要瞭解層級和定價,請參閱 Cloud SQL 定價主題。

如要瞭解設定選項,請使用 Get-Help New-GcSqlSettingConfig 或參閱 DatabaseInstance 物件說明文件。

建立新執行個體

完成上一節所述的配置和設定程序後,您就可以開始使用 Add-GcSqlInstance 指令碼建立 Cloud SQL 資料庫:

Add-GcSqlInstance $instance

新執行個體的建立程序可能需要幾分鐘才能完成。建立完成後,這個 cmdlet 會傳回一個 DatabaseInstance 物件,描述剛才建立的執行個體。您可以前往 Google Cloud 控制台查看該執行個體。

從現在起,您就可以按照 Cloud SQL 說明文件中的說明管理資料庫。

建立唯讀備用資源執行個體

唯讀備用資源執行個體可針對主要執行個體中的資料提供複製功能。建立完成後,這類執行個體可以轉換成容錯轉移或其本身的獨立執行個體。唯讀備用資源執行個體中的資料可供讀取,但可能為半過期狀態 (依據半同步複製作業)。透過唯讀備用資源執行個體將資料備份到多個地區後,資料在中斷的情況下仍可供讀取。

以下程式碼片段會針對現有的主要執行個體 gootoso 建立唯讀備用資源 mynewreplica。該程式碼片段會使用 cmdlet New-GcSqlInstanceReplicaConfig。這樣做會調整唯讀備用資源執行個體專屬的設定,例如複製資料的速度,或者是否要從外部執行個體進行複製:

$setting = New-GcSqlSettingConfig "db-n1-standard-1"
$replicaConfig = New-GcSqlInstanceReplicaConfig
$instance = New-GcSqlInstanceConfig "mynewreplica" `
    -SettingConfig $setting `
    -ReplicaConfig $replicaConfig `
    -MasterInstanceName "gootoso"
Add-GcSqlInstance $instance

如要進一步瞭解唯讀備用資源相關規定,請參閱設定複製功能的需求條件與訣竅一文。

如需將唯讀備用資源升級為容錯移轉或獨立執行個體的操作示範,請參閱管理執行個體複製作業

建立容錯移轉備用資源執行個體

Cloud SQL 可以使用容錯移轉備用資源,為執行個體提供高可用性設定。容錯移轉備用資源會採用半同步複製作業,以複製主要執行個體資料的所有變更。如果主要執行個體中的區域過期,容錯移轉備用資源就會啟用並接管。因此,備用資源必須和主要執行個體存放在不同區域。

以下程式碼片段會為主要執行個體 gootoso 建立新的容錯移轉 myfailover。該備用資源執行個體的建立方式與前述相同,一樣採用 config cmdlet 進行。不過,請注意新增的 -FailoverTarget 標記:

$setting = New-GcSqlSettingConfig "db-n1-standard-1"
$replicaConfig = New-GcSqlInstanceReplicaConfig -FailoverTarget
$instance = New-GcSqlInstanceConfig "myfailover" `
    -SettingConfig $setting `
    -ReplicaConfig $replicaConfig `
    -MasterInstanceName "gootoso"
Add-GcSqlInstance $instance

請注意,備用資源執行個體對於計費的影響與一般執行個體相同。