PrepareDBInstanceForUpgrade
処理概要
DBサーバーの基盤アップグレードを準備します。
基盤アップグレードステータスが「アップグレードが必要」な場合のみ実行可能です。
マスターDBサーバーのみ指定可能でリードレプリカを持つ場合は、同時にリードレプリカの基盤アップグレード準備を行います。
準備完了後、基盤アップグレードステータスは「アップグレード可能」になります。
指定するパラメーター
| パラメーター | 型 | 説明 | 必須 |
|---|---|---|---|
| DBInstanceIdentifier | string |
基盤アップグレード準備対象のDBサーバー名 |
○ |
| TemporaryNiftyVirtualPrivateAddress | string |
準備中に一時的に割り当てる仮想ロードバランサー用のプライベートIPアドレス 備考: 当サービス独自仕様。同一セグメント内で使用されていないIPアドレスを指定します。基盤アップグレード終了後は使用されなくなります。 |
○ (プライベートLANを利用している場合) |
| TemporaryNiftyMasterPrivateAddress | string |
準備中に一時的に割り当てる主系DBサーバー用のプライベートIPアドレス 備考: 当サービス独自仕様。同一セグメント内で使用されていないIPアドレスを指定します。基盤アップグレード終了後は使用されなくなります。 |
○ (プライベートLANを利用している場合) |
| TemporaryNiftySlavePrivateAddress | string |
準備中に一時的に割り当てる待機系DBサーバー用のプライベートIPアドレス 備考: 当サービス独自仕様。同一セグメント内で使用されていないIPアドレスを指定します。基盤アップグレード終了後は使用されなくなります。 |
○ (プライベートLANを利用している場合、かつ、NiftyMultiAZ=Trueの場合) |
| TemporaryNiftyReadReplicaPrivateAddresses.menber.N | string |
準備中に一時的に割り当てるリードレプリカ用のプライベートIPアドレス
備考: 当サービス独自仕様。同一セグメント内で使用されていないIPアドレスを指定します。基盤アップグレード終了後は使用されなくなります。 |
○ (プライベートLANを利用している場合、かつ、リードレプリカがある場合) |
応答フィールド
| フィールド (項目) | 型 | 説明 |
|---|---|---|
| PrepareDBInstanceForUpgradeResponse | structure |
ルート |
| ␣PrepareDBInstanceForUpgradeResult | structure |
結果 |
| ␣␣DBInstance | structure |
DBサーバー 備考: DBInstanceの子要素はDescribeDBInstancesで返却される要素をすべて記載しているためAPIによっては返却されない要素もあります。実際のレスポンスはレスポンスサンプルを参照してください。 |
| ␣␣␣AllocatedStorage | integer |
割り当てるディスク容量(GB) |
| ␣␣␣AutoMinorVersionUpgrade | boolean |
マイナーバージョンの自動アップデートを行うかどうか 備考: 固定値falseを返却 |
| ␣␣␣AvailabilityZone | string |
DBサーバーのゾーン |
| ␣␣␣BackupRetentionPeriod | integer |
バックアップ保持期間 |
| ␣␣␣BinlogRetentionPeriod | integer |
バイナリログ保持期間(日)
|
| ␣␣␣ExternalReplicationInfo | structure |
外部レプリケーション情報
|
| ␣␣␣␣ExternalReplicationMessage | string |
外部レプリケーション操作結果
|
| ␣␣␣␣ExternalReplicationStatus | string |
外部レプリケーション操作ステータス
|
| ␣␣␣␣ReplicationAddresses | list |
外部レプリケーション接続元グローバルIPアドレスリスト |
| ␣␣␣␣␣ReplicationAddress | string |
外部レプリケーション接続元グローバルIPアドレス
|
| ␣␣␣␣ReplicationPrivateAddresses | list |
外部レプリケーション接続元プライベートIPアドレスリスト |
| ␣␣␣␣␣ReplicationPrivateAddress | string |
外部レプリケーション接続元プライベートIPアドレス
|
| ␣␣␣␣ExternalMasterAddress | string |
マスターとなるDBサーバーのIPアドレスまたはホスト名 |
| ␣␣␣CACertificateIdentifier | string |
DBサーバーのサーバー証明書と紐付くCA証明書 |
| ␣␣␣DBInstanceClass | string |
DBサーバータイプ |
| ␣␣␣DBInstanceIdentifier | string |
DBサーバー名 |
| ␣␣␣DBInstanceStatus | string |
DBサーバーのステータス |
| ␣␣␣DBInstanceUpgradeStatus | string |
DBサーバーの基盤アップグレードステータス
|
| ␣␣␣DBName | string |
DB名 |
| ␣␣␣DBParameterGroups | list |
DBパラメーターグループ情報リスト |
| ␣␣␣␣DBParameterGroup | structure |
DBパラメーターグループ |
| ␣␣␣␣␣DBParameterGroupName | string |
DBパラメーターグループ名 |
| ␣␣␣␣␣ParameterApplyStatus | string |
DBパラメーターの適用ステータス
|
| ␣␣␣DBSecurityGroups | list |
DBファイアウォールグループ情報リスト |
| ␣␣␣␣DBSecurityGroup | structure |
DBファイアウォールグループ |
| ␣␣␣␣␣DBSecurityGroupName | string |
DBファイアウォールグループ名 |
| ␣␣␣␣␣Status | string |
DBファイアウォールグループのステータス
|
| ␣␣␣Endpoint | structure |
DB接続時のエンドポイント |
| ␣␣␣␣Port | integer |
ポート番号 |
| ␣␣␣␣Address | string |
グローバルIPアドレス
|
| ␣␣␣␣NiftyPrivateAddress | string |
プライベートIPアドレス |
| ␣␣␣Engine | string |
データベースエンジン |
| ␣␣␣EngineVersion | string |
データベースエンジンのバージョン |
| ␣␣␣InstanceCreateTime | timestamp |
DBサーバーの作成日時 |
| ␣␣␣LatestRestorableTime | timestamp |
ポイントインタイムリカバリー可能な最新の時刻 |
| ␣␣␣LicenseModel | string |
DBサーバーのライセンスモデル |
| ␣␣␣MasterUsername | string |
DBサーバーのマスターユーザー名 |
| ␣␣␣MultiAZ | boolean |
冗長化機能が有効かどうか |
| ␣␣␣NiftyMultiAZType | string |
冗長構成タイプ 備考: 独自仕様 |
| ␣␣␣OptionGroupMemberships | list |
オプショングループ情報リスト |
| ␣␣␣␣OptionGroupMembership | structure |
オプショングループ情報 |
| ␣␣␣␣␣OptionGroupName | string |
下記の固定値を返却
|
| ␣␣␣␣␣Status | string |
オプショングループのステータス 備考: 固定値in-syncを返却 |
| ␣␣␣PendingModifiedValues | structure |
保留の修正情報 |
| ␣␣␣␣AllocatedStorage | integer |
保留中のディスク容量 |
| ␣␣␣␣BackupRetentionPeriod | integer |
保留中のバックアップ保持期間 |
| ␣␣␣␣DBInstanceClass | string |
保留中のDBサーバータイプ |
| ␣␣␣␣DBInstanceIdentifier | string |
保留中のDBサーバー名 |
| ␣␣␣␣EngineVersion | string |
保留中のデータベースエンジンのバージョン |
| ␣␣␣␣MasterUserPassword | string |
保留中のDBサーバーのマスターユーザー名 |
| ␣␣␣␣MultiAZ | boolean |
保留中の「冗長化機能が有効かどうか」フラグ |
| ␣␣␣␣Port | integer |
保留中のアクセス可能なポート番号 |
| ␣␣␣PreferredBackupWindow | string |
バックアップ時間 |
| ␣␣␣PreferredMaintenanceWindow | string |
メンテナンス時間 |
| ␣␣␣PubliclyAccessible | boolean |
グローバルIPアドレスを有効にするかどうか |
| ␣␣␣ReadReplicaDBInstanceIdentifiers | list |
リードレプリカ名リスト |
| ␣␣␣␣ReadReplicaDBInstanceIdentifier | string |
リードレプリカ名 |
| ␣␣␣ReadReplicaSourceDBInstanceIdentifier | string |
リードレプリカのマスターとして設定されているDBサーバー名 |
| ␣␣␣SecondaryAvailabilityZone | string |
待機系DBサーバーのゾーン
|
| ␣␣␣StatusInfos | list |
リードレプリカのステータス
|
| ␣␣␣␣DBInstanceStatusInfo | structure |
DBサーバーのステータス情報のリスト |
| ␣␣␣␣␣Message | string |
エラーメッセージ
|
| ␣␣␣␣␣Normal | boolean |
正常かどうか |
| ␣␣␣␣␣Status | string |
DBサーバーのステータス
|
| ␣␣␣␣␣StatusType | string |
DBサーバーのステータス種別 備考: 固定値"read replication"を返却 |
| ␣␣␣VpcSecurityGroups | string |
※返却値なし |
| ␣␣␣NiftyStorageType | integer |
ディスクタイプ 備考: 独自仕様 |
| ␣␣␣NiftyNetworkId | string |
プライベートLANのネットワークユニークID 備考: 独自仕様 |
| ␣␣␣NiftyMasterPrivateAddress | string |
主系DBサーバー用のプライベートIPアドレス 備考: 独自仕様 |
| ␣␣␣NiftySlavePrivateAddress | string |
待機系DBサーバー用のプライベートIPアドレス 備考: 独自仕様 |
| ␣␣␣AccountingType | string |
当月の利用料金タイプ |
| ␣␣␣NextMonthAccountingType | string |
翌月の利用料金タイプ |
| ␣ResponseMetadata | structure |
共通メタ情報 |
| ␣␣RequestId | string |
リクエスト識別子 |
エラー
| コード | メッセージ | タイプ | HTTPステータスコード | 説明 |
|---|---|---|---|---|
| Client.InvalidParameterDuplicate.PrivateAddress | Private addresses are not unique: 192.168.1.112/24 |
Sender | 400 | TemporaryNiftyVirtualPrivateAddress、TemporaryNiftyMasterPrivateAddress、TemporaryNiftySlavePrivateAddress、TemporaryNiftyReadReplicaPrivateAddressに重複したIPアドレスを指定した場合 |
| Client.InvalidParameterDuplicate.PrivateAddress | Private address is already in use: 192.168.1.110 |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyVirtualPrivateAddress、TemporaryNiftyMasterPrivateAddress、TemporaryNiftySlavePrivateAddress、TemporaryNiftyReadReplicaPrivateAddressにすでに使用済みのIPアドレスを指定した場合 |
| Client.InvalidParameterFormat.DBInstanceIdentifier | The parameter DBInstanceIdentifier is not a valid identifier. Identifiers must begin with a letter; must contain only lowercase ASCII letters, digits, and hyphens; and must not end with a hyphen or contain two consecutive hyphens. |
Sender | 400 | DBInstanceIdentifierに無効な値(ハイフンから始まる 等)を指定した場合 |
| Client.InvalidParameterFormat.NiftyMasterPrivateAddress | Invalid TemporaryNiftyMasterPrivateAddress: aaa.bbb.ccc.ddd. |
Sender | 400 | TemporaryNiftyMasterPrivateAddressにIPアドレスとして無効な値を指定した場合 |
| Client.InvalidParameterFormat.NiftyReadReplicaPrivateAddress | Invalid TemporaryNiftyReadReplicaPrivateAddress: aaa.bbb.ccc.ddd. |
Sender | 400 | TemporaryNiftyReadReplicaPrivateAddressにIPアドレスとして無効な値を指定した場合 |
| Client.InvalidParameterFormat.NiftySlavePrivateAddress | Invalid TemporaryNiftySlavePrivateAddress: aaa.bbb.ccc.ddd. |
Sender | 400 | TemporaryNiftySlavePrivateAddressにIPアドレスとして無効な値を指定した場合 |
| Client.InvalidParameterFormat.NiftyVirtualPrivateAddress | Invalid TemporaryNiftyVirtualPrivateAddress: aaa.bbb.ccc.ddd. |
Sender | 400 | TemporaryNiftyVirtualPrivateAddressにIPアドレスとして無効な値を指定した場合 |
| Client.InvalidParameterNotAllowed.ReadReplica | The specified DB instance is read replica. |
Sender | 400 | リードレプリカを指定した場合 |
| Client.InvalidParameterNotFound.DBInstance | DBInstance not found: aaa |
Sender | 404 | 存在しないDBInstanceIdentifierを指定した場合 |
| Client.InvalidParameterMissing.NiftyMasterPrivateAddress | The parameter TemporaryNiftyMasterPrivateAddress must be provided and must not be blank for PrivateLAN instances. |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyMasterPrivateAddressを指定しなかった場合 |
| Client.InvalidParameterMissing.NiftyReadReplicaPrivateAddress | The parameter TemporaryNiftyReadReplicaPrivateAddress must be provided and must not be blank for PrivateLAN instances. |
Sender | 400 | プライベートLANを利用している、かつ、リードレプリカを持つ時、TemporaryNiftyReadReplicaPrivateAddressを指定しなかった場合 |
| Client.InvalidParameterMissing.NiftySlavePrivateAddress | The parameter TemporaryNiftySlavePrivateAddress must be provided and must not be blank for PrivateLAN instances. |
Sender | 400 | プライベートLANを利用している、かつ、NiftyMultiAZ=trueの時、TemporaryNiftySlavePrivateAddressを指定しなかった場合 |
| Client.InvalidParameterMissing.NiftyVirtualPrivateAddress | The parameter TemporaryNiftyVirtualPrivateAddress must be provided and must not be blank for PrivateLAN instances. |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyVirtualPrivateAddressを指定しなかった場合 |
| Client.InvalidParameterOutOfRange.NiftyMasterPrivateAddress | Invalid TemporaryNiftyMasterPrivateAddress: 192.168.100.100. Valid range is 192.168.1.1-192.168.1.254 |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyMasterPrivateAddressにサブネットの範囲外のIPアドレスを指定した場合 |
| Client.InvalidParameterOutOfRange.NiftyMasterPrivateAddress | Invalid TemporaryNiftyMasterPrivateAddress: 192.168.1.113/8. Valid CIDR prefix is /24 |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyMasterPrivateAddressのプレフィックスにプライベートLAN作成時に指定したプレフィックスと異なる値を指定した場合 |
| Client.InvalidParameterOutOfRange.NiftyReadReplicaPrivateAddress | Invalid TemporaryNiftyReadReplicaPrivateAddress: 192.168.100.100. Valid range is 192.168.1.1-192.168.1.254 |
Sender | 400 | プライベートLANを利用している、かつ、リードレプリカを持つ時、TemporaryNiftyReadReplicaPrivateAddressにサブネットの範囲外のIPアドレスを指定した場合 |
| Client.InvalidParameterOutOfRange.NiftyReadReplicaPrivateAddress | Invalid TemporaryNiftyReadReplicaPrivateAddress: 192.168.1.112/8. Valid CIDR prefix is /24 |
Sender | 400 | プライベートLANを利用している、かつ、リードレプリカを持つ時、TemporaryNiftyReadReplicaPrivateAddressのプレフィックスにプライベートLAN作成時に指定したプレフィックスと異なる値を指定した場合 |
| Client.InvalidParameterOutOfRange.NiftySlavePrivateAddress | Invalid TemporaryNiftySlavePrivateAddress: 192.168.100.100. Valid range is 192.168.1.1-192.168.1.254 |
Sender | 400 | プライベートLANを利用している、かつ、NiftyMultiAZ=trueの時、TemporaryNiftySlavePrivateAddressにサブネットの範囲外のIPアドレスを指定した場合 |
| Client.InvalidParameterOutOfRange.NiftySlavePrivateAddress | Invalid TemporaryNiftySlavePrivateAddress: 192.168.1.114/8. Valid CIDR prefix is /24 |
Sender | 400 | プライベートLANを利用している、かつ、NiftyMultiAZ=trueの時、TemporaryNiftySlavePrivateAddressのプレフィックスにプライベートLAN作成時に指定したプレフィックスと異なる値を指定した場合 |
| Client.InvalidParameterOutOfRange.NiftyVirtualPrivateAddress | Invalid TemporaryNiftyVirtualPrivateAddress: 192.168.100.100. Valid range is 192.168.1.1-192.168.1.254 |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyVirtualPrivateAddressにサブネットの範囲外のIPアドレスを指定した場合 |
| Client.InvalidParameterOutOfRange.NiftyVirtualPrivateAddress | Invalid TemporaryNiftyVirtualPrivateAddress: 192.168.1.112/8. Valid CIDR prefix is /24 |
Sender | 400 | プライベートLANを利用している時、TemporaryNiftyVirtualPrivateAddressのプレフィックスにプライベートLAN作成時に指定したプレフィックスと異なる値を指定した場合 |
| Client.InvalidParameterRequired.DBInstanceIdentifier | The parameter DBInstanceIdentifier must be provided and must not be blank. |
Sender | 400 | 必須のDBInstanceIdentifierを指定しなかった場合 |
| Client.InvalidParameterTooLong.DBInstanceIdentifier | The parameter DBInstanceIdentifier is not a valid identifier because it is longer than 63 characters. |
Sender | 400 | DBInstanceIdentifierに63文字を超える値を指定した場合 |
| Client.ResourceIncorrectState.DBInstance.Unavailable | The specified DB Instance is not in the available state. |
Sender | 400 | DBサーバーのステータスが有効でない場合 |
| Client.ResourceIncorrectState.DBInstanceDBParameterApplyStatus.NotInSync | The DB parameter group for specified DB Instance is not in the in-sync state. |
Sender | 400 | DBサーバーのDBパラメーター適用ステータスが「in-sync」でない場合 |
| Client.ResourceIncorrectState.DBInstanceUpgradeStatus.NotReady | The upgrade status of the specified DB Instance is not ready. |
Sender | 400 | DBサーバーの基盤アップグレードステータスが「required」でない場合 |
| Client.ResourceIncorrectState.ExternalReplication.Setting | Can not be specified when external replication is set for the DB Instance. |
Sender | 400 | 外部レプリケーションが設定されたDBサーバーを指定した場合 |
| Client.ResourceIncorrectState.ReadReplica.Unavailable | The readreplica DB instance relevant to specified master DB instance is not the available. |
Sender | 400 | リードレプリカのステータスが有効でない場合 |
| Client.ResourceIncorrectState.ReadReplicaDBParameterApplyStatus.NotInSync | The DB parameter group for readreplica DB Instance is not in the in-sync state. |
Sender | 400 | リードレプリカのDBパラメーター適用ステータスが「in-sync」でない場合 |
リクエストサンプル
https://jp-east-1.rdb.api.nifcloud.com/
?Action=PrepareDBInstanceForUpgrade
&DBInstanceIdentifier=mydbinstance
&NiftyMasterPrivateAddress=192.168.1.100/24
&NiftyVirtualPrivateAddress=192.168.1.110/24
&NiftyReadReplicaPrivateAddresses.member.1=192.168.1.111/24
&SignatureVersion=2
&SignatureMethod=HmacSHA256
&Timestamp=2013-12-09T00:00:00.000Z
&AWSAccessKeyId=<NIFCLOUD Access Key ID>
&Signature=<Signature>
応答サンプル
<PrepareDBInstanceForUpgradeResponse>
<PrepareDBInstanceForUpgradeResult>
<DBInstance>
<AllocatedStorage>50</AllocatedStorage>
<AutoMinorVersionUpgrade>false</AutoMinorVersionUpgrade>
<AvailabilityZone>east-13</AvailabilityZone>
<BackupRetentionPeriod>1</BackupRetentionPeriod>
<CACertificateIdentifier>rdb-ca-2023</CACertificateIdentifier>
<DBInstanceClass>db.small</DBInstanceClass>
<DBInstanceIdentifier>mydbinstance</DBInstanceIdentifier>
<DBInstanceStatus>modifying</DBInstanceStatus>
<DBInstanceUpgradeStatus>preparing</DBInstanceUpgradeStatus>
<DBName>mydb</DBName>
<DBParameterGroups>
<DBParameterGroup>
<DBParameterGroupName>default.mysql5.6</DBParameterGroupName>
<ParameterApplyStatus>in-sync</ParameterApplyStatus>
</DBParameterGroup>
</DBParameterGroups>
<DBSecurityGroups>
<DBSecurityGroup>
<DBSecurityGroupName>mydbsecuritygroup</DBSecurityGroupName>
<Status>active</Status>
</DBSecurityGroup>
</DBSecurityGroups>
<Endpoint>
<Port>3306</Port>
<Address>XXX.XXX.XXX.XXX</Address>
<NiftyPrivateAddress>YYY.YYY.YYY.YYY</NiftyPrivateAddress>
</Endpoint>
<Engine>mysql</Engine>
<EngineVersion>5.6.12</EngineVersion>
<ExternalReplicationInfo>
<ReplicationAddresses>
<ReplicationAddress>xxx.xxx.xxx.xxx</ReplicationAddress>
<ReplicationAddress>yyy.yyy.yyy.yyy</ReplicationAddress>
</ReplicationAddresses>
<ReplicationPrivateAddresses>
<ReplicationPrivateAddress>xxx.xxx.xxx.xxx</ReplicationPrivateAddress>
<ReplicationPrivateAddress>yyy.yyy.yyy.yyy</ReplicationPrivateAddress>
</ReplicationPrivateAddresses>
</ExternalReplicationInfo>
<InstanceCreateTime>2013-11-30T06:28:42.000Z</InstanceCreateTime>
<LatestRestorableTime>2013-11-30T06:40:00.000Z</LatestRestorableTime>
<LicenseModel>general-public-license</LicenseModel>
<MasterUsername>mydbuser</MasterUsername>
<MultiAZ>true</MultiAZ>
<OptionGroupMemberships>
<OptionGroupMembership>
<OptionGroupName>default:mysql-5-6</OptionGroupName>
<Status>in-sync</Status>
</OptionGroupMembership>
</OptionGroupMemberships>
<PendingModifiedValues/>
<PreferredBackupWindow>05:30-06:00</PreferredBackupWindow>
<PreferredMaintenanceWindow>mon:06:01-mon:07:31</PreferredMaintenanceWindow>
<PubliclyAccessible>true</PubliclyAccessible>
<SecondaryAvailabilityZone>east-13</SecondaryAvailabilityZone>
<VpcSecurityGroups/>
<NiftyStorageType>0</NiftyStorageType>
<AccountingType>2</AccountingType>
<NextMonthAccountingType>2</NextMonthAccountingType>
</DBInstance>
</PrepareDBInstanceForUpgradeResult>
<ResponseMetadata>
<RequestId>4838a0d1-e2ff-4da9-b675-0e3f9eb21c10</RequestId>
</ResponseMetadata>
</PrepareDBInstanceForUpgradeResponse>
