国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Sila laporkan kepada pembangun: PDO::__construct(): Set aksara yang dihantar pelayan (255) tidak dikenali oleh klien
P粉808697471
P粉808697471 2023-10-16 10:02:44
0
2
1318

Saya cuba menyambung ke pangkalan data MySQL daripada aplikasi Symfony 3. Tetapi apabila cuba mencipta skema MySQL daripada arahan konsol Symfony, saya mendapat ralat ini: PDO::__construct(): 服務器發(fā)送了客戶端未知的字符集 (255)。請向開發(fā)者報告

PHP dan MySQL kedua-duanya dijalankan dalam bekas Docker.

Versi MySQL: 8.0.1

Versi PHP: 7.1.3

Pemandu:pdo_mysql

Set watak:UTF8

dsn: "mysql:host=mysql;dbname=database;charset=UTF8;"

Ada idea?

P粉808697471
P粉808697471

membalas semua(2)
P粉364642019

Selepas menaik taraf kepada MySQL 8.0.11, saya menggunakan fail mysqli_connect()函數時遇到了與OP相同的問題。在我的 MySQL 目錄(在我的例子中,usr/local/mysql)中,我創(chuàng)建了 my.cnf PHP, menambah kandungan daripada jawapan yang diterima dan memulakan semula pelayan MySQL. Walau bagaimanapun, ini menghasilkan ralat baharu:

mysqli_connect():服務器請求客戶端未知的身份驗證方法 [caching_sha2_password]

Saya menambah baris default_authentication_plugin = mysql_native_password,所以 my.cnf dan kini kelihatan seperti:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

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

Saya sangat teruja untuk pergi!

Lagi rujukan: https://github.com/laradock/laradock/issues/1392

Sila ambil perhatian komen ARA1307:

"Sila ambil perhatian bahawa anda harus membuat pengguna baharu dan nyatakan secara eksplisit "IDENTIFIED WITH mysql_native_password", dan menukar pengguna sedia ada, sebagai contoh: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';"

P粉884548619

MySQL 8 menukar set aksara lalai kepada utf8mb4. Tetapi sesetengah pelanggan tidak tahu set watak ini. Jadi ralat ini dilemparkan apabila pelayan melaporkan set aksara lalainya kepada klien dan klien tidak tahu maksud pelayan.

Lihat juga https://bugs.mysql.com/bug.php?id= 71606

Pepijat ini khusus untuk MySQL Connector/C++, jadi ia menjejaskan lebih daripada PHP sahaja.

Penyelesaian yang betul adalah untuk menaik taraf pelanggan , tetapi sementara itu saya berjaya dengan menukar charset pelayan kepada utf8 agar serasi dengan pelanggan yang tidak dinaik taraf. Saya menambahkannya pada /etc/my.cnf dan memulakan semula mysqld:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8


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

Saya menemui tetapan ini dalam jawapan ini dari 2010: Tukar set aksara lalai MySQL dalam my.cnf kepada UTF-8?

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan