更改information_schema本身的整理

时间:2017-09-06 13:48:27

标签: mysql

Oracle's documentation说:

  

INFORMATION_SCHEMA表中的字符串列具有utf8_general_ci

的排序规则

我需要将其更改为utf8_unicode_ci,以避免在运行某些查询时出现“非法混合归类”错误。

我试图改变它:

    使用此命令在表级别
  • 生成查询:

select concat("ALTER TABLE information_schema.", table_name, " COLLATE utf8_unicode_ci;") as ExecuteTheString from information_schema.tables where table_schema="information_schema";

    使用此命令在数据库级别

ALTER DATABASE information_schema CHARACTER SET utf8 COLLATE utf8_unicode_ci;

两个命令都给出以下结果:

ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'information_schema'

甚至可以更改INFORMATION_SCHEMA的排序规则吗?

编辑:

我不是在问如何解决“非法混合排序”错误,我提到它只是为了介绍我的问题的背景。

昨天我一直在阅读有关information_schema的文章,每篇文章都说它很特别,它没有自己的文件等。

当我谷歌关于更改排序规则时,它只会找到有关常规模式的文章,而不是像information_schema这样的特殊模式。

我真正需要的是明确的答案,例如“是的,这是可能的,这里是如何做到的”或“不,这是不可能的,这里是阅读它的链接”。

0 个答案:

没有答案