MySQL-Architektur
Vorwort
Diese Umgebung basiert auf dem Centos 7.8-System zum Erstellen von MySQL-5.7.14 für eine
bestimmte Konstruktion. Weitere Informationen finden Sie unter Aufbau der MySQL-5.7.14-Umgebung
Der MySQL-Zeichensatz enthält zwei Konzepte: Zeichensatz (CHARACTER) und Sortierung (COLLATION):
MySQL-Zeichensatz anzeigen
mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
Anzeigen der Regeln für die MySQL-Zeichensortierung
mysql> show collation;
+--------------------------+----------+-----+---------+----------+---------+
| Collation | Charset | Id | Default | Compiled | Sortlen |
+--------------------------+----------+-----+---------+----------+---------+
| big5_chinese_ci | big5 | 1 | Yes | Yes | 1 |
| big5_bin | big5 | 84 | | Yes | 1 |
| dec8_swedish_ci | dec8 | 3 | Yes | Yes | 1 |
| dec8_bin | dec8 | 69 | | Yes | 1 |
| cp850_general_ci | cp850 | 4 | Yes | Yes | 1 |
| cp850_bin | cp850 | 80 | | Yes | 1 |
| hp8_english_ci | hp8 | 6 | Yes | Yes | 1 |
| hp8_bin | hp8 | 72 | | Yes | 1 |
| koi8r_general_ci | koi8r | 7 | Yes | Yes | 1 |
| koi8r_bin | koi8r | 74 | | Yes | 1 |
| latin1_german1_ci | latin1 | 5 | | Yes | 1 |
| latin1_swedish_ci | latin1 | 8 | Yes | Yes | 1 |
... ...
1. Wie lauten die Namenssuffixe des MySQL-Zeichensatzes? Was bedeutet das?
Die Benennungsregeln für MySQL-Zeichenfolgen lauten: Beginnen Sie mit dem Namen des Zeichensatzes, der der Zeichenfolge entspricht, zentrieren Sie mit dem Ländernamen (oder zentrieren Sie mit Allgemein) und enden Sie mit ci, cs oder bin.
- ci: bedeutetGroß- und Kleinschreibung wird nicht berücksichtigt
- cs: bedeutetGroß- und Kleinschreibung beachten
- bin bedeutet, nach einem binär codierten Wert zu vergleichen
Zweitens: Ändern Sie den MySQL-Zeichensatz
Wir ändern den Zeichensatz der Datenbank, indem wir die Konfigurationsdatei des MySQL-Dienstes ändern, die global wirksam wird,
um den Zeichensatz der aktuellen Datenbank anzuzeigen
mysql> show variables like '%character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
Ändern Sie den Datenbankzeichensatz
#配置文件中添加设置内容
[root@mysql-server ~]# vim /etc/my.cnf
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
Melden Sie sich von der Datenbank ab, melden Sie sich erneut an und überprüfen Sie den Zeichensatz der Datenbank erneut
mysql> show variables like '%character%';
+--------------------------+----------------------------+
| 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 | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
Hinweis: Der Standardzeichensatz von character_set_filesystem ist binär. Dies ist eine feste Einstellung und kann nicht geändert werden