Đảm bảo rằng mã hóa cấu hình MySQL của bạn được xác định chính xác. Kiểm tra cài đặt của bạn và tính đúng đắn của các sửa đổi bằng các lệnh sau:
show variables like 'character%';
và show variables like 'collation%';
Thêm những dòng này vào my.cnf hoặc my.ini :
Đối với MySQL 5.1.nn và các phiên bản 5.5.29 mới hơn, bạn chỉ cần hai dòng sau:
[mysqld]
character-set-server = utf8
character-set-filesystem = utf8
Đối với MySQL 5.0.nn trở lên, hãy sử dụng các cài đặt sau:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8
character-set-server=utf8
Có lẽ sẽ thuận tiện hơn khi sử dụng MySQL-Workbench cho cài đặt của bạn. Các phiên bản 5+ rất tuyệt vời.
Trong chương trình Java của bạn, kết nối như thế này:
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&characterEncoding=UTF-8","user","passwd");