Adakah MySQL mixed utf8 utf8mb4 mempunyai kelebihan berbanding utf8mb4 tulen?
巴扎黑
巴扎黑 2017-06-22 11:54:49
0
1
990

Terdapat terlalu banyak jadual hanya nama panggilan dan ulasan ditetapkan kepada utf8mb4
config, tag, penghala, dll. Tidak menggunakan utf8mb4 sama sekali. pengindeksan dan rekod log?
Adakah cara ini lebih pantas daripada utf8mb4 tulen? Adakah ia stabil?
Adakah anda perlu mengubah suai sebarang konfigurasi dalam konfigurasi mysqld dan mengoptimumkan utf8mb4

Jika kod PHP DB_CHARSET menetapkan utf8mb4, adakah ia akan menjejaskan data uft8?

巴扎黑
巴扎黑

membalas semua(1)
阿神

Tidak banyak kelebihan
Sebab utf8mb4 hanya menggunakan 4 bait untuk menyimpan aksara khas seperti emoji
Selebihnya, prestasinya sama seperti set aksara utf8 mysql masih 3 bait

(Oleh kerana pelaksanaan panjang maksimum satu aksara dalam set aksara MySQL utf8 adalah salah, jadi set aksara utf8mb4 keluar. Sebenarnya, utf8mb4 ini adalah utf8 standard)

Sudah tentu, anda perlu mengelak daripada menggunakan char dan sebaliknya menggunakan varchar, kerana jenis lajur char mysql berada di bawah utf8mb4 Untuk memastikan semua data disimpan, char akan menduduki bilangan bait * 4 aksara (lajur char. jenis mysql utf8 akan menduduki bilangan bait (bilangan aksara * 3) untuk memastikan peruntukan ruang yang mencukupi Oleh itu, adalah disyorkan untuk menggunakan varchar panjang berubah untuk menjimatkan ruang diperlukan untuk storan sebenar + 1 atau Panjang yang dinyatakan dalam 2 bait.

Selain itu, untuk lajur aksara Inggeris tulen, anda juga boleh mempertimbangkan lajur varbinari (perduaan panjang pembolehubah) dan perduaan (sesuai untuk aksara Inggeris panjang tetap, seperti cincang kata laluan, prestasinya lebih baik sedikit daripada varchar, kerana ini disimpan). data binari

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