MySQL Error number: MY-010771; Symbol: ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT; SQLSTATE: HY000 报错 故障修复 远程处理

文档解释

Error number: MY-010771; Symbol: ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT; SQLSTATE: HY000

Message: Unable to identify the charset in %s. Using default character set.

错误说明:

MY-010771(ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT)表明当MySQL试图在使用的defaults-file未能表现指定字符集时,MySQL server出错了。

常见案例

MY-010771(ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT)错误通常发生在使用正确defaults-file连接MySQL server,但无法指定有效字符集时。

解决方法:

关于MY-010771(ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT)错误,相关解决方法主要是:

1、在defaults-file文件里属性加上default-character-set=utf8mb4,或者加上default-collation=utf8mb4_general_ci。

2、如果你使用root账号连接MySQL,加上–character-set-server=utf8mb4,或者–default-collation=utf8mb4_general_ci参数。

3、在defaults-file里设置的default-character-set的字符集必须正确,如果不正确可以添加一行:character_set_server=utf8

4、如果defaults-file文件中未指定有效的字符集,可以修改my.cnf文件,指定一个默认的:[client]default-character-set = utf8

5、如果my.cnf文件中未设置有效的字符集,可以尝试在命令行环境下使用set命令指定默认字符集:set NAMES UTF8。

6、在my.cnf文件中加入[client]port=3306或者[client]protocol=tcp。

7、如果连接MySQL服务器时使用了小写属性,例如使用port而非Port或无connection-attributes,把上述小写属性改为正确的大写属性,例如把port改为Port,或添加connection-attributes属性。

8、在my.cnf文件中添加[mysql]default-auth=mysql_native_password,这样MySQL会使用native_password插件。

9、在my.cnf文件中添加如下内容,即socket文件路径:

[client]

socket=/tmp/mysql.sock

10、如果没有特殊设置,可以尝试使用默认的host和port参数,例如:host=localhost,port=3306

最后,如果你仍然无法解决MY-010771(ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT)错误,则建议检查MySQL服务器本身是否正常,再进行确认。


数据运维技术 » MySQL Error number: MY-010771; Symbol: ER_CANT_IDENTIFY_CHARSET_USING_DEFAULT; SQLSTATE: HY000 报错 故障修复 远程处理