`

mysql 字符集 utf8 UTF-8

阅读更多
是用mysql的时候,字符编码是个大问题,我一直使用utf8的编码,基本上没什么大问题,就是每次启动mysql的时候都需要设置一下,mysql,时间长了,也怪麻烦的,在网上搜了一下,发现下面的方法能完全解决这个问题,当然如果是自己编译的mysql,在编译的时候最好就指定编码集,然后建库的时候设定默认的编码就好了,这样就不用每次都set names utf8;了:下面是设置方法:
/etc/mysql/ 主要配置文件所在位置 my.cnf
/var/lib/mysql/ 放置的是数据库表文件夹,这里的mysql相当于windows下mysql的date文件夹
启动mysql后,以root登录mysql
>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/ |
+--------------------------+----------------------------+
在某些时候,我们续要修改mysql默认数据库的编码,以保证某些迁移的程序可以正常显示,编辑my.cnf文件进行编码修改,windows可以直接用Mysql Server Instance Config Wizard 进行设置
在linux下修改3个my.cnf的1个/etc/mysql/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_set_%';
+--------------------------+----------------------------+
| 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/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
对于/etc/my.cnf文件,需要从mysql/support-files的文件夹cp my-large.cnf一份到/etc/my.cnf
mysql> show variables like 'collation_%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)

============================================

发生如 unknow command "\n" "\'" 或 "\""等,这发生的原因,是编码导致的问题,如果我们的数据库设定为GBK对于utf-8或是二进制文件无法识别,因此在导入时,要设定一下默认数据格式utf8
如mysql -uroot -p  testDb <  test.sql --default-character-set=utf8
分享到:
评论

相关推荐

    linux下设置mysql字符集为UTF-8以及mysql重启.docx

    总结一下,设置Linux下MySQL字符集为UTF-8主要包含以下几个步骤: 1. 找到`my.cnf`配置文件。 2. 在`[mysqld]`段落下添加UTF-8相关配置。 3. 保存并关闭配置文件。 4. 重启MySQL服务,使配置生效。 通过这些操作,...

    全面了解mysql中utf8和utf8mb4的区别

    早期的UTF-8编码格式理论上可以使用1到6个字节,但后来的规范限制在1到4字节,以涵盖所有Unicode平面。MySQL的UTF8仅支持3字节是因为其设计时的Unicode环境,而UTF8MB4的出现则是为了弥补这一不足。为保持向后兼容并...

    zh-cn-utf8

    3. **数据库连接**:在连接MySQL等数据库时,应设置字符集为`utf8mb4`,这是MySQL对UTF-8的扩展,支持四字节的Unicode字符,包括表情符号。 4. **HTML meta标签**:在HTML文档的`&lt;head&gt;`部分添加`&lt;meta charset="...

    Unity3D教程:修改mysql字符编码成为UTF82

    首先,我们遇到的问题是即使设置表的默认字符集为UTF8,并且在发送查询时使用UTF-8编码,仍然会出现乱码的情况。这是因为在数据库连接层面上,字符集设置可能没有正确地同步。为了解决这个问题,我们需要在发送查询...

    UTF-8中文字符表

    UTF-8是Unicode的一种变长字符编码,支持世界上几乎所有的字符集。本文将对“UTF-8中文字符表”进行详细解读,帮助读者更好地理解这一编码机制,并掌握如何在实际应用中使用这些字符。 #### 二、UTF-8简介 UTF-8是...

    mysql8.0设置字符集utf8mb4

    mysql8.0下utf8mb4字符集设置。 安装后,参照此my.ini设置,重启数据库即可。

    flowable相关数据库表mysql, 包含两种字符集utf8 和 utf8bm4

    flowable相关数据库表mysql, 包含两种字符集utf8 和 utf8bm4 springboot在集成flowable时,添加flowable依赖,配置完成数据库连接,项目第一次启动会初始化数据库flowable相应的表,默认会加载的字符集为utf8...

    mysql字符集设置

    MySQL字符集设置是数据库管理中的一个重要环节,尤其是在处理多语言数据或者有特殊字符需求的应用中。字符集决定了数据库、表以及字段如何存储和显示字符,影响到数据的正确性及兼容性。以下将详细讲解MySQL字符集的...

    设置mysql字符集

    ### MySQL字符集的基本概念 字符集(Character Set)定义了数据在存储和处理时所采用的编码标准,而校对集(Collation)则规定了字符集下的排序规则和比较方式。在MySQL中,主要涉及以下几个关键变量: - `...

    易语言另类数据库读写UTF-8

    在处理数据库时,数据的编码格式是非常重要的,UTF-8是一种广泛使用的Unicode编码,能支持多种语言字符集,包括中文。在易语言中实现另类数据库读写UTF-8,主要是为了克服原生支持的不足,提供更灵活和高效的数据...

    windows配置mysql5.7的字符集为utf8mb4 ----my.ini

    版本:mysql5.7 环境:windows 备注:配置mysql的字符集为utf8mb4 *为了解决mysql乱码参考了几个博客,只能在此鸣谢一下所有提供有价值的博客作者,此文件就上传备份一下

    mysql字符集查看以及修改

    这将显示当前 MySQL 数据库的字符集信息,包括字符集的名称、客户端字符集、连接字符集和服务器字符集。 修改 MySQL 字符集 修改 MySQL 字符集需要修改 MySQL 配置文件 my.cnf。首先,需要找到 MySQL 配置文件的...

    mysql字符集转换

    - **UTF-8 (utf8)**:一种国际化的多字节编码标准,支持几乎所有的字符集。 #### 三、MySQL字符集转换背景及意义 在实际应用中,可能会遇到需要将数据库中的字符集从一种格式转换为另一种格式的情况。例如,从`...

    mysql数据库互相转换及同步工具-MySQL_MySQL字符集互转

    本文将详细探讨“MySQL_MySQL字符集互转”这一主题,以及如何利用工具如"MSSQL2MySQLSync"进行数据库之间的转换与同步。 MySQL是一种广泛使用的开源关系型数据库管理系统,其支持多种字符集,包括UTF-8、GBK等。...

    Linux 下 设置mysql数据库为utf8编码的方法

    Linux 下设置 MySQL 数据库为 UTF-8 编码的方法 =UTF-8 编码是当前最流行的 Unicode 编码标准,而 MySQL 作为一个流行的开源关系数据库管理系统,如何将其设置为 UTF-8 编码是开发者和数据库管理员的一大挑战。本文...

    mysql基础补充4-字符集问题

    由上述命令可以看到,系统字符集是 en_US.UTF-8。 在 my.cnf 配置文件中,我们可以设置字符集的默认值。例如: ``` [client] default-character-set=utf8 [mysqld] character-set-server=utf8 collation-server=...

    精通MySQL字符集与校对集

    例如,创建一个使用UTF-8编码的表: ```sql CREATE TABLE tmp ( name VARCHAR(10) ) CHARACTER SET utf8; ``` #### MySQL校对集详解 校对集是字符集的一个子属性,用于确定字符集中的字符排序规则和比较方式...

    设定mysql字符集解决终端乱码

    - 如果表使用 UTF-8 字符集,那么插入的数据也应该是 UTF-8 编码的。 - 查询时,客户端和服务端之间的字符集设置也应该一致,以避免乱码问题。 #### 六、示例 假设我们有一个使用 GBK 字符集的客户端,并且想要向...

    MySQL字符集utf8修改为utf8mb4的方法步骤

    从`utf8`切换到`utf8mb4`是为了应对Unicode编码的扩展,因为`utf8`仅支持基本多语言平面(BMP)内的字符,而`utf8mb4`则能支持全部的Unicode字符,包括4字节的UTF-8编码。 在MySQL 5.5及更高版本中,`utf8mb4`被...

    百度编辑器ueditor(UTF-8).rar

    - UTF-8是一种广泛使用的Unicode字符编码,可以表示世界上几乎所有的字符集,包括中文字符。使用UTF-8编码,ueditor可以正确显示和处理多语言环境下的文本内容,确保不同地区的用户都能正常使用。 3. **织梦...

Global site tag (gtag.js) - Google Analytics