导出数据
TDSQL MySQL版 支持通过 mysqldump 导出数据,导出前须设置 net_write_timeout 参数:
set global net_write_timeout=28800
,命令行有权限限制,请通过 TDSQL MySQL版 控制台 操作。mysqldump --compact --single-transaction --no-create-info -c db_name table_name -utest -h10.xx.xx.34 -P3336 -ptest123
说明
db 和 table 名参数根据实际情况选择,如果导出的数据要导入到另外一套 TDSQL MySQL版 环境的话,必须加上 -c 选项。
导出账号需拥有
select on *.*
的权限。高版本 mysqldump 导出低版本数据库时,可能发生报错,可设置参数
-column-statistics= 0
,用于解决此类问题。导入数据
TDSQL MySQL版 提供专门的导入数据工具,完成 load data outfile 对应数据的导入,该工具的原理是把源文件按照 shardkey 的路由规则,切分成多个文件,然后把每个单独透传到对应的后端数据库。
[tdengine@TENCENT64 ~/]$./load_dataformat:./load_data mode0/mode1 proxy_host proxy_port user password db_table shardkey_index file field_terminate filed_enclosedexample:./load_data mode1 10.xx.xx.10 3336 test test123 shard.table 1 '/tmp/datafile' ' ' ''
注意
源文件必须以 '\\n' 作为换行符。
mode0 只切分源文件,不做数据导入,一般用于调试,正式导入数据使用 mode1。
shardkey_index 从0开始,如果 shardkey 在第2个字段,则 shardkey_index 为1。