Rumah pangkalan data tutorial mysql mysql的字符集统一设置问题_MySQL

mysql的字符集统一设置问题_MySQL

Jun 01, 2016 pm 01:44 PM
ya

bitsCN.com

最近做了一个项目,过程中发生了数据库乱码,从phpmyadmin中怎么设置不知道。我去啊!!想了想肯定是字符集设置不一致,php编码是对了,并且都是采用utf-8的字符集设置的,所以肯定是mysql字符集设置的问题。又用phpmyadmin设置了半天还是不行。奶奶的,索性不用phpmyadmin了,真费劲!!
直接打开了mysql的控制台,哈哈弄好了,希望下边的操作对你们有帮助,记得回哦,大家一起进步!!!
一、查看 MySQL 数据库服务器和数据库字符集。 
 
mysql> show variables like '%char%'; 
+--------------------------+-------------------------------------+------ 
| Variable_name            | Value                               |...... 
+--------------------------+-------------------------------------+------ 
| character_set_client     | utf8                                |......   -- 客户端字符集 
| character_set_connection | utf8                                |...... 
| character_set_database   | utf8                                |......   -- 数据库字符集 
| character_set_filesystem | binary                              |...... 
| character_set_results    | utf8                                |...... 
| character_set_server     | utf8                                |......   -- 服务器字符集 
| character_set_system     | utf8                                |...... 
| character_sets_dir       | D:/MySQL Server 5.0/share/charsets/ |...... 
+--------------------------+-------------------------------------+------ 
二、查看 MySQL 数据表(table) 的字符集。 
 
mysql> show table status from sqlstudy_db like '%countries%'; 
+-----------+--------+---------+------------+------+-----------------+------ 
| Name      | Engine | Version | Row_format | Rows | Collation       |...... 
+-----------+--------+---------+------------+------+-----------------+------ 
| countries | InnoDB |      10 | Compact    |   11 | utf8_general_ci |...... 
+-----------+--------+---------+------------+------+-----------------+------ 
三、查看 MySQL 数据列(column)的字符集。 
 
mysql> show full columns from countries; 
+----------------------+-------------+-----------------+-------- 
| Field                | Type        | Collation       | ....... 
+----------------------+-------------+-----------------+-------- 
| countries_id         | int(11)     | NULL            | ....... 
| countries_name       | varchar(64) | utf8_general_ci | ....... 
| countries_iso_code_2 | char(2)     | utf8_general_ci | ....... 
| countries_iso_code_3 | char(3)     | utf8_general_ci | ....... 
| address_format_id    | int(11)     | NULL            | ....... 
+----------------------+-------------+-----------------+-------- 
四、查看当前安装的 MySQL 所支持的字符集。 
 
mysql> show charset; 
mysql> show char set; 
+----------+-----------------------------+---------------------+--------+ 
| Charset | Description                 | Default collation   | Maxlen | 
+----------+-----------------------------+---------------------+--------+ 
| big5     | Big5 Traditional Chinese    | big5_chinese_ci     |      2 | 
| dec8     | DEC West European           | dec8_swedish_ci     |      1 | 
| cp850    | DOS West European           | cp850_general_ci    |      1 | 
| hp8      | HP West European            | hp8_english_ci      |      1 | 
| koi8r    | KOI8-R Relcom Russian       | koi8r_general_ci    |      1 | 
| latin1   | cp1252 West European        | latin1_swedish_ci   |      1 | 
| latin2   | ISO 8859-2 Central European | latin2_general_ci   |      1 | 
| swe7     | 7bit Swedish                | swe7_swedish_ci     |      1 | 
| ascii    | US ASCII                    | ascii_general_ci    |      1 | 
| ujis     | EUC-JP Japanese             | ujis_japanese_ci    |      3 | 
| sjis     | Shift-JIS Japanese          | sjis_japanese_ci    |      2 | 
| hebrew   | ISO 8859-8 Hebrew           | hebrew_general_ci   |      1 | 
| tis620   | TIS620 Thai                 | tis620_thai_ci      |      1 | 
| euckr    | EUC-KR Korean               | euckr_korean_ci     |      2 | 
| koi8u    | KOI8-U Ukrainian            | koi8u_general_ci    |      1 | 
| gb2312   | GB2312 Simplified Chinese   | gb2312_chinese_ci   |      2 | 
| greek    | ISO 8859-7 Greek            | greek_general_ci    |      1 | 
| cp1250   | Windows Central European    | cp1250_general_ci   |      1 | 
| gbk      | GBK Simplified Chinese      | gbk_chinese_ci      |      2 | 
| latin5   | ISO 8859-9 Turkish          | latin5_turkish_ci   |      1 | 
| armscii8 | ARMSCII-8 Armenian          | armscii8_general_ci |      1 | 
| utf8     | UTF-8 Unicode               | utf8_general_ci     |      3 | 
| ucs2     | UCS-2 Unicode               | ucs2_general_ci     |      2 | 
| cp866    | DOS Russian                 | cp866_general_ci    |      1 | 
| keybcs2 | DOS Kamenicky Czech-Slovak | keybcs2_general_ci |      1 | 
| macce    | Mac Central European        | macce_general_ci    |      1 | 
| macroman | Mac West European           | macroman_general_ci |      1 | 
| cp852    | DOS Central European        | cp852_general_ci    |      1 | 
| latin7   | ISO 8859-13 Baltic          | latin7_general_ci   |      1 | 
| cp1251   | Windows Cyrillic            | cp1251_general_ci   |      1 | 
| cp1256   | Windows Arabic              | cp1256_general_ci   |      1 | 
| cp1257   | Windows Baltic              | cp1257_general_ci   |      1 | 
| binary   | Binary pseudo charset       | binary              |      1 | 
| geostd8 | GEOSTD8 Georgian            | geostd8_general_ci |      1 | 
| cp932    | SJIS for Windows Japanese   | cp932_japanese_ci   |      2 | 
| eucjpms | UJIS for Windows Japanese   | eucjpms_japanese_ci |      3 | 
+----------+-----------------------------+---------------------+--------+ 
以上查看 MySQL 字符集命令,适用于 Windows & Linux。 
 
  
 
Liunx下修改MySQL字符集: 
1.查找MySQL的cnf文件的位置 
find / -iname '*.cnf' -print 
 
/usr/share/mysql/my-innodb-heavy-4G.cnf 
/usr/share/mysql/my-large.cnf 
/usr/share/mysql/my-small.cnf 
/usr/share/mysql/my-medium.cnf 
/usr/share/mysql/my-huge.cnf 
/usr/share/texmf/web2c/texmf.cnf 
/usr/share/texmf/web2c/mktex.cnf 
/usr/share/texmf/web2c/fmtutil.cnf 
/usr/share/texmf/tex/xmltex/xmltexfmtutil.cnf 
/usr/share/texmf/tex/jadetex/jadefmtutil.cnf 
/usr/share/doc/MySQL-server-community-5.1.22/my-innodb-heavy-4G.cnf 
/usr/share/doc/MySQL-server-community-5.1.22/my-large.cnf 
/usr/share/doc/MySQL-server-community-5.1.22/my-small.cnf 
/usr/share/doc/MySQL-server-community-5.1.22/my-medium.cnf 
/usr/share/doc/MySQL-server-community-5.1.22/my-huge.cnf 
 
2. 拷贝 small.cnf、my-medium.cnf、my-huge.cnf、my-innodb-heavy-4G.cnf其中的一个到/etc下,命名为my.cnf 
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 
 
3. 修改my.cnf 
vi /etc/my.cnf 
在[client]下添加 
default-character-set=utf8
在[mysqld]下添加 
default-character-set=utf8
 
4.重新启动MySQL 
[root@bogon ~]# /etc/rc.d/init.d/mysql restart 
Shutting down MySQL                                         [ 确定 ] 
Starting MySQL.                                           [ 确定 ] 
[root@bogon ~]# mysql -u root -p 
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or /g. 
Your MySQL connection id is 1 
Server version: 5.1.22-rc-community-log MySQL Community Edition (GPL) 
Type 'help;' or '/h' for help. Type '/c' to clear the buffer. 
 
其他的一些设置方法: 
 
修改数据库的字符集 
mysql>use mydb 
mysql>alter database mydb character set utf-8; 
创建数据库指定数据库的字符集 
mysql>create database mydb character set utf-8; 
 
通过配置文件修改: 
修改/var/lib/mysql/mydb/db.opt 
default-character-set=latin1
default-collation=latin1_swedish_ci
为 
default-character-set=utf8
default-collation=utf8_general_ci
重起MySQL: 
[root@bogon ~]# /etc/rc.d/init.d/mysql restart 
 
通过MySQL命令行修改: 
mysql> set character_set_client=utf8; 
Query OK, 0 rows affected (0.00 sec) 
mysql> set character_set_connection=utf8; 
Query OK, 0 rows affected (0.00 sec) 
mysql> set character_set_database=utf8; 
Query OK, 0 rows affected (0.00 sec) 
mysql> set character_set_results=utf8; 
Query OK, 0 rows affected (0.00 sec) 
mysql> set character_set_server=utf8; 
Query OK, 0 rows affected (0.00 sec) 
mysql> set character_set_system=utf8; 
Query OK, 0 rows affected (0.01 sec) 
mysql> set collation_connection=utf8; 
Query OK, 0 rows affected (0.01 sec) 
mysql> set collation_database=utf8; 
Query OK, 0 rows affected (0.01 sec) 
mysql> set collation_server=utf8; 
Query OK, 0 rows affected (0.01 sec) 
 
作者“You_Can”

bitsCN.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Terangkan keupayaan carian teks penuh InnoDB. Terangkan keupayaan carian teks penuh InnoDB. Apr 02, 2025 pm 06:09 PM

Keupayaan carian teks penuh InnoDB sangat kuat, yang dapat meningkatkan kecekapan pertanyaan pangkalan data dan keupayaan untuk memproses sejumlah besar data teks. 1) InnoDB melaksanakan carian teks penuh melalui pengindeksan terbalik, menyokong pertanyaan carian asas dan maju. 2) Gunakan perlawanan dan terhadap kata kunci untuk mencari, menyokong mod boolean dan carian frasa. 3) Kaedah pengoptimuman termasuk menggunakan teknologi segmentasi perkataan, membina semula indeks dan menyesuaikan saiz cache untuk meningkatkan prestasi dan ketepatan.

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Mar 19, 2025 pm 03:51 PM

Artikel ini membincangkan menggunakan pernyataan jadual Alter MySQL untuk mengubah suai jadual, termasuk menambah/menjatuhkan lajur, menamakan semula jadual/lajur, dan menukar jenis data lajur.

Bolehkah saya memasang mysql pada windows 7 Bolehkah saya memasang mysql pada windows 7 Apr 08, 2025 pm 03:21 PM

Ya, MySQL boleh dipasang pada Windows 7, dan walaupun Microsoft telah berhenti menyokong Windows 7, MySQL masih serasi dengannya. Walau bagaimanapun, perkara berikut harus diperhatikan semasa proses pemasangan: Muat turun pemasang MySQL untuk Windows. Pilih versi MySQL yang sesuai (komuniti atau perusahaan). Pilih direktori pemasangan yang sesuai dan set aksara semasa proses pemasangan. Tetapkan kata laluan pengguna root dan simpan dengan betul. Sambung ke pangkalan data untuk ujian. Perhatikan isu keserasian dan keselamatan pada Windows 7, dan disyorkan untuk menaik taraf ke sistem operasi yang disokong.

Bilakah imbasan jadual penuh lebih cepat daripada menggunakan indeks di MySQL? Bilakah imbasan jadual penuh lebih cepat daripada menggunakan indeks di MySQL? Apr 09, 2025 am 12:05 AM

Pengimbasan jadual penuh mungkin lebih cepat dalam MySQL daripada menggunakan indeks. Kes -kes tertentu termasuk: 1) jumlah data adalah kecil; 2) apabila pertanyaan mengembalikan sejumlah besar data; 3) Apabila lajur indeks tidak selektif; 4) Apabila pertanyaan kompleks. Dengan menganalisis rancangan pertanyaan, mengoptimumkan indeks, mengelakkan lebih banyak indeks dan tetap mengekalkan jadual, anda boleh membuat pilihan terbaik dalam aplikasi praktikal.

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Mar 18, 2025 pm 12:01 PM

Artikel membincangkan mengkonfigurasi penyulitan SSL/TLS untuk MySQL, termasuk penjanaan sijil dan pengesahan. Isu utama menggunakan implikasi keselamatan sijil yang ditandatangani sendiri. [Kira-kira aksara: 159]

Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)? Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)? Mar 21, 2025 pm 06:28 PM

Artikel membincangkan alat MySQL GUI yang popular seperti MySQL Workbench dan PHPMyAdmin, membandingkan ciri dan kesesuaian mereka untuk pemula dan pengguna maju. [159 aksara]

Perbezaan antara indeks kluster dan indeks bukan clustered (indeks sekunder) di InnoDB. Perbezaan antara indeks kluster dan indeks bukan clustered (indeks sekunder) di InnoDB. Apr 02, 2025 pm 06:25 PM

Perbezaan antara indeks clustered dan indeks bukan cluster adalah: 1. Klustered Index menyimpan baris data dalam struktur indeks, yang sesuai untuk pertanyaan oleh kunci dan julat utama. 2. Indeks Indeks yang tidak berkumpul indeks nilai utama dan penunjuk kepada baris data, dan sesuai untuk pertanyaan lajur utama bukan utama.

Bagaimana anda mengendalikan dataset besar di MySQL? Bagaimana anda mengendalikan dataset besar di MySQL? Mar 21, 2025 pm 12:15 PM

Artikel membincangkan strategi untuk mengendalikan dataset besar di MySQL, termasuk pembahagian, sharding, pengindeksan, dan pengoptimuman pertanyaan.

See all articles