mysqldump导出到分隔文本混合数据(blob和文本)并恢复

时间:2017-06-17 10:01:05

标签: mysql

我正在使用此代码从数据库中导出所有表,而不是在一个文件中,而是在一个文件夹中,使用表结构的一个.sql文件和一个带有分隔文本数据的.txt文件

mysqldump -uroot -pmy_pass --tab=/path/to/export my_database --fields-enclosed-by=\" --fields-terminated-by=,

但我有一些表还包含blob数据(混合列有些blob一些文本)

我添加了 - hex-blob 参数,认为它们将以十六进制格式导出,但这并没有发生(当我看一下像unicode这样的分隔文本文件时 - - 我认为这是bynary - >“o2¼ë2æã‡_g9yùaÿÿQ§M!)

为了恢复我使用它(使用PHP mysqli)

LOAD DATA LOCAL INFILE '$my_file' 
IGNORE INTO TABLE $my_table
FIELDS TERMINATED BY ',' 
ENCLOSED BY '\"' 
LINES TERMINATED BY '\n';

我尝试导入

时变成了错误
  

无效的utf8mb4字符串:'“o2'

我也试过 - default-character-set = binary (在mysqldump导出上) 和 mysqli_set_charset($ my_conn,“binary”); 关于恢复, 但同样的错误。

源和目标数据库有utf8mb4字符集

0 个答案:

没有答案