一、POST Content-Length of 62112451 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

        这个是PHP传数据的设置的问题。从英文意思可看到POST的文本长度是60多M,超出了8M。在php.ini里面post_max_size默认值为8M,将它改大就可以了。顺便把upload_max_filesize也改大。

        二、Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 356445465 bytes)

        这个也是php.ini的设置问题。php.ini里面的memory_limit默认设置是128M,也就是说php代码能申请到的最大内存是128M,在处理大文件如导出数据表时,就有可能超出而出错导不到。将它改大即可。

        三、ERROR: ASCII '\0' appeared in the statement, but this is not allowed unless option --binary-mode is enabled and mysql is run in non-interactive mode. Set --binary-mode to 1 if ASCII '\0' is expected. Query: 'SQLite format 3'.

        这个是MySQL里面的设置问题了。这次在用source XXX.sql里导入数据时出错,原因是数据库的编码设置问题。原数据库的表有gbk_chinese_ci和utf8_general_ci格式,而数据库的编码是gbk_chinese_ci,但我却将数据库编码改为utf8_general_ci,然后导出的sql文件比数据库占用的空间还要大。而这个sql文件再导入回去时,则出现上面的错误。将数据库改回gbk_chinese_ci后OK。

        指令就知怎样操作,在phpMyAdmin是这样子操作的。

        数据库设置为utf8_general_ci编码的情况:

设置为utf8.jpg

        将编码改为utf8_general_ci

设置为GBK.png

        另外用show variables like '%character%';发现数据库的 character_set_database编码是latin1,和之前搭的网站不一致。因此也改为utf8。

character_set_database.png