|
1 |
| -Provides a resource to create a dts migrate_job |
| 1 | +Provides a resource to create a DTS migrate job |
2 | 2 |
|
3 | 3 | Example Usage
|
4 | 4 |
|
5 | 5 | ```hcl
|
6 |
| -resource "tencentcloud_cynosdb_cluster" "foo" { |
7 |
| - available_zone = var.availability_zone |
8 |
| - vpc_id = local.vpc_id |
9 |
| - subnet_id = local.subnet_id |
10 |
| - db_type = "MYSQL" |
11 |
| - db_version = "5.7" |
12 |
| - storage_limit = 1000 |
13 |
| - cluster_name = "tf-cynosdb-mysql" |
14 |
| - password = "cynos@123" |
15 |
| - instance_maintain_duration = 3600 |
16 |
| - instance_maintain_start_time = 10800 |
17 |
| - instance_maintain_weekdays = [ |
18 |
| - "Fri", |
19 |
| - "Mon", |
20 |
| - "Sat", |
21 |
| - "Sun", |
22 |
| - "Thu", |
23 |
| - "Wed", |
24 |
| - "Tue", |
25 |
| - ] |
| 6 | +resource "tencentcloud_mysql_instance" "example" { |
| 7 | + instance_name = "tf-example" |
| 8 | + internet_service = 1 |
| 9 | + engine_version = "5.7" |
| 10 | + charge_type = "POSTPAID" |
| 11 | + root_password = "PassWord@123" |
| 12 | + slave_deploy_mode = 0 |
| 13 | + slave_sync_mode = 1 |
| 14 | + availability_zone = "ap-guangzhou-7" |
| 15 | + mem_size = 128000 |
| 16 | + volume_size = 250 |
| 17 | + vpc_id = "vpc-i5yyodl9" |
| 18 | + subnet_id = "subnet-hhi88a58" |
| 19 | + intranet_port = 3306 |
| 20 | + security_groups = ["sg-e6a8xxib"] |
| 21 | + parameters = { |
| 22 | + character_set_server = "utf8" |
| 23 | + max_connections = "1000" |
| 24 | + } |
| 25 | + tags = { |
| 26 | + createBy = "Terraform" |
| 27 | + } |
| 28 | +} |
26 | 29 |
|
27 |
| - instance_cpu_core = 1 |
28 |
| - instance_memory_size = 2 |
29 |
| - param_items { |
30 |
| - name = "character_set_server" |
31 |
| - current_value = "utf8" |
32 |
| - } |
33 |
| - param_items { |
34 |
| - name = "time_zone" |
35 |
| - current_value = "+09:00" |
36 |
| - } |
37 |
| - param_items { |
38 |
| - name = "lower_case_table_names" |
39 |
| - current_value = "1" |
40 |
| - } |
| 30 | +resource "tencentcloud_cynosdb_cluster" "example" { |
| 31 | + cluster_name = "tf-example" |
| 32 | + db_mode = "NORMAL" |
| 33 | + db_type = "MYSQL" |
| 34 | + db_version = "5.7" |
| 35 | + port = 3306 |
| 36 | + password = "Password@123" |
| 37 | + force_delete = true |
| 38 | + available_zone = "ap-guangzhou-6" |
| 39 | + slave_zone = "ap-guangzhou-7" |
| 40 | + vpc_id = "vpc-i5yyodl9" |
| 41 | + subnet_id = "subnet-hhi88a58" |
| 42 | + instance_cpu_core = 2 |
| 43 | + instance_memory_size = 4 |
| 44 | + instance_maintain_duration = 7200 |
| 45 | + instance_maintain_start_time = 3600 |
| 46 | + instance_maintain_weekdays = [ |
| 47 | + "Fri", |
| 48 | + "Mon", |
| 49 | + "Sat", |
| 50 | + "Sun", |
| 51 | + "Thu", |
| 52 | + "Wed", |
| 53 | + "Tue", |
| 54 | + ] |
41 | 55 |
|
42 |
| - force_delete = true |
| 56 | + rw_group_sg = ["sg-e6a8xxib"] |
| 57 | + ro_group_sg = ["sg-e6a8xxib"] |
| 58 | +} |
43 | 59 |
|
44 |
| - rw_group_sg = [ |
45 |
| - local.sg_id |
46 |
| - ] |
47 |
| - ro_group_sg = [ |
48 |
| - local.sg_id |
49 |
| - ] |
50 |
| - prarm_template_id = var.my_param_template |
| 60 | +resource "tencentcloud_dts_migrate_service" "example" { |
| 61 | + src_database_type = "mysql" |
| 62 | + dst_database_type = "cynosdbmysql" |
| 63 | + src_region = "ap-guangzhou" |
| 64 | + dst_region = "ap-guangzhou" |
| 65 | + instance_class = "small" |
| 66 | + job_name = "tf-example" |
| 67 | + tags { |
| 68 | + tag_key = "createBy" |
| 69 | + tag_value = "Terraform" |
51 | 70 | }
|
| 71 | +} |
52 | 72 |
|
53 |
| -resource "tencentcloud_dts_migrate_service" "service" { |
54 |
| - src_database_type = "mysql" |
55 |
| - dst_database_type = "cynosdbmysql" |
56 |
| - src_region = "ap-guangzhou" |
57 |
| - dst_region = "ap-guangzhou" |
58 |
| - instance_class = "small" |
59 |
| - job_name = "tf_test_migration_service_1" |
60 |
| - tags { |
61 |
| - tag_key = "aaa" |
62 |
| - tag_value = "bbb" |
63 |
| - } |
| 73 | +resource "tencentcloud_dts_migrate_job" "example" { |
| 74 | + service_id = tencentcloud_dts_migrate_service.example.id |
| 75 | + run_mode = "immediate" |
| 76 | + auto_retry_time_range_minutes = 0 |
| 77 | + migrate_option { |
| 78 | + database_table { |
| 79 | + object_mode = "partial" |
| 80 | + databases { |
| 81 | + db_name = "db_name" |
| 82 | + db_mode = "partial" |
| 83 | + table_mode = "partial" |
| 84 | + tables { |
| 85 | + table_name = "table_name" |
| 86 | + new_table_name = "new_table_name" |
| 87 | + table_edit_mode = "rename" |
| 88 | + } |
| 89 | + } |
| 90 | + } |
64 | 91 | }
|
65 | 92 |
|
66 |
| -resource "tencentcloud_dts_migrate_job" "job" { |
67 |
| - service_id = tencentcloud_dts_migrate_service.service.id |
68 |
| - run_mode = "immediate" |
69 |
| - migrate_option { |
70 |
| - database_table { |
71 |
| - object_mode = "partial" |
72 |
| - databases { |
73 |
| - db_name = "tf_ci_test" |
74 |
| - db_mode = "partial" |
75 |
| - table_mode = "partial" |
76 |
| - tables { |
77 |
| - table_name = "test" |
78 |
| - new_table_name = "test_%s" |
79 |
| - table_edit_mode = "rename" |
80 |
| - } |
81 |
| - } |
82 |
| - } |
83 |
| - } |
84 |
| - src_info { |
85 |
| - region = "ap-guangzhou" |
86 |
| - access_type = "cdb" |
87 |
| - database_type = "mysql" |
88 |
| - node_type = "simple" |
89 |
| - info { |
90 |
| - user = "user_name" |
91 |
| - password = "your_pw" |
92 |
| - instance_id = "cdb-fitq5t9h" |
93 |
| - } |
94 |
| -
|
95 |
| - } |
96 |
| - dst_info { |
97 |
| - region = "ap-guangzhou" |
98 |
| - access_type = "cdb" |
99 |
| - database_type = "cynosdbmysql" |
100 |
| - node_type = "simple" |
101 |
| - info { |
102 |
| - user = "user_name" |
103 |
| - password = "your_pw" |
104 |
| - instance_id = tencentcloud_cynosdb_cluster.foo.id |
105 |
| - } |
106 |
| - } |
107 |
| - auto_retry_time_range_minutes = 0 |
108 |
| -} |
| 93 | + src_info { |
| 94 | + region = "ap-guangzhou" |
| 95 | + access_type = "cdb" |
| 96 | + database_type = "mysql" |
| 97 | + node_type = "simple" |
| 98 | + info { |
| 99 | + user = "root" |
| 100 | + password = "Password@123" |
| 101 | + instance_id = tencentcloud_mysql_instance.example.id |
| 102 | + } |
| 103 | + } |
109 | 104 |
|
110 |
| -resource "tencentcloud_dts_migrate_job_start_operation" "start"{ |
111 |
| - job_id = tencentcloud_dts_migrate_job.job.id |
| 105 | + dst_info { |
| 106 | + region = "ap-guangzhou" |
| 107 | + access_type = "cdb" |
| 108 | + database_type = "cynosdbmysql" |
| 109 | + node_type = "simple" |
| 110 | + info { |
| 111 | + user = "root" |
| 112 | + password = "Password@123" |
| 113 | + instance_id = tencentcloud_cynosdb_cluster.example.id |
| 114 | + } |
| 115 | + } |
112 | 116 | }
|
113 | 117 | ```
|
114 | 118 |
|
115 | 119 | Import
|
116 | 120 |
|
117 |
| -dts migrate_job can be imported using the id, e.g. |
| 121 | +DTS migrate job can be imported using the id, e.g. |
118 | 122 |
|
119 | 123 | ```
|
120 |
| -terraform import tencentcloud_dts_migrate_job.migrate_job migrate_config_id |
| 124 | +terraform import tencentcloud_dts_migrate_job.example dts-iy98oxba |
121 | 125 | ```
|
0 commit comments