mysql 乱码问题

A.mysql设置

  1.service mysql stop

  2.sudo vim /etc/mysql/my.cnf

    在[mysqld]中添加下面两行

      character_set_server = utf8

      init_connect = 'SET NAMES utf8'
  3.service mysql start

B.建库和建表代码加上字符集编码

    create database  `db_name`   DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

    create table  `tb_name` ( id varchar(40) primary key ...... ) engine=innodb default character set=utf8;

 或者修改已经存在的库和表的字符集编码     

    ALTER DATABASE `db_name` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

    ALTER TABLE `tb_name` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

C.调用的url加上字符集编码

    url = jdbc:mysql:///`db_name`?useUnicode=true&characterEncoding=utf8

    如果用在c3p0框架的xml配置文件中,要对&转义  

                    ?useUnicode=true&characterEncoding=UTF8

原文地址:https://www.cnblogs.com/Westfalen/p/5991688.html