`
verytiny
  • 浏览: 368068 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

mysql字符乱码解决办法

阅读更多

etc/init.d/mysql start (stop) 为启动和停止服务器
/etc/mysql/ (或者/etc/my.cnf)主要配置文件所在位置 my.cnf
/var/lib/mysql/ 放置的是数据库表文件夹,这里的mysql相当于windows下mysql的date文件夹

启动mysql后,以root登录mysql
isher@isher-ubuntu:~$ mysql -u 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/ |
+--------------------------+----------------------------+

三个MySQL的系统变量是:

1. character_set_client,终端字符集,告诉Server客户端提交的SQL语句的编码格式

2. character_set_connection,连接字符集,是服务器翻译SQL语句时用到的编码格式

3. character_set_results,返回的结果集的字符集,是服务器返回结果集之前把结果集转换成的编码格式

在某些时候,我们续要修改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%';
+--------------------------+----------------------------+
| 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

一般安装系统默认是INNODB
default-storage-engine=INNODB

  你可以使用很多方法指定一个要使用的存储引擎。最简单的方法是,如果你喜欢一种能满足你的大多数数据库需求的存储引擎,你可以在MySQL设置文件中设置一个默认的引擎类型(使用storage_engine 选项)或者在启动数据库服务器时在命令行后面加上--default-storage-engine或--default-table-type选项 。

  更灵活的方式是在随MySQL服务器发布同时提供的MySQL客户端时指定使用的存储引擎。最直接的方式是在创建表时指定存储引擎的类型,向下面这样:

  CREATE TABLE mytable (id int, title char(20)) ENGINE = INNODB

分享到:
评论
2 楼 verytiny 2007-11-17  
010141EAEA7BFF0040E99C0C10A8
1 楼 verytiny 2007-11-16  
页面乱码

在 tomcat/conf/server.xml 中加

<Connector port="80" protocol="HTTP/1.1"
            connectionTimeout="20000"
            redirectPort="8443" URIEncoding="utf-8"/>

URIEncoding="utf-8"

相关推荐

    PHP+MySql中文乱码解决办法

    ### PHP+MySQL中文乱码解决办法详解 #### 一、乱码产生的原因 在使用PHP+MySQL进行开发的过程中,中文乱码问题是常见的一个问题。乱码现象通常发生在从数据库查询中文数据时,显示出来的中文变成了不可识别的符号...

    mac MySQL中文乱码解决办法

    本文将详细介绍如何解决macOS系统下MySQL中文乱码的问题,通过修改配置文件my.cnf来调整MySQL的字符集,确保中文能够正常显示。 ### 解决方案详解 #### 步骤一:定位my.cnf配置文件 首先,需要找到或创建MySQL的...

    mysql乱码问题解决办法

    ### MySQL乱码问题解决办法 在使用MySQL的过程中,经常会出现字符显示乱码的问题,尤其是在处理中文数据时更为常见。本文将详细介绍如何通过多种途径解决MySQL中的乱码问题,包括更改MySQL服务器的字符集设置、调整...

    MYSQL字符集乱码的解决

    ### MySQL字符集乱码问题及解决方案 #### 一、问题背景 在使用MySQL数据库时,很多用户会遇到中文字符显示为乱码的情况。这通常是因为MySQL数据库中的字符集设置不一致导致的。例如,在命令行下操作MySQL时,可能会...

    查看mysql字符集MySQL 乱码的根源是的 MySQL 字符

    查看mysql字符集MySQL 乱码的根源是的 MySQL 字符

    java插入mysql中文乱码解决

    ### Java插入MySQL中文乱码解决 #### 一、问题背景 在使用Java应用程序与MySQL数据库交互的过程中,常常会遇到一个令人头疼的问题:中文字符在存储到数据库时出现乱码现象。这种现象通常发生在使用JDBC(Java ...

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

    ### 设定 MySQL 字符集解决终端乱码 在处理数据库操作时,经常遇到的一个问题是字符集编码不一致导致的数据乱码问题。对于 MySQL 数据库来说,合理设置字符集可以有效避免此类问题的发生。本文将详细介绍如何通过...

    jsp+mysql中文乱码解决方案集合

    ### jsp+mysql中文乱码解决方案集合 在使用JSP结合MySQL进行Web应用开发时,中文乱码问题一直是困扰开发者的一大难题。本文将详细介绍如何在MySQL数据库层面解决中文乱码问题,并提供一系列实用的方法和技巧。 ###...

    MySQL乱码解决方案数据库乱码

    #### 三、MySQL字符集详解 1. **MySQL 4.1之前的版本**: - 在MySQL 4.0及之前版本中,主要使用的是`latin1`字符集,这是一个单字节编码方案,仅支持西欧语言。 - 这种字符集对于中文等多字节编码的语言支持不佳...

    PHP+MySql中文乱码解决方案

    解决乱码问题的关键在于确保整个流程中的字符编码保持一致。 #### 二、乱码产生的原因 在PHP+MySQL的开发环境中,乱码主要由以下几个方面的原因造成: 1. **数据库默认编码与网页编码不一致**:MySQL数据库的默认...

    Mysql 中文乱码 最简单的解决办法

    总结,解决MySQL中文乱码问题的关键在于确保服务器、数据库、表及字段的字符集设置一致,并与数据源保持匹配。在开发和维护过程中,关注字符集的统一性,可以避免很多不必要的编码问题。通过上述步骤,你应该能够...

    MySQL显示乱码解决方案

    ### MySQL显示乱码解决方案 #### 问题背景与现象 在MySQL数据库中,如果出现中文乱码的情况,将严重影响数据的准确性和可用性。本篇文章基于MySQL 5.5版本介绍如何解决显示乱码的问题,虽然文章针对的是特定版本,...

    mysql乱码问题解决

    解决MySQL乱码问题的关键在于确保各个层面的字符集保持一致。在实际操作中,还需要根据具体情况选择最合适的解决方案。例如,对于现有大量数据的数据库,修改字符集可能会带来数据转换的风险,因此需要谨慎操作。...

    解决 docker mysql 中文乱码问题

    docker mysql 字符集设置 使用 docker 启动 mysql 容器可能会出现中文乱码的情况,这里记录如何制作支持中文的 mysql 镜像 docker版本:18.06 mysql 版本:5.7 1. 创建 my.cnf 文件 [client] default-character-set=...

    解决连接mysql中文显示乱码

    解决MySQL连接时中文显示乱码的问题,关键在于确保数据库、连接参数以及应用程序内部各环节的字符集设置保持一致,并采用适合中文字符的编码方式,如UTF-8。通过上述步骤,可以有效避免中文乱码现象,保证数据的正确...

    mysql乱码解决方法

    在PHPmyAdmin的配置中,确保MySQL字符集设置为`UTF-8 Unicode (utf8)`,连接校对设置为`utf8_unicode_ci`。 7. **数据库创建**: 新建数据库时,确保在“整理”(Collation)栏选择`utf8_unicode_ci`,以确保所有新...

    MySQL中文乱码问题解决方案

    ### MySQL中文乱码问题解决方案 在使用MySQL的过程中,中文乱码问题是常见的问题之一,尤其是在数据库初始设置不当时,更容易出现此类问题。本文将详细介绍如何彻底解决MySQL中的中文乱码问题。 #### 一、理解中文...

    jsp+servlet+mysql乱码解决的这天

    该方案的解决方法可以解决jsp+servlet+mysql开发中常见的中文乱码问题,确保中文字符的正确显示。 jsp+servlet+mysql乱码解决方案的实现步骤如下: 首先,在jsp页面中设置编码格式为utf-8,以确保页面中的中文字符...

Global site tag (gtag.js) - Google Analytics