简单解决Windows中MySQL的中文乱码与服务启动问题

 更新时间:2016年03月10日 14:36:24   作者:dai_jing  
这篇文章主要介绍了Windows中MySQL的中文乱码与服务启动问题,如果程序没有特殊需要则建议MySQL尽量默认设为UTF-8格式编码,需要的朋友可以参考下

中文乱码问题
当我第一次接触mysql,首先让我难受的是mysql的乱码问题,百度上也有许多有关的解决方案,不过作为亲身受害者,我想很有必要贴出我的心声:
1.关于mysql的字符集处理
mysql在标识数据时采取二进制字符和非二进制字符格式,前者主要用来标识图片,声音,后者就完成剩余的所有功能,而对于后者,就存在字符集设置问题。
我们知道数据库是老外搞出来的,他们在设计的时候并没有考虑到编码格式的问题,在计算机流行的现代每个国家为了支持本国的语言,都推出了自己本国的编码格式,下面利用mysql命令列出世界上所有的编码:

2016310143101531.jpg (648×726)

其中的GBK、gb2312、big5是中国的编码
GBK:支持21000多个汉字,包括简体和繁体,占2个字节
gb2312:支持6700多个汉字,占2个字节
big5:支持繁体字符集,主要是支持香港、台湾那边的字符,繁体,13000多汉字,2个字节
国际标准化组织为了统一格式,创建了UTF8编码,也就是unicode编码的一种格式,称为万国码,支持世界上的所有语言具体解决方案:
首先利用命令行,查看字符集:

2016310143124283.png (648×430)

解释下乱码原理:
当我们链接mysql数据库时,实际上要经过下面几个步骤:
客户端->链接端->数据库字段端->返回端
就是上面的贴图中的

character_set_client
character_set_connection
character_set_database
character_set_result

乱码问题出现这几个步骤中,只要其中某个步骤出错,就会出现乱码
当我们用程序在外部链接mysql 数据库时,客户端就是我们的程序软件,所以要将客户端设置成GBK或者gb2312,链接时设置为UTF8或者GBK,数据库设置为gbk或utf8
返回设置成GBK,这样一般就不会出现中文乱码了
如下图所示:
你可以通过命令行设置:
如果不考虑注入问题,你可以采取以下方法:

set names gbk ;

这条命令设置了客户端、连接端、返回端均为GBK;

2016310143321628.png (640×416)

你也可以逐个设置:
在创建库的时候设置字符集:
利用命令:

create database mydatabase default character set utf8;

2016310143356799.png (640×221)

在创建表的时候指定表的字符集:
利用命令:

create table user(name char(30) character set gbk) default character set gbk;

2016310143411912.png (635×79)

还有如下设置:
设置结果集:

set character_set_results=gbk;

设置连接字符集:

set character_set_connection=gbk;

因为我们现在是学习阶段,不考虑内存容量问题,统一设置为UTF8,如果你的程序只支持汉语,你的作品向外发行最好选择GBK编码。。。。。
如果你按照上面的方法做还是发现程序运行有问题,请检查您的程序是否也是UNICODE编码,我以前就是因为这个原因。


启动服务问题
我现在假设您在安装mysql数据库的时候建立了登录用户和密码(mysql是免费的可以到官网下载)
安装完成的mysql数据库是开机自动运行的,如果您的mysql数据库服务不小心被关闭,可以采取以下解决方案:
方案1:在桌面计算机图标上单击鼠标右键,
管理->服务和应用程序->服务 然后在列表中找到mysql服务项,单击鼠标右键执行“启动”,当然你也可以在这里停止mysql服务。

2016310143434856.jpg (778×449)

方案2:
打开cmd(命令行),执行命令:

net start mysql55

注意:这里的mysql55是我的PC上的MYSQl数据库服务名,具体要按照自己PC的数据库服务名执行。。。这个服务名是你安装mysq数据库指定的服务名。

2016310143500402.png (675×439)

相关文章

  • MySQL8.0窗口函数入门实践及总结

    MySQL8.0窗口函数入门实践及总结

    这篇文章主要给大家介绍了关于MySQL8.0窗口函数入门实践及总结的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MySQL8.0具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • MySQL运行在docker容器性能损失解析

    MySQL运行在docker容器性能损失解析

    这篇文章主要为大家介绍了MySQL运行在docker容器中的性能损失解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • mysql 8.0.13 解压版安装配置方法图文教程

    mysql 8.0.13 解压版安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 8.0.13 解压版安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • MySQL实现分页查询的方法

    MySQL实现分页查询的方法

    这篇文章介绍了MySQL实现分页查询的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • Windows服务器MySQL中文乱码的解决方法

    Windows服务器MySQL中文乱码的解决方法

    这篇文章主要介绍了MySQL中文乱码的一些解决方案,本文同时分解了MySQL中文乱码的原因分析,需要的朋友可以参考下
    2015-01-01
  • mysql对于模糊查询like的一些汇总

    mysql对于模糊查询like的一些汇总

    这篇文章主要给大家介绍了关于mysql对于模糊查询like的一些汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 深入MYSQL中的COLLATE

    深入MYSQL中的COLLATE

    MYSQL COLLATE是用于指定字符集的排序规则的关键词,它可以用于在查询中对字符数据进行排序和比较,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • 使用java处理字符串公式运算的方法

    使用java处理字符串公式运算的方法

    本篇文章介绍了,使用java处理字符串公式运算的方法。需要的朋友参考下
    2013-04-04
  • MYSQL数据库GTID实现主从复制实现(超级方便)

    MYSQL数据库GTID实现主从复制实现(超级方便)

    这篇文章主要介绍了MYSQL数据库GTID实现主从复制实现(超级方便),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • MySql中子查询内查询示例详解

    MySql中子查询内查询示例详解

    这篇文章主要介绍了MySql中子查询内查询示例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论