`

学习 查看修改mysql编码方式

阅读更多

 

1、需要以root用户身份登陆才可以查看数据库编码方式(以root用户身份登陆的命令为:>mysql -u root –p,之后两次输入root用户的密码),查看数据库的编码方式命令为:

>show variables like 'character%';

+--------------------------+----------------------------+

| Variable_name | Value |

+--------------------------+----------------------------+

| character_set_client | latin1 |

| character_set_connection | latin1 |

| character_set_database | latin1 |

| character_set_filesystem | binary |

| character_set_results | latin1 |

| character_set_server | latin1 |

| character_set_system | utf8 |

| character_sets_dir | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

从以上信息可知数据库的编码为latin1,需要修改为gbk或者是utf8;

其中,character_set_client为客户端编码方式;character_set_connection为建立连接使用的编码;character_set_database数据库的编码;

character_set_results结果集的编码;

character_set_server数据库服务器的编码;

只要保证以上四个采用的编码方式一样,就不会出现乱码问题。

另一个查看数据库编码的命令:

>show variables like ‘collation%’;

2、linux系统下,修改MySQL数据库默认编码的步骤为:

ü        停止MySQL的运行

/etc/init.d/mysql start (stop) 为启动和停止服务器

ü        MySQL主配置文件为my.cnf,一般目录为/etc/mysql

var/lib/mysql/ 放置的是数据库表文件夹,这里的mysql相当于windows下mysql的date文件夹

ü        当我们需要修改MySQL数据库的默认编码时,需要编辑my.cnf文件进行编码修改,在linux下修改mysql的配置文件my.cnf,文件位置默认/etc/my.cnf文件

 

找到客户端配置[client] 在下面添加

default-character-set=utf8 默认字符集为utf8

在找到[mysqld] 添加

default-character-set=utf8 默认字符集为utf8

init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)

 

修改好后,重新启动mysql 即可,重新查询数据库编码可发现编码方式的改变:

>show variables like 'character%';

+--------------------------+----------------------------+

| Variable_name | Value |

+--------------------------+----------------------------+

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | utf8 |

| character_set_filesystem | binary |

| character_set_results | utf8 |

| character_set_server | utf8 |

| character_set_system | utf8 |

| character_sets_dir | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

 

此方法用于标准mysql版本同样有效,对于/etc/my.cnf文件,需要从mysql/support-files的文件夹cp my-large.cnf一份到/etc/my.cnf

3、windows系统下可以删除MySQL数据库,并重新安装,在安装过程中可以直接用Mysql Server Instance Config Wizard 进行设置

4、当MySQL数据库服务器已经有数据不适合删除重装时,可以个别指定数据库的编码方式。MySQL指定编码的方式是非常灵活并多样化的,可以指定表级别的编码,行级别编码,甚至可以指定字段级别的编码。

以下示例给出创建数据库时指定编码的两种方式:

1)CREATE  DATABASE  ms_db  CHARACTER SET  utf8  COLLATE utf8_general_ci;

2)create  database  if  not  exists  netctoss  default character set utf8;

5、如果你采用的是外部接入的方式,可以在连接中确定请求的编码格式如:jdbc:mysql://localhost:3306 /mysql?useUnicode=true&characterEncoding=utf-8(注意:不要出现任何空格,否则出错)

6、执行脚本:指定编码格式set names gbk(注意,不是UTF-8)可以修改

执行前:

执行后:

从执行命令前后可知,set names gbk只可以修改character_set_client、character_set_connection、 character_set_results的编码方式,并且这种修改是窗口级别的,只针对本窗口有效,打开另外一个窗口修改无效。也可发现数据库底层的 编码方式没有改变,插入数据后还是以utf8编码方式保持。

分享到:
评论

相关推荐

    安装MySQL之后修改编码方式

    在安装王MYSQL数据库之后 用户可能在运行当中出现一些问题 因此感到困解 在此文件当中 帮助用户了解一些东西 有助于以后更好的学习

    MySQL--视图的定义

    经过视频学习和总结出来的

    mysql5.5.6安装教程及安装包.rar

    14、在打开的字符编码的页面中,设置mysql要使用的字符编码,第一个是西文编码,第二个是多字节的通用utf8编码,第三个是手动,我们选择utf-8或者是gbk,单击“next”,继续配置,如图所示: 15、在打开的页面中选择...

    MySQL命令大全

    8:用文本方式将数据装入数据库表中(例如D:/mysql.txt) mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt”INTO TABLE MYTABLE; 9:导入.sql文件命令(例如D:/mysql.sql) mysql>use database; mysql>source d:/...

    PHP和MySQL Web开发第4版pdf以及源码

    2.10 更好的方式:数据库管理系统 2.10.1 使用普通文件的几个问题 2.10.2 RDBMS是如何解决这些问题的 2.11 进一步学习 2.12 下一章 第3章 使用数组 3.1 什么是数组 3.2 数字索引数组 3.2.1 数字索引数组的...

    MYSQL常用命令大全

    8:用文本方式将数据装入数据库表中(例如D:/mysql.txt) mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE; 9:导入.sql文件命令(例如D:/mysql.sql) mysql>use database; mysql>source d:/mysql....

    PHP和MySQL WEB开发(第4版)

    2.10 更好的方式:数据库管理系统 2.10.1 使用普通文件的几个问题 2.10.2 RDBMS是如何解决这些问题的 2.11 进一步学习 2.12 下一章 第3章 使用数组 3.1 什么是数组 3.2 数字索引数组 3.2.1 数字索引数组的初始化 ...

    MySQL5.1参考手册官方简体中文版

    2.3.12. 以Windows服务方式启动MySQL 2.3.13. 测试MySQL安装 2.3.14. 在Windows环境下对MySQL安装的故障诊断与排除 2.3.15. 在Windows下升级MySQL 2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL...

    PHP和MySQL Web开发第4版

    2.10 更好的方式:数据库管理系统 2.10.1 使用普通文件的几个问题 2.10.2 RDBMS是如何解决这些问题的 2.11 进一步学习 2.12 下一章 第3章 使用数组 3.1 什么是数组 3.2 数字索引数组 3.2.1 数字索引数组的...

    [删除] 提供一套MediPro汽车门户网站,php+mysql,经测试可用,供学习用

    后台各频道均具有分类检索、搜索、自定排序方式、批量处理、转移栏目和类别等完备的内容管理功能 [>]自定义会员类型,灵活设置权限 可自定义创建多种会员类型,每种会员类型、每个用户均可设置不同的权限 [>]灵活...

    基于jsp人力外包企业专用HR管理平台ssh+mysql源码.zip

    项目学习,毕设,简单项目使用等,源码,文档数据库齐全 随计算机软硬件技术的不断更新,直接推动了各行各业信息化的迅猛发展。今天,建立在计算机技术、网络技术和现代通信技术基础上的企事业单位管理信息化水平...

    基于Jantent的博客系统学习springboot+源代码+文档说明

    - 能够以分类的方式查看文章 - 能够以时间列表的方式归档文章 - 个人介绍,github地址 - 搜索框,能够搜索文章 #### 后台管理 - 管理主页,记录最新文章,最新留言,最近日志等 - 最近日志记录登录IP,地址,操作...

    一款由JAVA编写的简易终端超市收益管理系统(使用数据库),有商品存管理收银管理两个功能

    数据库:使用MySQL数据库,使用mybatis方式进行连接 登录:接收客户端的输入的用户名和密码,发送到服务器端验证 商品库存管理:商品入库、出库管理、新增商品、查询全部商品、按编号查询商品 收银管理:扫描商品、...

    基于SpringMVC+Spring+MyBatis开发的个人博客网站-毕业设计.zip

    数据库乱码,在MySQL安装路径,比如(E:\MySQL\MySQL Server 5.5)下找到my.ini文件进入编辑,修改这两处地方为utf8,默认是拉丁文 character-set-server=utf8 default-character-set=utf8 本项目使用到的mail服务...

    最新Python3.5零基础+高级+完整项目(28周全)培训视频学习资料

    基于ORM实现用户增加删除修改以及查看详细 Django字段类型介绍 DjangoORM字段参数介绍 DjangoORM外键操作 基于DjangoORM的外键实现增加用户(含select标签) 作业 第20周 课程安排 上课内容回顾 Django一对多的...

    易语言程序免安装版下载

    6) 修改MYSQL支持库跨静态编译的EXE和DLL传递连接句柄和记录集句柄无效的BUG(改动较大,可能会产生兼容性问题,我们已经仔细测试,也请使用到此库的用户帮助我们多多测试,以便及早发现问题,谢谢) 7) 其它修改 ...

    基于python编写的代码变更覆盖率平台+源代码+文档说明

    - 版本比对:支持通过给出版本号或者通过“HEAD~1”方式描述回退版本数来指定与当前版本比对的版本 - 覆盖率数据:手动触发获取对应服务的覆盖率数据,统计服务下所有包及类的变更代码覆盖率统计数据 - 覆盖率详情:...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

     本书适合PHP的初学者,如高校学生、求职人员作为练习、速查、学习使用,也适合PHP程序员参考、查阅。 目 录 目录: 第1篇 基础篇 第1章 开发环境 2 1.1 AppServ——PHP集成化安装包 3 实例001 通过AppServ配置...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

     本书适合PHP的初学者,如高校学生、求职人员作为练习、速查、学习使用,也适合PHP程序员参考、查阅。 目 录 目录: 第1篇 基础篇 第1章 开发环境 2 1.1 AppServ——PHP集成化安装包 3 实例001 通过AppServ配置...

    个人知识管理系统 Struts2.0 + Spring + Hibernate

    相关的包请到以下地址下载 ... -----------------------...用户只有一个,就是自己,所以用户采用硬编码方式,但是密码较验采用了MD5加密码方式,在LoginAction中,可以自行修改成自己的(暂时用户名yukiceo,密码yukiceo)

Global site tag (gtag.js) - Google Analytics