MySQL数据库字符集乱码问题MySQL解压版安装教程
本次情况是发现连接数据库,包括Java连接数据库,包括Java项目都配置了UTF,8编码,但是数据库的中文数据取出来,还是乱码,然后执行了mysql命令:
SHOW VARIABLES LIKE 'character%'
发现编码竟然不是UTF8,而是latin1编码,然后我使用mysql命令,设置为UTF8编码之后,包括my.ini也设置完之后,发现安装版的MySQL重启这些配置是不生效的,所以重新装MySQL解压版
步骤①:解压官网下载的MySQL,并且,新建在目录下新建my.ini文件,内容如下:
[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8
[mysqld]
#设置 3306 端口
port = 3306
# 设置 mysql 的安装目录
basedir=D:\Program Files\mysql-5.7.30-winx64
# 设置 mysql 数据库的数据的存放目录
datadir=D:\Program Files\mysql-5.7.30-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为 8 比特编码的 latin1 字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
并且其中的basedir和datadir设置为我们的解压目录,然后在目录下新建data目录,如图所示:
步骤②:用管理员身份打开cmd窗口:win -> windows系统 -> 右击命令提示符 -> 更多 -> 以管理员身份运行,并且在dos命令行中进入到安装目录的bin目录下,如图所示:
步骤③:执行命令
mysqld --install
步骤④:执行命令:
mysqld --initialize --user=root --console
会生成随机密码
步骤⑤:执行命令启动数据库
net start mysql
步骤⑥:登录数据库并修改密码:
登录数据库命令:
mysql -uroot -p
修改数据库密码命令:
alter user 'root'@'localhost' identified by 'root';
刷新缓存命令
flush privileges
如图所示
整个安装过程结束!问题解决!
OK!问题解决!不会的给我私信!
觉得有帮助的可以关注一波!经常分享编程踩坑经验!