java 项目 存入 mysql 后 变问号 MySql 5.6 (X64) 解压版 1067 错误与编码问题的解决方案
环境 Java 环境 JDK1.8 安装好了 mysql-5.6.38-winx64 idea2016(64)
问题是这样: idea 调试 eclips 项目 存入数据库后 变问号
首先 eclips 和发布的项目都没有问题,第一想到的是编码问题,于是乎检查项目和数据库编码,但查看后发现编码都是 utf-8 ,数据库是通过(navicat)查看的
但发现网上有文章说 JDBC 连接串里加上 ?useUnicode=true&characterEncoding=utf8 (试验不起作用)。有的文章提起了 SHOW VARIABLES LIKE 'character_set_%'; (在 Cmd 里的 mysql 客户端里执行)这句话很重要,发现我的列表里基本全是 gbk,alter database 'xxx' charset utf8 没用,于是想起了 my.ini 设置 charset, 于是噩梦开始了。 发现我的 数据库目录下没有 my.ini 只有一个 my-default.ini 而且里面基本全是被注释了,只留了一句话。于是看网上说,有的在 windows 下,有的说在 C program file 有的说 D program file 有的说 win7(X64) 在 programData 下还是隐藏的 我是 win764,以上设置显示隐藏 显示系统文件,无果。mysql 是参照度娘
如何安装 MySQL,MySQL 两种安装方式_百度经验安装的,里面没提到 my.ini 顺便看了别的文章说安装前要复制 mydefault.ini 成 my.ini 于是复制, 配置, 悲催的是发现服务 提示 1067 无法启动 于是卸载重装,, 查看 Windows 日志,,,(找不到 安装目录 error.sys?) 去其它目录又找了一遍 my.ini 最后冷静一想我是有 my.ini 才报的. 于是一句一句的试, 发现 配置了basedir=E:\MYSQL\mysql-5.6.23-winx64
datadir=E:\MYSQL\mysql-5.6.23-winx64\data
后就会报1067于是去掉以上两个配置,正常启动!!!!!!!!!!!!!!!!!!!! (很多文章说这两个是基础配置,,甚至说其它配置都可以去掉这两个不能,这个坑太深)
以下是现在的配置
#########################################################
[client]
port=3306
default-character-set=utf8
[mysqld]
port=3306
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[WinMySQLAdmin]
D:\**********************\mysql-5.6.38-winx64\bin\mysqld.exe
执行 SHOW VARIABLES LIKE 'character_set_%'; 列表全部变为 utf8 有一个 binary 调试正常.........................
来源: http://www.bubuko.com/infodetail-2449967.html