latin1 문자 만 저장하지만 4GB 테이블이 있고 기본 charset은 utf8로 설정되었습니다. 테스트 머신에서 alter table 문을 사용하여 latin1로 변경했습니다.기본 문자 집합의 중요성
이1) 내가 생산에 테이블을 변경해야 : 데이터 파일에서 언급 한 차이가 없었다 동안 log_details.MYI 5 % 감소 된 인덱스 파일, 나는 몇 가지 질문이
을 log_details.MYD? 그만한 가치가 있니?2) 선택 속도가 향상됩니까?
3) 기본 charset을 latin1로 변경하면 더 긴 인덱스를 가질 수 있습니다. 어떤 다른 이점?
또한 alter table 문을 사용하여 기본 charset을 변경 한 후 varchar 열 유형이 자동으로 변경된다는 점도 언급했습니다. Item_ID
varchar (32) 문자 집합 utf8 어떻게 이것을 피합니까?
mysql> create table char_test(id int, Item_ID varchar(32)) default charset = utf8;
Query OK, 0 rows affected (0.02 sec)
mysql> insert into char_test values (1, 'abc');
Query OK, 1 row affected (0.00 sec)
mysql> show create table char_test\G
*************************** 1. row ***************************
Table: char_test
Create Table: CREATE TABLE `char_test` (
`id` int(11) default NULL,
`Item_ID` varchar(32) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
mysql> alter table char_test default charset = latin1;
Query OK, 1 row affected (0.03 sec)
Records: 1 Duplicates: 0 Warnings: 0
mysql> show create table char_test\G
*************************** 1. row ***************************
Table: char_test
Create Table: CREATE TABLE `char_test` (
`id` int(11) default NULL,
`Item_ID` varchar(32) character set utf8 default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
1 row in set (0.00 sec)