MySQL内容乱码及编码问题处理

来源:互联网 发布:贩卖淘宝店铺犯法吗? 编辑:程序博客网 时间:2024/05/16 11:09

有的时候查看mysql导入的数据后,发现是乱码,这是因为编码问题,包括数据库编码、表编码和需要到的文件编码,建议都设置为utf8,统一后就正常了,我将相关的命令整理下共享给需要的朋友。

查看mysql实例编码

show variables like 'character%';

设置mysql实例编码
set character_set_database=utf8;

[root@server1 ~]# cat /etc/my.cnf
[client]
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
symbolic-links=0
default-character-set=utf8
init_connect='SET NAMES utf8'

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysql]
no-auto-rehash
default-character-set=utf8


修改data库
alter database data character set utf8;

修改表编码
ALTER TABLE data CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

导数据
LOAD DATA local INFILE '/root/data .txt' INTO TABLE data  FIELDS TERMINATED BY '\t';

建立新库 指定编码
CREATE DATABASE data DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

建立新表 指定编码
CREATE TABLE `table_test` (
  `c1` varchar(40) DEFAULT NULL,
  `c2` varchar(40) DEFAULT NULL
)default charset=utf8;

查看数据库编码
show create database data;

查看表编码
show create table table_test;
0 0
原创粉丝点击