Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当使用phpMyAdmin下载时,BLOB字段被剪切_Phpmyadmin - Fatal编程技术网

当使用phpMyAdmin下载时,BLOB字段被剪切

当使用phpMyAdmin下载时,BLOB字段被剪切,phpmyadmin,Phpmyadmin,原始mysql客户端:(好) phpMyAdmin>Export>SQL:(好) phpMyAdmin>浏览>单击BLOB字段:(失败。仅部分保存) (编辑)curl(phpMyAdmin请求): (编辑2)(在详细模式下,我发现一个错误…)

原始mysql客户端:(好)

phpMyAdmin>Export>SQL:(好)

phpMyAdmin>浏览>单击BLOB字段:(失败。仅部分保存)

(编辑)curl(phpMyAdmin请求):

(编辑2)(在详细模式下,我发现一个错误…)

有人有同样的问题吗?我猜phpMyAdmin发送了一个错误的内容长度值

我的配置:

  • Mysql:5.6.23-log
  • phpMyAdmin:4.4.1.1
  • 连接:utf8mb4_-bin(从utf8_-bin自动切换)
  • innodb:utf8\u bin
  • nginx/1.7.9
  • php:5.6.4-1+deb.sury.org~trusty+1+mysqli
在文件“tbl\u get\u field.php”中,我发现:

最后一行使用内部mb_internal_encoding()计算总长度。在我的例子中,它被设置为UTF-8

改为:

/*overload*/mb_strlen($result, '8bit')
解决了我的问题。此处的信息:

添加到我的Dockerfile中的行:

RUN sed -i.bak s/mb_strlen\(\$result\)/mb_strlen\(\$result,\'8bit\'\)/g /data/http/tbl_get_field.php

可能重复的我不想查看内容,我想下载它。问题与此无关,因为我这里的数据已损坏。
{"example":"日本語...", "everythi
curl 'http://127.0.0.1:48001/tbl_get_field.php?db=develop&table=mytable&where_clause=%60mytable%60.%60id%60+%3D+46361&transform_key=data&sql_query=SELECT+id%2Cdata+FROM+%60mytable%60+WHERE+id%3D46361&token=removed' -H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0'
{"example":"日本語...", "everythi
< HTTP/1.1 200 OK
* Server nginx/1.6.2 is not blacklisted
< Server: nginx/1.6.2
< Date: Mon, 13 Apr 2015 10:45:08 GMT
< Content-Type: application/octet-stream
< Content-Length: **6453**
< Connection: keep-alive
< X-Powered-By: PHP/5.5.22-1~dotdeb.1
< Expires: Mon, 13 Apr 2015 10:45:08 +0000
< Cache-Control: no-store, no-cache, must-revalidate,  pre-check=0, post-check=0, max-age=0
< Pragma: no-cache
< Last-Modified: Mon, 13 Apr 2015 10:45:08 +0000
< Content-Description: File Transfer
< Content-Disposition: attachment; filename="mytable-data.bin"
< Content-Transfer-Encoding: binary

 * Excess found in a non pipelined read: excess = **1338**, size = 6453, maxdownload = 6453, bytecount = 0 .
PMA_downloadHeader(
    $table . '-' .  $_GET['transform_key'] . '.bin',
    PMA_detectMIME($result),
    /*overload*/mb_strlen($result)
);
/*overload*/mb_strlen($result, '8bit')
RUN sed -i.bak s/mb_strlen\(\$result\)/mb_strlen\(\$result,\'8bit\'\)/g /data/http/tbl_get_field.php