首先我想说这个问题.对于我来说坑了一下午
首先问题就是我用mybatispuls 连接mysql
第一步
jdbc:mysql://localhost:3306/11e?useUnicode=true&characterEncoding=UTF-8
先把连接改了.设置utf-8 ,但是发现问题并没有解决
第二步.
然后我在是不是没有没有配置my.cnf
查找MySQL用到的my.cnf
ps aux|grep mysql|grep ‘my.cnf‘ 发现没有找到. mysql --help |grep ‘my.cnf‘ 使用这个命令发现有
在etc/下创建 my.cnf
# Default Homebrew MySQL server config [mysqld] # Only allow connections from localhost bind-address = 127.0.0.1 default-character-set=utf8 [mysqld] character-set-server=utf8 init_connect=’SET NAMES utf8’ [client] default-character-set=utf8mb4
mysql: [Warning] World-writable config file ‘/etc/my.cnf‘ is ignored 这个是因为配置MySQL权限太高了MySQL认为有风险性自动忽略了
然后我修改chmod 644 /etc/my.cnf 这个时候可以使用了
但是发现还没有解决
第三步
因为我使用的是MySQL8.0 然后我换驱动到5.1 也是没有解决了.
第四步
我使用mysql -uroot 进入命令行在查询发现我的是显示中文的
最坑的原因已经找到了.因为我连接的是navicat
我又创建了一个连接
这个时候发现我的字符是对的
原文地址:https://www.cnblogs.com/bj-xiaodao/p/11025110.html
时间: 2024-10-25 18:46:12