49 lines
1.7 KiB
Markdown
49 lines
1.7 KiB
Markdown
|
## 说明
|
|||
|
使用该程序来对MyDumper导出的CSV数据进行读取,转换,然后导出到其他数据库中。
|
|||
|
|
|||
|
1. 用MyDumper从数据库导出CSV数据
|
|||
|
|
|||
|
使用MyDumper Docker镜像
|
|||
|
```sh
|
|||
|
docker run --rm --net=host -v D:/Dump:/home/backup mydumper/mydumper:v0.15.2-6 mydumper `
|
|||
|
-h 127.0.0.1 -P 33306 -u root -p 123456 `
|
|||
|
-B cferp_test --no-schemas --csv --hex-blob `
|
|||
|
-o /home/backup
|
|||
|
```
|
|||
|
将挂载卷,数据库连接和输出目录替换
|
|||
|
不导出数据库结构(--no-schemas),
|
|||
|
导出完的目录下应当包含.sql文件以及.dat文件
|
|||
|
|
|||
|
2. 在Program.cs中修改`CsvOptions`配置
|
|||
|
```cs
|
|||
|
host.Services.Configure<CsvOptions>(option =>
|
|||
|
{
|
|||
|
option.Delimiter = ",";
|
|||
|
option.QuoteChar = '"';
|
|||
|
option.InputDir = "D:/Dump/Test";
|
|||
|
});
|
|||
|
```
|
|||
|
将`option.InputDir`配置为MyDumper导出的数据目录
|
|||
|
|
|||
|
3. 在Program.cs中修改`DatabaseOutputOptions`配置
|
|||
|
```cs
|
|||
|
host.Services.Configure<DatabaseOutputOptions>(options =>
|
|||
|
{
|
|||
|
options.ConnectionString = new MySqlConnectionStringBuilder
|
|||
|
{
|
|||
|
Server = "127.0.0.1",
|
|||
|
Port = 33306,
|
|||
|
Database = "cferp_test_1",
|
|||
|
UserID = "root",
|
|||
|
Password = "123456",
|
|||
|
MaximumPoolSize = 50,
|
|||
|
}.ConnectionString;
|
|||
|
options.MaxTask = 16;
|
|||
|
options.FlushCount = 200;
|
|||
|
});
|
|||
|
```
|
|||
|
将`MySqlConnectionStringBuilder`的属性修改为程序要导出至的数据库
|
|||
|
> 后续将这些配置通过命令行传递
|
|||
|
|
|||
|
4. 运行程序
|
|||
|
> 注意,测试数据库`cferp_test`中的`order_process_step`表存在外键,如果要导出到和测试库同结构的数据库,记得先把外键删除。
|