热活实例组管理
所有文档
menu
没有找到结果,请重新输入

云数据库 RDS

热活实例组管理

实例组管理

创建实例组

使用以下代码可以创建实例组。

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.InstanceGroupArgs{
    Name:     "test_group",
    LeaderId: instanceId,
}
err := client.CreateInstanceGroup(args)
if err != nil {
    fmt.Printf("create instance group error: %+v\n", err)
    return
}
fmt.Printf("create instance group success\n")

实例组列表

使用以下代码可以获取实例组列表。

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.ListInstanceGroupArgs{
    Manner: "page",
}
result, err := client.ListInstanceGroup(args)
if err != nil {
    fmt.Printf("get instance group list error: %+v\n", err)
    return
}
fmt.Printf("get instance group list success\n")
jsonData, _ := json.Marshal(result)
fmt.Println(string(jsonData))

实例组详情

使用以下代码可以获取实例组详情

// import "github.com/baidubce/bce-sdk-go/services/rds"
result, err := client.InstanceGroupDetail(groupId)
if err != nil {
    fmt.Printf("get instance group detail error: %+v\n", err)
    return
}
fmt.Printf("get instance group detail success\n")
jsonData, _ := json.Marshal(result)
fmt.Println(string(jsonData))

实例组前置检查-GTID检查

使用以下代码可以进行GTID检查

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.CheckGtidArgs{
    InstanceId: instanceId,
}
result, err := client.InstanceGroupCheckGtid(args)
if err != nil {
    fmt.Printf("GTID check error: %+v\n", err)
    return
}
fmt.Printf("GTID check success\n")
jsonData, _ := json.Marshal(result)
fmt.Println(string(jsonData))

实例组前置检查-连通性检查

使用以下代码可以进行连通性检查

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.CheckPingArgs{
    SourceId: instanceId,
    TargetId: instanceId,
}
result, err := client.InstanceGroupCheckPing(args)
if err != nil {
    fmt.Printf("check ping error: %+v\n", err)
    return
}
fmt.Printf("check ping success\n")
jsonData, _ := json.Marshal(result)
fmt.Println(string(jsonData))

实例组前置检查-数据检查

使用以下代码可以进行数据检查

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.CheckDataArgs{
    InstanceId: instanceId,
}
result, err := client.InstanceGroupCheckData(args)
if err != nil {
    fmt.Printf("check data error: %+v\n", err)
    return
}
fmt.Printf("check data success\n")
jsonData, _ := json.Marshal(result)
fmt.Println(string(jsonData))

小版本前置检查

使用以下代码可以进行小版本前置检查

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.CheckVersionArgs{
    LeaderId:   instanceId,
    FollowerId: instanceId,
}
result, err := client.InstanceGroupCheckVersion(args)
if err != nil {
    fmt.Printf("check data error: %+v\n", err)
    return
}
fmt.Printf("check data success\n")
jsonData, _ := json.Marshal(result)
fmt.Println(string(jsonData))

修改热活实例组的名称

使用以下代码可以修改热活实例组的名称

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.InstanceGroupNameArgs{
    Name: "test_group_name",
}
err := client.UpdateInstanceGroupName(groupId, args)
if err != nil {
    fmt.Printf("update instance group name error: %+v\n", err)
    return
}
fmt.Printf("update instance group name success\n")

加入热活实例组

使用以下代码可以加入热活实例组

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.InstanceGroupAddArgs{
    FollowerId: instanceId,
}
err := client.InstanceGroupAdd(groupId, args)
if err != nil {
    fmt.Printf("add instance group error: %+v\n", err)
    return
}
fmt.Printf("add instance group success\n")

批量加入热活实例组

使用以下代码可以批量加入热活实例组

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.InstanceGroupBatchAddArgs{
    FollowerIds: []string{instanceId},
    Name:        "test_group_name",
    LeaderId:    instanceId,
}
err := client.InstanceGroupBatchAdd(args)
if err != nil {
    fmt.Printf("batch add instance group error: %+v\n", err)
    return
}
fmt.Printf("batch add instance group success\n")

强制切换热活实例组

使用以下代码可以强制切换热活实例组

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.ForceChangeArgs{
    LeaderId: instanceId,
    Force:    0,
}
err := client.InstanceGroupForceChange(groupId, args)
if err != nil {
    fmt.Printf("instance group force change error: %+v\n", err)
    return
}
fmt.Printf("instance group force change success\n")

主角色变更

使用以下代码可以主角色变更

// import "github.com/baidubce/bce-sdk-go/services/rds"
args := &rds.GroupLeaderChangeArgs{
    LeaderId: instanceId,
}
err := client.InstanceGroupLeaderChange(groupId, args)
if err != nil {
    fmt.Printf("instance group leader change error: %+v\n", err)
    return
}
fmt.Printf("instance group leader change success\n")

退出热活实例组

使用以下代码可以退出热活实例组

// import "github.com/baidubce/bce-sdk-go/services/rds"
err := client.InstanceGroupRemove(groupId, instanceId)
if err != nil {
    fmt.Printf("instance group remove error: %+v\n", err)
    return
}
fmt.Printf("instance group remove success\n")

删除热活实例组

使用以下代码可以删除热活实例组

// import "github.com/baidubce/bce-sdk-go/services/rds"
err := client.DeleteInstanceGroup(groupId)
if err != nil {
    fmt.Printf("delete instance group error: %+v\n", err)
    return
}
fmt.Printf("delete instance group success\n")
上一篇
白名单管理
下一篇
回收站管理