精华内容
下载资源
问答
  • Debian 修改MySql5.7字符集编码为UTF8,解决中文乱码问题

    说明

    解决Linux MySql中文乱码问题

    登录MySQL查看字符集

    mysql> show variables like 'character%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8                       |
    | character_set_connection | utf8                       |
    | character_set_database   | latin1                     |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8                       |
    | character_set_server     | latin1                     |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.00 sec)
    

    初始状态character_set_database和character_set_server的默认字符集是latin1。

    修改my.cnf文件中的字符集键值

    my.cnf文件在etc/mysql/路径下,打开my.cnf可以看到

    !includedir /etc/mysql/conf.d/
    !includedir /etc/mysql/mysql.conf.d/

    大致意思是配置文件包含 那个目录下的配置文件,于是进到conf.d文件夹,看到mysql.cnf打开发现里面只有一个空标记[mysql],我们不修改这个文件,打开另外一个文件夹mysql.conf.d,看到mysqld.cnf,打开这个文件,把character-set-server=utf8放在[mysqld]最后

    [mysqld]
    pid-file    = /var/run/mysqld/mysqld.pid
    socket      = /var/run/mysqld/mysqld.sock
    datadir     = /var/lib/mysql
    log-error   = /var/log/mysql/error.log
    character-set-server=utf8
    
    # By default we only accept connections from localhost
    bind-address    = 127.0.0.1
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0

    重启mysql服务

    修改完成后,service mysql restart重启mysql服务就生效。网上说[mysqld]字段与[mysql]字段是有区别的,有兴趣可以查查。

    再查看字符集

    使用SHOW VARIABLES LIKE ‘character%’;查看,编码修改成功。

    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/ |
    +--------------------------+----------------------------+
    8 rows in set (0.01 sec)
    
    展开全文
  • Windows环境下:在某些时候,我们续要修改mysql默认数据库的编码,以保证某些迁移的程序可以正常...Linux环境下:安装后/etc/init.d/mysql start (stop) 启动和停止服务器/etc/mysql/ 主要配置文件所在位置 ...

    Windows环境下:

    在某些时候,我们续要修改mysql默认数据库的编码,以保证某些迁移的程序可以正常显示,编辑my.cnf文件进行编码修改,windows可以直接用Mysql Server Instance Config Wizard 进行设置 。

    Linux环境下:

    安装后

    /etc/init.d/mysql start (stop) 为启动和停止服务器

    /etc/mysql/ 主要配置文件所在位置 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默认数据库的编码,以保证某些迁移的程序可以正常显示,编辑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。

    展开全文
  • Mysql修改编码为utf8

    2016-06-30 13:50:34
    这时就需要我们修改mysql的默认编码,在Linux环境下,mysql的配置文件是放在/etc/mysql/my.cnf文件中的。要修改编码方式,需要做以下修改: 1.打开配置文件:vi /etc/mysql/my.cnf 2.在[client

    默认情况下,mysql的编码格式为latin1,在这种情况下插入中文的时候,会出现UnSupportEncodingException异常。这时就需要我们修改mysql的默认编码,在Linux环境下,mysql的配置文件是放在/etc/mysql/my.cnf文件中的。要修改编码方式,需要做以下修改:

    1.打开配置文件:vi /etc/mysql/my.cnf

    2.在[client]下添加: default-character-set=utf8

    3.在[mysqld]下添加:character-set-server=utf8

    4.在[mysql]下追加default-character-set=utf8

    5.保存退出: :wq

    这样就完成了配置文件的修改,重启mysql服务(sudo restart mysql),然后用status(或者show variables like '%character%' )命令查看mysql的配置信息,可以发现编码方式已经修改为utf8了。


    展开全文
  • Linux下Mysql编码修改为UTF-8

    千次阅读 2014-12-13 16:24:04
    以CentOS6.3示例,查看当前系统环境变量: [root@cloudmaster ~]# mysql -uroot -p mysql> show variables like '%character%'; +--------------------------+----------------------------+ | ...

    以CentOS6.3示例,查看当前系统环境变量:

    [root@cloudmaster ~]# mysql -uroot -p

    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/ |
    +--------------------------+----------------------------+
    8 rows in set (0.00 sec)

    mysql> quit;

    Bye

     

    修改方法:

    1.查找my-large.cnf文件

    [root@cloudmaster ~]# find / -name "my-large.cnf"
    /usr/share/mysql/my-large.cnf
    /usr/share/doc/mysql-server-5.1.66/my-large.cnf

     

    2.拷贝修改my.cnf(即my-large.cnf)

    [root@cloudmaster ~]# cp /usr/share/doc/mysql-server-5.1.66/my-large.cnf /etc/my.cnf

    [root@cloudmaster ~]# vi /etc/my.cnf

     

    在[client]下增加一行:default-character-set=utf8

    在[mysqld]下增加一行:default-character-set=utf8

     

    如果让mysql数据库为UTF-8运行,使连接mysql数据库时使用UTF-8编码则:

    在[mysqld]下增加一行:init_connect='SET NAMES utf8'

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    ……………………
    # The following options will be passed to all MySQL clients
    [client]
    #password       = your_password
    port            = 3306
    socket          = /var/lib/mysql/mysql.sock
    default-character-set=utf8
              
    # Here follows entries for some specific programs
              
    # The MySQL server
    [mysqld]
    port            = 3306
    socket          = /var/lib/mysql/mysql.sock
    skip-locking
    key_buffer_size = 256M
    max_allowed_packet = 1M
    table_open_cache = 256
    sort_buffer_size = 1M
    read_buffer_size = 1M
    read_rnd_buffer_size = 4M
    myisam_sort_buffer_size = 64M
    thread_cache_size = 8
    query_cache_size= 16M
    # Try number of CPU's*2 for thread_concurrency
    thread_concurrency = 8
    default-character-set=utf8
    init_connect='SET NAMES utf8'
              
    # Don't listen on a TCP/IP port at all. This can be a security enhancement,
    ……………………

    [root@cloudmaster ~]# service mysqld restart3.重启Mysql服务

     

    4.查看系统环境变量

    [root@cloudmaster ~]# mysql -uroot -p

    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/ |
    +--------------------------+----------------------------+
    8 rows in set (0.02 sec)

    mysql> quit;

    Bye

     

    5.数据库创建注意事项

       做过如上操作,如果直接数据库再创建表,然后存入中文,取出来的会是问号。

       解决的办法是:创建数据库的时候指明默认字符集为utf8,如: 

    mysql> create database dbname default character set utf8;


    其他:

    允许MYSQL数据库远程连接:

    [root@cloudmaster ~]# mysql -uroot -ppassword

    mysql>show databases;       //查看当前数据库;

    mysql>use mysql;            //进入mysql数据库;

    mysql>show tables;          //查看数据库表;

    mysql>GRANT ALL PRIVILEGES ON *.* TO myuser@'IP' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

    授权mysql数据库可从某个IP连接,IP字段可改为%,表示任何IP。

    mysql> FLUSH PRIVILEGES;         //使配置生效;

    mysql> quit;                            //退出数据库;

    展开全文
  • 文章目录Linux字符编码默认为UTF-8,如出现乱码可设置为GBK编码转换 iconv Linux字符编码默认为UTF-8,如出现乱码可设置为GBK 修改配置文件 **/etc/locale.conf**—>全局 ~/.bashrc -->修改个人 中文...
  • Linux修改环境编码

    千次阅读 2019-01-24 11:40:24
    以下方在centos 6.7上验证可以 ...修改系统编码 vi /etc/sysconfig/i18n LANG="zh_CN.UTF-8" SUPPORTED="zh_CN:zh:en_US.UTF-8:en_US:en:zh_CN.GB18030" 将中文添加到locale localedef...
  • 修改mysql字符编码成为UTF8

    千次阅读 2010-08-30 20:33:00
    Windows环境下: 在某些时候,我们续要修改mysql默认数据库的编码,以保证某些迁移的程序可以正常显示,编辑my.cnf文件进行编码修改,... Linux环境下: 安装后 /etc/init.d/mysql start (stop) 启动和停止服务器
  • 小弟这里记录了MySQL的默认编码修改,这里将其默认编码都统一修改为utf8,希望本文对大家有所帮助,谢谢!环境Linux版本: centeros 6.6(下面演示),Ubuntu 12.04(参见文章末尾红色标注字体)MySQL版本: 5.1.73...
  • Linux环境mysql5.7设置编码

    千次阅读 2018-06-01 09:56:44
    Linux环境mysql5.7设置编码 修改/etc/my.cnf,找到mysqld character-set-server=utf8 init_connect='SET NAMES utf8' 重启MySQL ##停止 service mysqld stop ##启动 service mysqld start 进入MySQL...
  • Linux环境mysql5.7设置编码 修改/etc/my.cnf character-set-server=utf8 init_connect='SET NAMES utf8' ##停止 service mysqld stop ##启动 service mysqld start 查看编码 show variables like '...
  • mysql数据库的默认编码并不是utf-8。 安装mysql后,启动服务并登陆,使用show variables命令可查看mysql数据库的默认编码: ...以下是命令行修改为utf-8编码的过程,以支持中文。 (1)关闭mysql服务
  • Linux修改系统编码方法总结

    千次阅读 2019-02-25 15:09:09
    因为系统编码为en_US.UTF-8,应改为支持中文的编码(即zh_CN.UTF-8) 检查系统编码 英文环境如下: [root@localhost ~]# locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_...
  • Linux修改Mysql默认编码

    千次阅读 2015-01-24 18:13:49
    小弟这里记录了MySQL的默认编码修改,这里将其默认编码都统一修改为utf8,希望本文对大家有所帮助,谢谢! 环境Linux版本: centeros 6.6(下面演示),Ubuntu 12.04(参见文章末尾红色标注字体) MySQL版本:...
  • MySQL的默认编码修改,这里将其默认编码都统一修改为utf8,希望本文对大家有所帮助,谢谢! 环境Linux版本: centeros 6.6(下面演示),Ubuntu 12.04(参见文章末尾红色标注字体) MySQL版本:...
  • 目录:配置MySQL,包括path和my.cnf新建库保证为utf8、已有的库修改为utf8以及查看编码的方法避免导入 数据库 中文乱码问题解决网页中乱码问题首先配置好MySQL.1 先配置环境变量path首先cd到用户目录,然后ls -a...
  • Linux-oracle环境编码设置步骤

    千次阅读 2016-04-28 14:46:35
    在做项目的过程中,经常会出现因为...首先,思路是将服务器和客户端的编码格式统一 JAPANESE_JAPAN.AL32UTF8 格式。 1.修改服务器端编码格式  在linux服务器的根目录下有一个.bash_profile的文件,在该文件中追
  •  locale 设置语言环境的命名规则 Language_area.charset,例如 en_US.utf8 表示语言英语,地区美国,字符集 UTF-8。  查看当前字符映射文件 $ locale charmapUTF-8  查看可用公共语言环境 ...
  • mysql修改字符集utf8mb4引发的惨案

    千次阅读 2020-06-08 11:22:32
    惨案原因:数据库表需要支持表情很符号,表情符号一般是4个字符,utf8最多支持3个字符,如果插入表情符号4个字符的字段就会报错,因此我们修改了此表的字符集为utf8mb4,在这说明一下utf8mb4是utf8的超集。...
  • 小弟这里记录了MySQL的默认编码修改,这里将其默认编码都统一修改为utf8,希望本文对大家有所帮助,谢谢! 环境Linux版本: centeros 6.6(下面演示),Ubuntu 12.04(参见文章末尾红色标注字体) MySQL...
  • linux——编码格式

    千次阅读 2018-01-18 13:46:48
    问题:本地测试环境的富文本数据(blob类型)在linux环境下出现乱码,#locale //查看linux编码编辑/etc/sysconfig/i18n这个文件找到LANG="en_US.UTF-8"(默认是这个)修改为LANG="zh_CN.GBK"如果没有i18n这个文件,...
  • 查询编码,编码为AMERICAN_AMERICA.AL32UTF8,我要的是AMERICAN_AMERICA.ZHS16GBK编码。2,关闭数据库:立即关闭2,修改预言的实例字符集:SQL> STARTUP MOUNT; SQL> ALTER SY...
  • 本文设置为utf8mb4,大家修改为自己想要的即可。大多数会推荐修改为utf8,utf8mb4和utf8的区别可自行搜索决定 修改配置 1.打开wamp64/bin/mysql/mysql5.7.21/my.ini(Windows系统中为my.ini,Linux系统下为etc/my....
  • Ubuntu修改编码格式中文zh_CN.UTF-8环境说明操作步骤具体代码之后又在linux上跑了jar 包,本地测试后可以接收到中文无乱码 环境说明 xshell6远程连接阿里云服务器 root@iZ2zea8u1l5s93xd1j5jfxZ:/# cat /etc/issue...
  • Linux环境下如果使用的UTF-8编码,可以不用修改,因为Linux默认为UTF-8 war包部署在Tomcat 修改jvm编码 Linux环境 在catalina.sh配置 JAVA_OPTS=$JAVA_OPTS -Dfile.encoding=utf-8 由于Windows环境下默认的编码格式...
  • 问题:最近在部署项目的时候出现数据乱码的情况,经过一番查看项目都是用的UTF-8编码格式,...解决办法:Linux环境下如果使用的UTF-8编码,可以不用修改,因为Linux默认为UTF-8war包部署在Tomcat修改jvm编码Linux环...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 137
精华内容 54
关键字:

修改linux环境编码为utf8

linux 订阅