Mysql

導入 MySQL 數據庫後出現錯誤 1231 會是兼容性問題嗎?

  • December 29, 2015

錯誤 1231 (42000):變數 ‘character_set_client’ 不能設置為 ‘NULL’ 查詢正常,0 行受影響(0.00 秒)

錯誤 1231 (42000):變數 ‘collat​​ion_connection’ 不能設置為 ‘NULL’ 的值

以上是我從 Bluehost 導入新轉儲的數據庫後遇到的錯誤(通過 phpmyadmin 完成,包括快速導出方法和自定義導出方法)。

資訊 Bluehost 版本:

MySQL 5.5.42

PHP 5.4.24

Apache 2.2.31

phpMyAdmin 3.5.8.2

本地設置(無 MAMP、XAMP、WAMP 或 LAMP)版本:

MySQL 5.5.25(通過命令行找到:mysql which version)

PHP 5.5.27

Apache 2.4.16

phpMyAdmin 4.5.1

會不會和版本不兼容有關?還是您認為這個問題的根源在其他地方?此外,一旦登錄到 MySQL,我就無法使用 mysqldump,但如果我沒有登錄,我可以執行這種類型的命令:

mysqldump -u [USERNAME] -p [DBNAME] | gzip > [/path_to_file/DBNAME].sql.gz

這正常嗎?

無論如何,我相信您可以看到我在這裡的新手,所以請多多包涵。

它與 MySQL 伺服器上的 max_allowed_pa​​cket 有關。它被設置為 16M,當我在位於 /private/etc/(在 Mac El Capitan 上)的 my.cnf 中將它提高到 64M 時,它是 my-huge.cnf 的副本。停止 MySQL 伺服器和 Apache 並重新啟動它們後,我的站點再次在本地工作,並且錯誤消息消失了。

在轉儲文件的開頭設置變數的值,character_set_client如下collation_connection所示。如果不存在添加新的

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHAR */;

/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLL */;

引用自:https://dba.stackexchange.com/questions/124706