保持MySQL中的show_compatibility_56始终保持开启状态。
问题的原因是需要将show_compatibility_56设置为ON,但是之前的答案没有明确指出需要将该设置放在[mysqld]下,并且还需要重启MySQL服务。解决方法是在/etc/mysql/conf.d/mysql.cnf文件中添加以下内容:
[mysqld]
show_compatibility_56 = ON
performance_schema
然后重启MySQL服务,可以使用以下命令:
sudo service mysql restart
如果使用了homebrew安装了MySQL并且安装了homebrew服务,可以使用以下命令重启MySQL:
brew services restart mysql
通过执行SHOW SESSION VARIABLES where Variable_name like '%show_compatibility%'命令可以进一步检查设置是否生效。
问题的原因是:无法将show_compatibility_56的设置保持为ON,每次重新启动服务器时都会重新分配为OFF。
解决方法如下:
1. 在Linux上的配置文件为my.cnf,在Windows上为my.ini。需要将此变量设置保存在配置文件中。
2. 在Windows上,可以在路径"C:\Program Files (x86)\MySQL\MySQL Server 5.5\my.ini"找到my.ini文件。根据不同的MySQL版本和Windows版本,路径可能会有所不同。
3. 如果找不到my.ini文件,可以尝试查找名为'my-default.ini'的文件,这可能就是所说的文件。可以在其中添加show_compatibility_56=on这一行。但是,每次停止和启动服务器时,此属性仍然设置为off。
4. 在相同的位置上复制一份名为my.ini的文件,并在此文件中更新配置,然后重新启动MySQL服务。
5. 如果仍然无法解决问题,可以尝试将show_compatibility_56 = 1,然后记得重启MySQL服务。
6. 使用命令"SHOW VARIABLES LIKE 'show_compatibility_56';"来检查MySQL的版本。show_compatibility_56变量从MySQL 5.7.6版本引入。
7. 如果可以获取到记录,但无法将show_compatibility_56系统变量的更改永久保存,可以尝试与作者通过电子邮件联系以获取更多帮助。
8. 对于使用information_schema的代码,可以将信息模式更改为performance_schema,以避免更改show_compatibility_56变量。