修改mysql默认字符集的两种方法详细解析

 更新时间:2013年08月24日 10:59:05   作者:  
下面小编就为大家介绍两种修改mysql默认字符集的方法。需要的朋友可以过来参考下

(1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值
如 default-character-set = utf8
   character_set_server = utf8

修改完后,重启mysql的服务,service mysql restart
使用 mysql> SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8

复制代码 代码如下:

+--------------------------+---------------------------------+ 
| 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 | D:"mysql-5.0.37"share"charsets" | 
+--------------------------+---------------------------------+ 

(2) 还有一种修改mysql默认字符集的方法,就是使用mysql的命令
复制代码 代码如下:

mysql> SET character_set_client = utf8 ;
mysql> SET character_set_connection = utf8 ; 
mysql> SET character_set_database = utf8 ; 
mysql> SET character_set_results = utf8 ; 
mysql> SET character_set_server = utf8 ; 
mysql> SET collation_connection = utf8 ;
mysql> SET collation_database = utf8 ; 
mysql> SET collation_server = utf8 ; 

一般就算设置了表的mysql默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:
复制代码 代码如下:

SET NAMES 'utf8';

它相当于下面的三句指令:
复制代码 代码如下:

SET character_set_client = utf8;
SET character_set_results = utf8; 
SET character_set_connection = utf8; 

相关文章

  • windows10更换mysql8.0.17详细教程

    windows10更换mysql8.0.17详细教程

    这篇文章主要为大家介绍了windows10更换mysql8.0.17的详细教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • mysql判断字符串是否存在几种常见方式

    mysql判断字符串是否存在几种常见方式

    写SQL语句我们经常需要判断一个字符串中是否包含另一个字符串,下面这篇文章主要给大家介绍了关于mysql判断字符串是否存在的几种常见方式,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-05-05
  • 深入讲解MySQL Innodb索引的原理

    深入讲解MySQL Innodb索引的原理

    这篇文章主要给大家介绍了关于MySQL Innodb索引原理的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mysql具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • MySQL手动注册binlog文件造成主从异常的原因

    MySQL手动注册binlog文件造成主从异常的原因

    这篇文章主要介绍了MySQL手动注册binlog文件造成主从异常的原因,帮助大家更好的理解和使用MySQL数据库,感兴趣的朋友可以了解下
    2020-10-10
  • MySQL备份Shell脚本的实现

    MySQL备份Shell脚本的实现

    本文主要介绍了Shell脚本来自动备份MySQL数据库,脚本会备份指定数据库或所有数据库,按日期命名备份文件以防止覆盖,并自动删除N天前的旧备份以节省空间,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • mysql 提示INNODB错误的解决方法

    mysql 提示INNODB错误的解决方法

    解决The‘InnoDB’feature is disabled; you need MySQL built with ‘InnoDB’ to have it
    2011-09-09
  • Mysql升级到5.7后遇到的group by查询问题解决

    Mysql升级到5.7后遇到的group by查询问题解决

    这篇文章主要给大家介绍了关于Mysql升级到5.7后遇到的group by查询问题的解决方法,文中通过示例代码介绍的非常详细,对同样遇到这个问题的朋友们具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-09-09
  • 简述MySQL 正则表达式

    简述MySQL 正则表达式

    大家都知道MySQL可以通过 LIKE ...% 来进行模糊匹配,MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。对mysql正则表达式知识感兴趣的朋友一起看看吧
    2016-11-11
  • 解决MySQL报错Error 3948 (42000): Loading local data is disabled问题

    解决MySQL报错Error 3948 (42000): Loading loc

    在执行MySQL项目过程中意外出现的报错,之前也没有遇到过,报错信息如下,Error 3948 (42000): Loading local data is disabled; this must be enabled on both the client an,本文小编就给大家介绍一下解决报错的方法,需要的朋友可以参考下
    2023-09-09
  • mysql数据被误删的恢复方案以及预防措施

    mysql数据被误删的恢复方案以及预防措施

    这篇文章主要介绍了几种常见的MySQL数据恢复方法,包括使用备份、二进制日志、InnoDB表空间恢复以及第三方工具,每种方法都有其优缺点,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-02-02

最新评论