forked from pingcap/tidb-tools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
config.toml
130 lines (96 loc) · 3.27 KB
/
config.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# diff Configuration.
log-level = "info"
# for example, the whole data is [1...100]
# we can split these data to [1...10], [11...20], ..., [91...100]
# the [1...10] is a chunk, and it's chunk size is 10
# size of the split chunk
chunk-size = 1000
# how many goroutines are created to check data
check-thread-count = 4
# sampling check percent, for example 10 means only check 10% data
sample-percent = 100
# set true if target-db and source-db all support tidb implicit column "_tidb_rowid"
use-rowid = false
# calculate the data's checksum, and compare data by checksum.
# set false if want to comapre the data directly
use-checksum = true
# set true if just want compare data by checksum, will skip select data when checksum is not equal.
only-use-checksum = false
# set true will continue check from the latest checkpoint
use-checkpoint = true
# ignore check table's data
ignore-data-check = false
# ignore check table's struct
ignore-struct-check = false
# the name of the file which saves sqls used to fix different data.
fix-sql-file = "fix.sql"
# use this tidb's statistics information to split chunk
# tidb-instance-id = ""
# uncomment this if comparing data with different database name or table name
#[[table-rules]]
#schema-pattern = "test_*"
#table-pattern = "t_*"
#target-schema = "test"
#target-table = "t"
# tables need to check.
[[check-tables]]
# schema name in target database.
schema = "test"
# table list which need check in target database.
tables = ["test1", "test2", "test3"]
# support regular expression, must start with '~'.
# for example, this config will check tables with prefix 'test'.
# tables = ["~^test.*"]
# schema and table in table-config must be contained in check-tables.
# a example for comparing table with same schema and table name.
[[table-config]]
# schema name.
schema = "test"
# table name.
table = "test3"
# field should be the primary key, unique key or field with index.
# if comment this, diff will find a suitable field.
index-fields = "id"
# can set multiple fields split by ','
# index-fields = "id,age"
# check data's range.
range = "age > 10 AND age < 20"
# set true if comparing sharding tables with target table
is-sharding = false
# collation config in mysql/tidb, should corresponding to charset.
# collation = "latin1_bin"
# a example for comparing table with different name.
[[table-config]]
# target schema name.
schema = "test"
# target table name.
table = "test2"
# set true if comparing sharding tables with target table
is-sharding = false
# columns be ignored, will not check this column's data,
# but may use these columns as split field or order by key.
# ignore-columns = ["name"]
# columns be removed, will remove these columns from table info,
# and will not check these columns' data, will not use these columns as split field or order by key too.
# remove-columns = ["name"]
# source table.
[[table-config.source-tables]]
instance-id = "source-1"
schema = "test"
table = "test1"
[[source-db]]
host = "127.0.0.1"
port = 3306
user = "root"
password = ""
instance-id = "source-1"
# remove comment if use tidb's snapshot data
# snapshot = "2016-10-08 16:45:26"
[target-db]
host = "127.0.0.1"
port = 4000
user = "root"
password = ""
instance-id = "target-1"
# remove comment if use tidb's snapshot data
# snapshot = "2016-10-08 16:45:26"