MYSQL

MySQL 5.x에서 테이블과 컬럼의 문자 집합(collation)을 일괄적으로 utf8_general_ci로 변경하는 방법


MySQL 5.x에서 테이블과 컬럼의 문자 집합(collation)을 일괄적으로 utf8_general_ci로 변경하는 방법


  2023-05-08  785 View 공개

MySQL 5.x에서 테이블과 컬럼의 문자 집합(collation)을 일괄적으로 utf8_general_ci로 변경하려면 다음 단계를 참고해보자.

1. 데이터베이스 문자 집합과 정렬 방식 변경

데이터베이스의 기본 문자 집합과 정렬 방식을 변경하려면 다음 SQL 쿼리를 실행한다.

sql
ALTER DATABASE your_database_name CHARACTER SET utf8 COLLATE utf8_general_ci;

your_database_name을 실제 데이터베이스 이름으로 변경해 준다.

2. 테이블 문자 집합과 정렬 방식 변경

각 테이블의 문자 집합과 정렬 방식을 변경하려면 다음 SQL 쿼리를 실행한다.

sql
ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

your_table_name을 변경하려는 테이블 이름으로 변경해 준다. 이 작업을 데이터베이스 내 모든 테이블에 대해 수행해야 한다.

주의: 변경 작업은 데이터 손실이 발생할 수 있으므로, 작업 전에 데이터베이스 백업을 권장한다.

모든 테이블에 대해 일괄적으로 위 작업을 수행하려면 MySQL 쿼리를 사용하여 동적 쿼리를 작성할 수 있다.

sql
SELECT CONCAT('ALTER TABLE `', table_name, '` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;') AS my_query FROM information_schema.TABLES WHERE table_schema = 'your_database_name' AND table_type = 'BASE TABLE';

이 쿼리를 실행하면, 데이터베이스 내의 모든 테이블에 대해 ALTER TABLE 쿼리가 생성된다. 결과로 나온 쿼리들을 복사하여 일괄 실행하여 모든 테이블의 문자 집합과 정렬 방식을 변경할 수 있다.



🚩 MYSQL 글 모음 (총 37 건)

[macOS] zsh: command not found: mysql 해결 방법

Last Updated : 2023-09-29
#MySql

Mysql DB생성 및 유저등록

Last Updated : 2023-09-29
#Mysql

Mysql 백업 및 복구

Last Updated : 2023-09-29
#MySql

MySql - POD 예제

Last Updated : 2023-09-29
#MySql

데이터베이스에서 작은따옴표(')를 다루는 방법 : SQL 인젝션 예방과 데이터 출력

Last Updated : 2023-09-29
#Mysql

[mySQL] 특정 레코드가 몇 번째인지 알아내는 방법

Last Updated : 2023-09-10
#mySQL #row_number