๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅDEV/์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ! TIP

[Tip] MySQL ํ•œ๊ธ€ ์ •๋ณด ์ž…๋ ฅ

by bdd 2022. 7. 20.

MySQL 5.7 ๋ฒ„์ „์—์„œ INSERT๋กœ ํ…Œ์ด๋ธ”์— ํ•œ๊ธ€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•  ๋•Œ ์•„๋ž˜์™€ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ฌธ์ž์—ด ์ธ์ฝ”๋”ฉ ์„ค์ • ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฅ˜์ธ๋ฐ์š”, ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ERROR 1366 (HY000): Incorrect string value: '\xEC\x9D\xB4\xEB\xAF\xB8...' for column 'name' at row 1

 

 

 

 

 

ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ์š”, mysql.cnf๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ „์ฒด์˜ ์„ค์ •์„ ๋ฐ”๊ฟ”์ฃผ๊ฑฐ๋‚˜ ํ•œ ํ…Œ์ด๋ธ”์˜ ์ธ์ฝ”๋”ฉ ์ •๋ณด๋ฅผ ์ˆ˜์ •ํ•ด์ฃผ๋ฐฉ์‹์ด ์žˆ์Šต๋‹ˆ๋‹ค. **๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ „์ฒด์˜ ์„ค์ •์„ ๋ฐ”๊พธ๊ฒŒ ๋˜๋ฉด ์žฌ์‹คํ–‰ ์‹œ์ผœ์ฃผ๊ฑฐ๋‚˜ flush๋กœ ์ฆ‰์‹œ ๋ฐ˜์˜์„ ํ•ด์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

# ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์ „์ฒด ์ธ์ฝ”๋”ฉ ์„ค์ •์„ ๋ฐ”๊พธ๋Š” ๋ฐฉ๋ฒ•
$ sudo vi /usr/local/mysql/my.cnf

[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake


[client]
default-character-set = utf8mb4


[mysql]
default-character-set = utf8mb4

 

# ํ•œ ํ…Œ์ด๋ธ”์˜ ์ธ์ฝ”๋”ฉ ์„ค์ •์„ ๋ฐ”๊พธ๋Š” ๋ฐฉ๋ฒ•
ALTER TABLE (ํ…Œ์ด๋ธ”๋ช…) convert to charset utf8;

 

๋Œ“๊ธ€