在MySQL中保持show_compatibility_56始终为ON

Dho*_*oha 10 mysql sql mysql-workbench

我需要在MySQL中将系统变量"show_compatibility_56"设置为ON.所以,我运行命令set global show_compatibility_56 = on;,它工作但是,我注意到每当我停止然后启动MySQL服务器时,此变量将返回OFF.即使我重新启动服务器,任何关于如何使它始终保持开启的提示?

Rya*_*yan 18

我正在使用Laravel Homestead(Vagrant)盒子(MySql Ver 14.14 Distrib 5.7.17).

我需要SSH到Homestead,然后运行:

echo "[mysqld]
show_compatibility_56 = ON
performance_schema" | sudo tee -a /etc/mysql/conf.d/mysql.cnf  >/dev/null    
sudo service mysql restart
Run Code Online (Sandbox Code Playgroud)

(感谢Mark Reed展示如何跳过打开vim.)

版本:

sudo vim /etc/mysql/conf.d/mysql.cnf

然后我添加了这个部分:

[mysqld]
show_compatibility_56 = ON
performance_schema
Run Code Online (Sandbox Code Playgroud)

我很惊讶这里和网上其他地方的其他答案没有指明它需要[mysqld]代替,[mysql]而且还必须重新启动MySql服务:

sudo service mysql restart
Run Code Online (Sandbox Code Playgroud)

  • 确切地说,没有人对[group]把这个愚蠢的配置选项放在哪里 (2认同)
  • 哈,谷歌3个月后带我到我自己的答案现在,我再次面临这个问题*.赢得! (2认同)

Zaf*_*lik 3

您需要将此变量设置保存在配置文件 my.cnf(对于 Linux)和 my.ini(对于 Windows)中。