刚重装mysql5.5,搜索数据库又出了问题。搜索中文时出不来结果,插入中文时看到数据库中插入的是“??”,而查询英文则毫无问题。看来是编码出错无误。于是打开sqlyog,输入show variables like 'coll%',看到结果:
Variable_name Value
collation_conncetion utf8_general_ci
collation_database utf8_general_ci
collation_server latin1_general_ci
而我的项目及页面都是utf8编码,看来是collation_server的校对规则出了问题。上网搜了一下,说是直接改动my.ini的default-character-set和
character-set-server两个值为utf8再重启mysql即可。不过我重启却出现了1067失败……后来发现可以直接用MySQLInstanceConfig.exe来配置。进入之后一路点确定到这个页面:
在这里将编码设定为utf8再确定后,程序会自动重启服务,再次进入sqlyog,输入show variables like 'coll%',看到结果:
Variable_name Value
collation_conncetion utf8_general_ci
collation_database utf8_general_ci
collation_server utf8_general_ci
这样就全改好了,再试着查询插入,一切正常。