Theo mặc định, cơ sở dữ liệu MySQL có bộ ký tự latin1 và đối chiếu. Tuy nhiên, đôi khi bạn có thể cần lưu trữ các ký tự UTF8 trong cơ sở dữ liệu MySQL. Dưới đây là cách thay đổi bộ ký tự từ latin1 thành UTF8.
Cách chuyển đổi cơ sở dữ liệu MySQL từ latin1 sang UTF8
Dưới đây là các bước để thay đổi bộ ký tự từ latin1 thành UTF cho cơ sở dữ liệu MySQL.
1. Xác định bộ ký tự hiện tại
Đăng nhập vào công cụ dòng lệnh MySQL. Bạn sẽ thấy một lời nhắc mật khẩu. Nhập mật khẩu của bạn để đăng nhập vào cơ sở dữ liệu MySQL.
$ sudo mysql -uroot - p
Chạy lệnh sau để xác định bộ ký tự hiện tại của cơ sở dữ liệu của bạn. Thay thế database_name bên dưới bằng tên cơ sở dữ liệu của bạn
mysql> CHỌN default_character_set_name TỪ information_schema.SCHEMATA S WHERE schema_name =" database_name "; + ---------------------------- + | default_character_set_name | + -------------- -------------- + | latin1 | + ---------------------------- +Nếu bạn muốn xác định bộ ký tự cho một bảng cơ sở dữ liệu cụ thể, hãy chạy lệnh sau. Thay thế database_name và table_name tương ứng với cơ sở dữ liệu và tên bảng của bạn.
mysql> CHỌN CCSA.character_set_name TỪ information_schema.TABLES
T, information_schema.COLLATION_CHARACTER_SET_APPLICABILITY
CCSA WHERE CCSA.collation_name =T.table_collation AND T.table_schema =" database_name "VÀ T.table_name =" tên_bảng ";Phần thưởng đọc:Cách tăng kết nối tối đa trong MySQL
2. Thay đổi Bộ ký tự từ latin1 thành UTF8
Chạy lệnh sau để thay đổi bộ ký tự của cơ sở dữ liệu MySQL từ latin1 thành UTF8. Thay thế database_name bằng tên cơ sở dữ liệu của bạn
Đối với MySQL> 5.5
mysql> ALTER DATABASE database_name BỘ NHÂN VẬT utf8mb4 COLLATE utf8mb4_unicode_ci;Đối với MySQL <=5.5
mysql>ALTER DATABASE database_name CHARACTER
SET utf8 COLLATE utf8_unicode_ci;
Phần thưởng đọc:Cách xếp hạng qua phân vùng trong MySQL
Tương tự, đây là lệnh thay đổi bộ ký tự của bảng MySQL từ latin1 thành UTF8. Thay thế table_name bằng tên bảng cơ sở dữ liệu của bạn.
Đối với MySQL> 5.5
mysql> ALTER TABLE table_name CHUYỂN ĐỔI THÀNH BỘ NHÂN VẬT utf8mb4 COLLATE utf8mb4_unicode_ci;Đối với MySQL <=5.5
mysql>ALTER TABLE table_name CONVERT TO CHARACTER
SET utf8 COLLATE utf8_unicode_ci;
Hy vọng rằng, hướng dẫn trên sẽ giúp bạn thay đổi bộ ký tự cơ sở dữ liệu thành utf8mb4 (UTF-8).