Linux Mysql 乱码解决

来源:互联网 发布:java final修饰的类 编辑:程序博客网 时间:2024/06/03 21:38

+ 问题:在VPS Linux上面安装了java web环境,启动tomcat后从数据库中查询出来的中文全部乱码,考虑到是否是Mysql编码问题导致

+ 查看mysql编码方式
执行
    #>mysql -u root -p 
提示输入密码,输入密码,进入mysql的命令行模式
    mysql>show variables like 'character%'

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latinl                       |
| character_set_connection | latinl                       |
| character_set_database   | latinl                       |
| character_set_filesystem | binary                     |
| character_set_results    | latinl                       |
| character_set_server     | latinl                       |
| character_set_system     | latinl                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

其中:
  character_set_client是客户端编码方式
  character_set_connection是连接编码方式
  character_set_databas是数据库编码方式
  character_set_results是结果集编码方式
  character_set_server 是服务器编码方式
发现数据库编码是latinl

+ 修改mysql编码方式
   执行
    #>/etc/init.d/mysql stop
   关闭mysql服务
   打开/etc/mysql/my.cnf文件
   
   找到客户端配置[client]在下面添加
   default-character-set=utf8 
   找到[mysqld]添加
   default-character-set=utf8
   init_connect='SET NAMES utf8'(设置连接Mysql数据库时使用utf8编码,以让myql数据库以utf8运行)
   执行
   #>/etc/init.d/mysql start
   启动mysql服务

--------------------------------------------------
注:需重新创建数据库和表,最好重启系统
    

原创粉丝点击