Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

PDO ::__ construct ():Máy chủ đã gửi bộ ký tự (255) không xác định cho máy khách. Vui lòng báo cáo cho các nhà phát triển

MySQL 8 đã thay đổi bộ ký tự mặc định thành utf8mb4. Nhưng một số khách hàng không biết bộ ký tự này. Do đó, khi máy chủ báo cáo bộ ký tự mặc định của nó cho máy khách và máy khách không biết ý nghĩa của máy chủ, nó sẽ tạo ra lỗi này.

Xem thêm https://bugs.mysql.com/bug.php?id=71606

Lỗi đó chống lại Trình kết nối MySQL / C ++ nên nó ảnh hưởng nhiều hơn đến PHP.

Được rồi — tôi đã làm cho nó hoạt động bằng cách thay đổi bộ ký tự thành utf8, để tương thích với các ứng dụng khách không nâng cấp. Tôi đã thêm cái này vào /etc/my.cnf và khởi động lại mysqld:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8


[mysqld]
collation-server = utf8_unicode_ci
character-set-server = utf8

Tôi tìm thấy các cài đặt này trong một câu trả lời từ năm 2010: Thay đổi bộ ký tự mặc định của MySQL thành UTF-8 trong my.cnf?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Có một Hồ sơ tương đương cho MySql không?

  2. Cách sử dụng STRCMP () để so sánh 2 chuỗi trong MySQL

  3. ASP.NET sử dụng SqlConnection kết nối MySQL

  4. Tạo một truy vấn mysql động bằng cách sử dụng các biến php

  5. Tổng hợp hàng MySQL thành số cột động