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

作者:dai_jing 时间:2024-01-21 00:58:43 

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

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

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

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

解释下乱码原理:
当我们链接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;

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

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


create database mydatabase default character set utf8;

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

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


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

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

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


set character_set_results=gbk;

设置连接字符集:


set character_set_connection=gbk;

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


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

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

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


net start mysql55

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

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

标签:MySQL,乱码,服务
0
投稿

猜你喜欢

  • asp提高首页性能的一个技巧

    2008-04-05 06:54:00
  • python如何获取apk的packagename和activity

    2023-07-11 20:50:19
  • Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据

    2024-01-17 17:32:18
  • Javascript异步流程控制之串行执行详解

    2024-04-19 09:56:49
  • 什么是blob,mysql blob大小配置介绍

    2024-01-12 19:05:27
  • Python filter()及reduce()函数使用方法解析

    2022-09-05 07:01:59
  • MySQL Server层四个日志的实现

    2024-01-21 11:16:58
  • 360搜索引擎自动收录php改写方案

    2024-05-11 09:19:26
  • PyHacker编写URL批量采集器

    2022-03-21 12:42:21
  • Windows中使用wxPython和py2exe开发Python的GUI程序的实例教程

    2021-07-07 08:52:17
  • ASP教程:0177:800401f3错误解决

    2008-08-02 12:41:00
  • MySQL索引类型一览 让MySQL高效运行起来

    2010-04-22 16:52:00
  • 可以让程序告诉我详细的页面错误和数据库连接错误吗?

    2009-11-01 18:01:00
  • 使用JavaScript访问XML数据

    2023-06-29 22:19:08
  • JS获取url参数,JS发送json格式的POST请求方法

    2024-04-30 10:10:27
  • Python使用进程Process模块管理资源

    2023-08-08 07:08:01
  • MySQL数据库事务原理及应用

    2024-01-17 13:02:49
  • 微信跳一跳python辅助软件思路及图像识别源码解析

    2023-01-10 22:45:57
  • Python的Django框架中settings文件的部署建议

    2023-07-08 21:39:43
  • python set()去重的底层原理及实例

    2021-08-30 05:04:11
  • asp之家 网络编程 m.aspxhome.com