查看mysql数据编码

登录MySQL服务,查看mysql数据库默认的编码

mysql> show variables like 'character%';
+--------------------------+-------------------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | E:\0Develop\mysql-5.7.15-winx64\share\charsets\ |
+--------------------------+-------------------------------------------------+
8 rows in set, 1 warning (0.00 sec) mysql>

可以看出database和server都采用了latin1编码,不支持中文,我们需要把它修改为utf-8。

除了这两个,其它的如下

| 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 | E:\0Develop\mysql-5.7.15-winx64\share\charsets\

设置mysql数据库编码

在mysql安装目录下,将 my-default.ini 复制一分保存为 my.ini 
做如下修改 

主要看红色框里的内容

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci [mysql]
default-character-set = utf8 [mysql.server]
default-character-set = utf8 [mysqld_safe]
default-character-set = utf8 [client]
default-character-set = utf8

然后删除你当前的mysql服务,再重新注册mysql服务 
注:一定要以管理员的权限运行dos命令,且cd到mysql安装目录下的bin目录,再注册mysql服务

C:\Windows\system32>sc delete mysql
[SC] DeleteService 成功 C:\Windows\system32>e: cd
E:\>cd E:\0Develop\mysql-5.7.15-winx64\bin E:\0Develop\mysql-5.7.15-winx64\bin>mysqld --install mysql --defaults-file="E:\0Develop\mysql-5.7.15-winx64\my.ini"
The service already exists!
The current server installed: E:\0Develop\mysql-5.7.15-winx64\bin\mysqld MySQL E:\0Develop\mysql-5.7.15-winx64\bin>net stop mysql
MySQL 服务正在停止..服务名无效。
请键入 NET HELPMSG 2185 以获得更多的帮助。 E:\0Develop\mysql-5.7.15-winx64\bin>mysqld --install mysql --defaults-file="E:\0Develop\mysql-5.7.15-winx64\my.ini"
Service successfully installed.
E:\0Develop\mysql-5.7.15-winx64\bin>

结果

启动服务,查看编码

C:\Windows\System32>net start mysql
mysql 服务正在启动 .
mysql 服务已经启动成功。 C:\Windows\System32>mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.15 MySQL Community Server (GPL) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 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 | E:\0Develop\mysql-5.7.15-winx64\share\charsets\ |
+--------------------------+-------------------------------------------------+
8 rows in set, 1 warning (0.00 sec) mysql>

数据库实例编码设置

mysql> show create database test;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec) mysql> alter database test default character set utf8;
Query OK, 1 row affected (0.00 sec) mysql> show create database test;
+----------+---------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------+
| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+
1 row in set (0.00 sec) mysql>

//查看MySQL数据库服务器和数据库字符集 show variables like '%char%';

//查看表的字符集 show table status from mysql_db like '%tb_name%'

//查看表中所有列的字符集 show full columns from tb_name;

//查看mysql所支持的字符集 show charset;

==修改字符集==

//修改全局字符集

set character_set_connection=gb2312;

set character_set_database=gb2312;

set character_set_results=gb2312;

set character_set_server=gb2312;

set character_set_system=gb2312;

set collation_connection=gb2312;

set collation_database=gb2312;

set collation_server=gb2312;

//修改表的字符集 ALTER TABLE tb_name CONVERT TO CHARACTER SET gb2312;

//修改字段字符集 alter table tb_name modify column tb_column varchar(30) character set gb2312 not null;

 

mysql 修改字符集的更多相关文章

  1. mysql修改字符集 转载

    查看编码:    show variables like 'collation_%';    show variables like 'character_set_%';    修改:    MySQ ...

  2. mysql修改字符集

    文章链接:https://www.cnblogs.com/hubavyn/p/4359315.html mysql修改表.字段.库的字符集(转) 原文链接:http://fatkun.com/2011 ...

  3. MySQL修改字符集编码

    通过修改字符集编码为utf8,彻底解决中文问题. 一. 登录MySQL查看用SHOW VARIABLES LIKE 'character%':下字符集,显示如下: +----------------- ...

  4. mysql修改字符集问题

    mysql字符集问题: 本文主要解决mysql7以下问题:mysql7在默认安装后,关于数据库,表默认保存字符格式为latin1: 可以通过命令:查询当前mysql的编码设置: show variab ...

  5. mysql 修改字符集为utf8mb4

    一般情况下,我们会设置MySQL默认的字符编码为utf8,但是近些年来,emoji表情的火爆使用,给数据库带来了意外的错误,就是emoji的字符集已经超出了utf8的编码范畴

  6. linux下mysql修改字符集

    # 编辑/etc/my.cnfvim /etc/my.cnf # 在[mysqld]标签下添加下面内容default-storage-engine = innodbinnodb_file_per_ta ...

  7. mysql修改字符集为utf8

    https://zhidao.baidu.com/question/1642165712897935220.html

  8. 修改MySQL默认字符集编码

    好记心不如烂笔头,很多东西当时没记下来,过了就忘了,下次用到时又得浪费好多时间才能解决.今天又遇到修改MySQL默认字符集编码的问题,折腾了半天解决了,赶快记录下来,以后就不用每次折腾了. 查看MyS ...

  9. mysql查看修改字符集

    1.列出MYSQL支持的所有字符集: SHOW CHARACTER SET; 2.当前MYSQL服务器字符集设置 SHOW VARIABLES LIKE 'character_set_%'; 3.当前 ...

随机推荐

  1. python基础之模块之os模块

    os模块 os模块的作用: os,语义为操作系统,所以肯定就是操作系统相关的功能了,可以处理文件和目录这些我们日常手动需要做的操作,就比如说:显示当前目录下所有文件/删除某个文件/获取文件大小…… 另 ...

  2. ERP权限设置和CRM分析 (十二)

    个人信息管理: 需求描述: 1.在权限信息表添加一条个人信息修改权限. 2.在TreeMenu表添加一条数据作为个"人信息修改"菜单. 3. 人事登记人员在登记员工信息的时候,自动 ...

  3. Word embedding

    https://en.wikipedia.org/wiki/Word_embedding 简言之,就是讲词汇或短语映射成实值特征向量.

  4. word 无法显示图片问题解决

    1 打开Word文档,点击“Office按钮”→“Word选项”. 2 在打开的“Word选项”对话框中,点击左侧的“高级”选项卡,在右侧找到“显示文档内容”栏目,取消勾选“显示图片框”.

  5. vmware上的Linux获取uuid

    在挂载asm硬盘时需要硬盘的UUID 虚拟机配置中需要增加对UUID的支持. 在配置文件vmx文件中增加如下内容 disk.locking="FALSE" disk.EnableU ...

  6. iOS学习笔记---c语言第六天

    函数  function 命名规范:工程名第一个字母大写,变量函数名小写,不要用拼音和中文, eg:lessonFunction 一.函数声明定义 函数是具有特定功能的代码块        作用:模块 ...

  7. 使用 Spring Security 保护 Web 应用的安全

    安全一直是 Web 应用开发中非常重要的一个方面.从安全的角度来说,需要考虑用户认证和授权两个方面.为 Web 应用增加安全方面的能力并非一件简单的事情,需要考虑不同的认证和授权机制.Spring S ...

  8. jQuery显示隐藏动态效果的几种写法

    <script type="text/javascript"> $(document).ready(function() {     /*$("#test1& ...

  9. 重启Tomcat的脚本

    说明:一台服务器上跑了8个Tomcat case的方式: #!/bin/bash #reboot tomcat!!! #Author:fansik echo -e "\033[1;42;31 ...

  10. Codeforces Round #129 (Div. 2)

    A. Little Elephant and Rozdil 求\(n\)个数中最小值的个数及下标. B. Little Elephant and Sorting \[\sum_{i=1}^{n-1}{ ...