MySQL ialah sistem pengurusan pangkalan data hubungan biasa yang digunakan untuk menyimpan dan mengurus data dalam pelbagai tapak web dan aplikasi. MySQL menyokong pelbagai set aksara dan kaedah pengekodan, termasuk UTF-8, GB2312, ISO-8859-1, dsb. Apabila menggunakan MySQL, anda mungkin perlu mengubah suai pengekodan pangkalan data untuk memastikan data teks boleh disimpan dan diambil dengan betul. Dalam artikel ini, kami akan memperkenalkan cara mengubah suai pengekodan pangkalan data MySQL.
1. Tanya pengekodan pangkalan data
Sebelum menangani masalah pengekodan pangkalan data MySQL, anda perlu mengesahkan kaedah pengekodan pangkalan data semasa. Kami boleh menanyakan pengekodan pangkalan data semasa melalui pernyataan SQL berikut:
SHOW VARIABLES LIKE 'character_set_database';
Jika pengekodan pangkalan data semasa ialah UTF-8, keputusan berikut akan dikembalikan:
+------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | character_set_database | utf8 | +------------------------+--------+
Jika pengekodan pangkalan data semasa ialah GBK , keputusan berikut akan dikembalikan:
+------------------------+--------+ | Variable_name | Value | +------------------------+--------+ | character_set_database | gbk | +------------------------+--------+
2. Ubah suai pengekodan pangkalan data
Jika anda mendapati ia bukan pengekodan yang dijangkakan semasa menanyakan pangkalan data pengekodan, anda perlu mengubah suainya. Kaedahnya adalah seperti berikut:
1 Sandarkan pangkalan data
Pastikan anda membuat sandaran pangkalan data sebelum mengubah suai pengekodan. Kerana semasa proses pengubahsuaian pengekodan, pangkalan data mungkin terjejas, mengakibatkan kehilangan data atau kerosakan data.
mysqldump -u username -p databasename > backup.sql
Arahan ini akan mengeksport kandungan pangkalan data ke fail backup.sql, dengan username
ialah nama pengguna pangkalan data dan databasename
ialah nama pangkalan data.
2. Ubah suai pengekodan pangkalan data
Selepas membuat sandaran pangkalan data, kita boleh mula mengubah suai pengekodan pangkalan data adalah seperti berikut:
(1) Edit fail konfigurasi MySQL
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
(2) Ubah suai fail konfigurasi
Dalam fail konfigurasi MySQL, anda boleh menemui konfigurasi berikut:
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 collation-server=utf8_general_ci
Dalam fail konfigurasi ini, anda perlu menukar character-set-server
dan collation-server
Nilai diubah suai kepada kaedah pengekodan baharu, seperti UTF-8. Konfigurasi yang diubah suai adalah seperti berikut:
[client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 [mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci
(3) Mulakan semula perkhidmatan MySQL
Akhir sekali, anda perlu memulakan semula perkhidmatan MySQL melalui arahan berikut untuk membuat pengubahsuaian berkuat kuasa:
sudo service mysql restart
3. Uji pengekodan pangkalan data
Selepas mengubah suai pengekodan pangkalan data, anda harus menguji untuk memastikan ia telah diubah suai dengan betul. Anda boleh menyemak pengekodan pangkalan data semasa melalui pertanyaan berikut:
SHOW VARIABLES LIKE 'character_set_database';
Jika hasil pulangan menunjukkan bahawa pengekodan semasa adalah sama dengan tetapan sebelumnya, ini bermakna pengubahsuaian berjaya.
Dalam artikel ini, kami memperkenalkan cara mengubah suai pengekodan pangkalan data MySQL. Sila ingat untuk membuat sandaran pangkalan data dan mengesahkan dengan teliti setiap langkah proses pengubahsuaian untuk mengelakkan kemungkinan kehilangan data atau kerosakan data. Melalui kandungan artikel ini, saya percaya pembaca boleh mengubah suai dan menguji kaedah pengekodan pangkalan data MySQL dengan mudah.
Atas ialah kandungan terperinci Ubah suai pengekodan pangkalan data mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!