zoukankan      html  css  js  c++  java
  • Ubuntu 16.04.1下修改MySQL默认编码

    在写Android程序的时候,使用中文传递数据时,SQL查询总是得不到结果,经过调试,request.getparameter可以得到中文结果,并且输入的SQL语句经检验没有问题,而且,使用非中文的时候是没有问题的,于是我猜到了估计是数据库编码的问题,可是在sqlyog上改了半天都得不到想要的结果,搜了半天才找到是Server, Db , Client ,Conn.要全部改为utf-8,索性都改了,避免以后麻烦.印象中Windows好像没有这个问题,不知道是不是Linux下才有的.改好了之后效果立竿见影,马上见效.

    在Ubuntu 下配置 MySQL 的字符编码。安装完 MySQL 后,系统默认的字符编码是 latin1 ,输入的是中文,可是输出却是一堆乱码。现在要做的就是把 MySQL的默认字符编码设置为支持中文的编码,如 GBK、GB23112、等。

    首先进入MySQL存放配置文件的目录

    ~#cd  /etc/mysql/  

    执行ls,查看下此文件夹下的文件

    ~#ls  

    会发现有个文件是my.cnf,这个文件是mysql的配置文件

    用vim打开此文件

    ~#vi  my.cnf  

    打开my.cnf后,会发现在此文件的最后有两行(此配置文件又引用了其他的两个配置文件,我们需要修改的是mysqld.cnf ,这是mysql服务端基础配置文件 ):

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

    用vim打开/etc/mysql/mysql.conf.d/mysqld.cnf文件(如果提示不可编辑的话,可以切换账号为root)

    ~#vi /etc/mysql/mysql.conf.d/mysqld.cnf  

    打开文件后,在[mysqld] 的skip-external-locking下,添加character-set-server=utf8

    ......  
    [mysqld]  
    ......  
    skip-external-locking  
    character-set-server=utf8  
    ......  

    下面,我们还要去设置客户端的默认编码,我们现在进入mysql客户端配置文件目录

    ~#cd /etc/mysql/conf.d  
    ~#ls  

    ls后,发现有个文件mysql.cnf

    用vi打开,并在[mysql]下插入一行:default-character-set=utf8

    ~#vi mysql.cnf  
      
    [mysql]  
    default-character-set=utf8  

    最后,重启mysql 服务

    ~#service mysql restart  

    进入mysql,用s查看是否修改成功

    复制代码
    mysql>s  
    ......  
    Server     characterset: utf8  
    Db         characterset: utf8  
    Client     characterset: utf8  
    Conn.      characterset: utf8  
    ......  
  • 相关阅读:
    【491】概率论与数理统计——宋浩 笔记
    【491】安装 keras_contrib 高级网络实现模块详细方法
    【490】Stanford POS tagger 实现及相关含义
    git中submodule子模块的添加、使用和删除
    IOS开发之----NSError错误信息
    一个基于SpringBoot + IView 的单体架构管理系统
    GPS经纬度坐标WGS84到东北天坐标系ENU的转换
    ubuntu循环登录问题解决
    固件错误Possible missing firmware解决办法
    crc校验
  • 原文地址:https://www.cnblogs.com/imqsl/p/6728940.html
Copyright © 2011-2022 走看看