Sql Server 数据库如何迁移到 TiDB?

如题。有解决方案吗?

参考 sql server 迁移到 mysql 的工具即可

如果数据量小,可以用Workbench支持一键迁移。 github也有工具搜索mssql to mysql

是直接从 sql server 导入到 TiDB 吗?

确认下 sql 文件中的语法和表结构跟 mysql 兼容,可以直接在 tidb 中执行

您好。我现在用的 DB2DB 这个工具做导入,向比于直接导入到单节点的 mysql数据库,导入速度只有它的10分之一(每分钟2000条)。请问这种情况正常吗?

默认单线程导入可能不及 mysql,看这个工具是否支持多线程并发导入;

比如从 mysql 导入 tidb 可以用 mydumper/loader 命令开启多个线程提高导入速度;

除了提高并发还需要避免表上有热点导致单个 tikv 达到瓶颈,可以在论坛里搜一下相关的帖子

参考了上面的回答,最后用的阿里巴巴的 datax 做迁移,效果还不错。

https://github.com/alibaba/DataX

job 的配置参考:

{
    "job": {
        "setting": {
            "speed": {
                "channel": 1,
                "record":-1,
                "byte":-1,
                "batchSize":2048
            }
        },
        "content": [
            {
                 "reader": {
                    "name": "sqlserverreader",
                    "parameter": {
                        "username": "uname",
                        "password": "uname",
                        "column": ["*"],
                        "splitPk": "id",
                        "connection": [
                            {
                                "table": [
                                    "cases"
                                ],
                                "jdbcUrl": [
                                "jdbc:sqlserver://127.16.1.56:1433;DatabaseName=aa"
                                ]
                            }
                        ]
                    }
                },
                "writer": {
                    "name": "mysqlwriter",
                    "parameter": {
                        "writeMode": "insert",
                        "username": "root",
                        "password": "example",
                        "column": ["*"],
                        "session": [
                        ],
                        "preSql": [
                          "truncate cases2"
                        ],
                        "connection": [
                            {
                                "jdbcUrl": "jdbc:mysql://127.0.0.1:30438/test",
                                "table": [
                                    "cases2"
                                ]
                            }
                        ]
                    }
                }
            }
        ]
    }
}
1 个赞

可参考:汽车之家从 SQL Server 到 TiDB 的异构变迁

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。