Ubuntu下mysql解决中文乱码
2015-11-27 18:57
543 查看
Ubuntu下mysql解决中文乱码
一、修改配置文件 /etc/mysql/my.cnf
sudo vi /etc/mysql/my.cnf在[client] [mysqld_safe] [mysqld]下分别加入
[client]
default-character-set=utf8
[mysqld_safe]
default-character-set=utf8
[mysqld]
character-set-server=utf8
init_connect='SET NAMES utf8'
二、修改数据库、表、字段的字符集为utf-8
查看当前mysql的字符集设置:使用SQL语句SHOW VARIABLES LIKE'character_set_%'; 。
修改数据库字符集:
ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...];
把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name [COLLATE ...]
如:ALTER TABLE logtest CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
只是修改表的默认字符集:
ALTER TABLE tbl_name DEFAULT CHARACTER SET character_name [COLLATE...];
如:ALTER TABLE logtest DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
修改字段的字符集:
ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name [COLLATE ...];
如:ALTER TABLE logtest CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci;
!!!注意:如果字段的字符集和表、数据库的字符集不一致,远程连接时容易出现错误:“1267
Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) ”
三、重启mysql服务
sudo service mysql restart或者:sudo /etc/init.d/msql restart
相关文章推荐
- 二进制方式快速安装MySQL数据库
- mysql创建定时器(event),查看定时器,打开定时器,设置定时器时间
- mysql修改数据库、表、字段、库的字符集
- Mysql查询语句性能优化
- Ubuntu下允许mysql远程连接
- mysql分页丢数据的分析
- 解决 c3p0 和 MySQL 集成情况下,连接长时间闲置后重新使用时报错的问题
- MYSQL数据库远程登录及权限设置
- 简单讲解MySQL的数据库复制方法
- mysql 授权 user@'%' 为什么登陆的时候localhost 不行呢???
- ubuntu下终端操作MySql数据库的命令
- mysql的几种隐式转化
- MySQL对数据库数据进行复制的基本过程详解
- mysql 怎样清空一个数据库中的所有表
- mysql无法启动
- 初始化数据库后,无法启动mysql案例
- mysql统计某一个数据库中有几张表
- MySQL优化之BTree索引使用规则
- MySQL的btree索引和hash索引的区别
- 远程连接mysql被拒绝问题