MySQL garbled code

上一篇咱们唠到spring data redis 自定义注解设置失效时间,文末我把redis可视化贴了出来,几乎没人会发现对象Person的属性name我赋值了"asd"字符串,这是因为我在测试时,用中文本地的mysql出现了中文乱码,所以这次我就回头解决了这个问题,这篇博客与上一篇算是具有一定连贯性.

如果您已经安装了mysql,并且出现中文乱码,首先您要做的是:

1.net stop mysql,没设置环境变量的要到/bin目录下

2.mysqld -remove

3.重启电脑

4.找到您my.ini/default.ini

4.1. 设置客户端默认字符集default-character-set=utf8

4.2. 设置服务端默认字符集character-set-server=utf8

4.3.多说一句如果您安装的是mysql 8.x无需配置data路径mysql会自动创建,安装目录只需一个反斜杠就好了"\"

5.将您原有的data文件删除

6.初始化mysql: mysqld --initialize --console 注意root@localhost:后面是初始密码如下

 A temporary password is generated for root@localhost: )dug;6s<Zt?u

如果你看到console结果对utf8有疑问,请忽略,千万不要设置为utf8mb4/utf8mb3,他会这样误导的告诉你:

[Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.

7.mysql install 安装mysql服务

8.net start mysql 启动mysql服务

9.mysql -uroot -p初始密码

10.ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; //修改密码为root

如果您未安装mysql请移步google,不过这里的所述步骤仍具有参考性.

11.设置您的application.properties文件或.yml/.yaml中的spring.datasource.url 如下

url: jdbc:mysql://localhost:3306/spring_data?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8

其中spring_data是您的数据库名称注意替换,没有会创建.

以上就能解决mysql中文乱码问题,在我前面的实际项目中您重启后如若发现创建数据表任意失败,要删除spring_data(您的数据库名称),与java混合开发环境下要在build.gradle中请先移除allOpen插件,刷新后重新bootRun,记得最后成功后还要加上allOpen插件.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值