MySQL控制台中文乱码



最近遇到了一个mysql数据库乱码的问题,使用的数据库版本是:6.0.6-alpha-community

现象是在控制台上查看表中文显示乱码,在dbvisualizer客户端工具中查看正常,如下图所示:




解决办法:

mysql.ini中的default-character-set=utf-8改成default-character-set=gbk,然后重启MySQL服务。问题解决,如图所示,查询和插入中文都是不是乱码了。


检验一下控制台效果:

检验一下工具查询效果:

希望能够帮助你解决和我遇到一样的问题。


声明:本人同意任何人转载我的文章,只求能够帮助别人解决问题。


### 解决IntelliJ IDEA Web项目控制台乱码问题 在开发过程中遇到中字符编码问题是一个常见的现象。以下是针对该问题的解决方案: #### 控制台编码设置 确保 IntelliJ IDEA 的控制台编码设置正确无误。可以通过以下路径调整全局或项目的件编码配置: - **File → Settings → Editor → File Encodings** - 将 `Global Encoding` 和 `Project Encoding` 设置为 UTF-8[^1]。 - 确认 `Default encoding for properties files` 同样被设定为 UTF-8。 #### Tomcat 或 Jetty 配置 如果使用的是嵌入式服务器(如 Tomcat),需要确认其启动参数支持 UTF-8 编码。可以在运行配置中加入 `-Dfile.encoding=UTF-8` 参数来强制指定 JVM 使用 UTF-8 进行编码处理[^2]: ```bash -Dfile.encoding=UTF-8 ``` #### Servlet 响应头设置 对于 Java Web 应用程序,在响应客户端请求时,需显式声明内容类型和支持的语言集。通过修改代码中的 `response.setContentType()` 方法实现这一目标: ```java response.setContentType("text/html;charset=UTF-8"); ``` 此方法可以有效防止因浏览器解析不一致而导致的乱码情况发生。 #### 数据库连接字符串优化 当数据库查询返回的数据包含中字符时,也需要检查 JDBC URL 中是否包含了正确的字符集定义。例如 MySQL 可能需要如下形式的连接串: ```properties jdbc:mysql://localhost:3306/your_database?useUnicode=true&characterEncoding=utf8 ``` 以上措施综合应用能够显著减少甚至完全消除由于不同平台间转移档或者网络传输过程引发的各种潜在编码错误风险。 ### 示例代码片段展示如何设置HTTP响应头部信息以避免乱码 ```java import javax.servlet.http.HttpServletResponse; public class CharsetExample { public static void setResponseCharset(HttpServletResponse response){ response.setHeader("Content-Type", "text/html; charset=UTF-8"); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值