新安装的mysql服务器,由于默认的是latin编码,在linux服务器下经常出现乱码。
mysql的编码设计的比较复杂,涉及到服务器,客户端,数据库,表及表字段编码。为了支持中文,需要将所有的编码设置为UTF8。
一. 配置
vi /etc/my.cnf
[client] default-character-set = utf8 #客户端设置UTF8 [mysqld] lower_case_table_names = 1 #表名忽略大小写 character-set-server = utf8 #服务端设置UTF8 collation-server = utf8_general_ci #utf8且大小写不敏感的校正规则
查看表编码:
mysql> show create table green_app_info; +----------------+------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table --------------+ | green_app_info | CREATE TABLE `green_app_info` ( `id` int(11) NOT NULL AUTO_INCREMENT, `apptype` int(11) NOT NULL, `appid` int(11) NOT NULL, `name` char(128) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1064 DEFAULT CHARSET=utf8 | +----------------+------------------------------------------------------------------------------------------------------------------+ 1 row in set
设置数据库编码:
alter database greennet character set 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/local/mysql-5.5.39-linux2.6-x86_64/share/charsets/ | +--------------------------+---------------------------------------------------------+ 8 rows in set
全部设置成UTF8,然后 /etc/init.d/mysqld restart 重启,插入中文正常。
二. PDM设置表编码
1. 设置表选项
Database --> Edit Current DBMS
General --> MySQL 5.0 --> Script --> Table --> Options
添加如下内容,设置表ENGINE,字符编码,校对规则:
ENGINE = %s : list = BDB | HEAP | ISAM | InnoDB | MERGE | MRG_MYISAM | MYISAM, default = MYISAM DEFAULT CHARSET = %s : list = utf8 | gbk, default = utf8 COLLATE = %s : list = utf8_bin | utf8_general_ci | gbk_bin | gbk_chinese_ci, default = utf8_bin
2. 设置表字符
双击表 --> 选中UTF8编码
相关推荐
MySQL 中文乱码问题解决方法 MySQL 是一个功能强大且广泛应用的关系型数据库管理系统,但是,在使用 MySQL 时,用户经常会遇到中文乱码问题。今天,我们将讨论在 MySQL 中的中文乱码问题,并提供解决方法。 MySQL...
### Java插入MySQL中文乱码解决 #### 一、问题背景 在使用Java应用程序与MySQL数据库交互的过程中,常常会遇到一个令人头疼的问题:中文字符在存储到数据库时出现乱码现象。这种现象通常发生在使用JDBC(Java ...
### jsp+mysql中文乱码解决方案集合 在使用JSP结合MySQL进行Web应用开发时,中文乱码问题一直是困扰开发者的一大难题。本文将详细介绍如何在MySQL数据库层面解决中文乱码问题,并提供一系列实用的方法和技巧。 ###...
### PHP+MySQL中文乱码解决方案 #### 一、概述 在使用PHP与MySQL进行Web开发的过程中,中文乱码问题是常见的一个问题。通常情况下,这主要是由于系统各部分(如PHP脚本、MySQL数据库、操作系统等)之间的字符编码...
### MySQL中文乱码问题解决方案 在使用MySQL的过程中,中文乱码问题是常见的问题之一,尤其是在数据库初始设置不当时,更容易出现此类问题。本文将详细介绍如何彻底解决MySQL中的中文乱码问题。 #### 一、理解中文...
总结,解决MySQL中文乱码问题的关键在于确保服务器、数据库、表及字段的字符集设置一致,并与数据源保持匹配。在开发和维护过程中,关注字符集的统一性,可以避免很多不必要的编码问题。通过上述步骤,你应该能够...
### PHP+MySQL中文乱码解决办法详解 #### 一、乱码产生的原因 在使用PHP+MySQL进行开发的过程中,中文乱码问题是常见的一个问题。乱码现象通常发生在从数据库查询中文数据时,显示出来的中文变成了不可识别的符号...
Delphi2010解决ZEOSDBO-7.1.3a控件调用mysql中文乱码 ZConnection1.Database:=_Database1; ZConnection1.Port:=_Port; ZConnection1.User:=_User; ZConnection1.Password:=_Password; ZConnection1.HostName:=_...
总的来说,解决C#操作MySQL中文乱码问题的关键在于保持从数据库配置到代码再到文件的整个过程中的编码一致性,使用UTF-8编码,并确保在每个环节都正确地指定和处理。通过以上步骤,你应该能够成功地避免中文乱码问题...
C++操作MariaDB和MySql中文乱码或无法处理中文的解决办法 在使用C++操作MariaDB和MySQL数据库时,中文乱码或无法处理中文是一个常见的问题。本文将介绍如何解决这个问题,确保C++程序正确地处理中文。 解决方法 ...
JSQ+MyBatis+MySQL 中文乱码解决方案 中文乱码是 JSQ、MyBatis 和 MySQL 集成时常见的问题,解决这个问题需要从多方面入手。本文将从 JSP、MyBatis 和 MySQL 三个方面来解决中文乱码问题。 JSP 中文乱码解决方案 ...
本文将深入探讨MySQL中文乱码问题的原因、解决方法,以及如何在创建数据库和表时避免这类问题。 首先,我们要了解字符集的概念。字符集(Character Set)是计算机系统用来表示文本的一系列符号和编码,例如ASCII、...
MySQL中的汉字乱码问题是一个常见的困扰许多开发人员和数据库管理员的问题。这主要涉及到字符编码设置不正确,导致在存储或显示汉字时出现乱码。在MySQL中,字符集是用来定义如何存储和处理字符的规则,它包括服务器...
本文将详细介绍如何解决macOS系统下MySQL中文乱码的问题,通过修改配置文件my.cnf来调整MySQL的字符集,确保中文能够正常显示。 ### 解决方案详解 #### 步骤一:定位my.cnf配置文件 首先,需要找到或创建MySQL的...
Java 中 MySQL 中文乱码问题解决方案 Java 中 MySQL 中文乱码问题是数据库开发中常见的问题之一,解决这个问题需要对数据库、JSP 和 Tomcat 进行相应的设置。下面我们将详细介绍解决该问题的方案。 数据库编码修改...
### MySQL中文乱码分析 #### 一、MySQL乱码问题概览 MySQL的乱码问题主要出现在4.1及以上版本中。在4.1之前的版本里,MySQL并未提供多语言支持,因此它只会简单地存储并原样返回用户提供的数据。这种行为确保了...
### MySQL中文乱码问题完美解决方案 #### 背景与问题描述 在处理MySQL数据库时,中文乱码问题是一个常见的技术挑战。这类问题通常源于字符集设置不一致或配置不当,尤其是在不同系统环境(如开发环境与生产环境)...
Windows下MySQL中文乱码的解决 MySQL是目前最流行的开源关系数据库管理系统之一,但是在Windows系统下使用MySQL时,中文乱码问题经常困扰着开发者们。解决这个问题的关键是配置正确的字符集。本文将详细介绍如何在...