Heim  >  Artikel  >  Datenbank  >  Codierung der grünen MySQL-Versionseinstellung und detaillierte Erklärung des 1067-Fehlers

Codierung der grünen MySQL-Versionseinstellung und detaillierte Erklärung des 1067-Fehlers

巴扎黑
巴扎黑Original
2017-05-14 14:12:331195Durchsuche

In diesem Artikel werden hauptsächlich die Codierung der grünen MySQL-Version und 1067-Fehler vorgestellt. Freunde in Not können sich auf

Codierung der grünen MySQL-Version und 1067-Fehler beziehen

MySQL-Kodierung anzeigen


SHOW VARIABLES LIKE 'char%';

Da der Zeichensatz bei der Installation als UTF8 angegeben wurde, sind alle Kodierungen UTF8.

  • character_set_client: Die von Ihnen gesendeten Daten müssen mit der vom Client angegebenen Kodierung übereinstimmen! ! ! Der Server verwendet diese Kodierung, um die vom Client gesendeten Daten zu interpretieren.

  • character_set_connection: Diese Kodierung stimmt mit dem Client überein. Diese Kodierung führt nicht zu verstümmelten Zeichen! Beim Ausführen einer Abfrageanweisung werden die vom Client gesendeten Daten zunächst in die von der Verbindung angegebene Kodierung konvertiert. Solange die vom Client gesendeten Daten jedoch mit der vom Client angegebenen Codierung übereinstimmen, gibt es bei der Konvertierung kein Problem.

  • character_set_database: die Standardcodierung der Datenbank. Wenn beim Erstellen der Datenbank keine Kodierung angegeben ist, wird standardmäßig die Datenbankkodierung verwendet

  • character_set_server: MySQL-Server-Standardkodierung; >character_set_results: Die Kodierung der Antwort, dh die Abfrageergebnisse werden an die Endkodierung des Clients zurückgegeben. Dies zeigt, dass der Client zum Dekodieren die durch das Ergebnis angegebene Kodierung verwenden muss.

Die Kodierung der Konsole kann nur GBK sein und nicht auf UTF8 geändert werden, liegt ein Problem vor. Die vom Client gesendeten Daten sind GBK und Character_set_client ist UTF8, was bedeutet, dass die Clientdaten beim Erreichen des Servers definitiv verstümmelt werden. Da die Codierung der Konsole nicht geändert werden kann, besteht die einzige Möglichkeit darin, „character_set_client“ in „GBK“ zu ändern.

修改character_set_client、character_set_results、character_set_connection为GBK,
就不会出现乱码了。但其实只需要修改character_set_client和character_set_results。
Die vom Server an den Client gesendeten Daten werden als „character_set_result“ codiert. Wenn es sich um UTF8 handelt, werden auf jeden Fall verstümmelte Zeichen angezeigt, wenn die Konsole GBK-Decodierung verwendet. Da die Konsolenkodierung nicht geändert werden kann, kann „character_set_result“ nur in GBK geändert werden.

Füllen Sie diesen Satz aus:


Das Folgende ist die Gesamtkonfiguration:

Codierung der grünen MySQL-Versionseinstellung und detaillierte Erklärung des 1067-Fehlers


1067-Fehler

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

basedir = H:\MySQL
datadir = H:\MySQL\data


character_set_server = utf8 


# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....


# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 


[client]
port=3306
default-character-set = gbk

Achten Sie darauf, nicht die falsche Konfiguration in my.ini zu schreiben. Tatsächlich werden viele unserer 1067-Fehler durch eine Fehlkonfiguration in my.ini verursacht.

Hinweis:

In Windows 10 können Sie tatsächlich den Standardzeichensatz = utf8 festlegen und dann in cmd ohne verstümmelte Zeichen arbeiten. In Windows 8.1 und Windows 7 wird es jedoch verstümmelt. Daher muss in Windows 8.1 und Windows 7 default-character-set = gbk auf gbk gesetzt werden

Das obige ist der detaillierte Inhalt vonCodierung der grünen MySQL-Versionseinstellung und detaillierte Erklärung des 1067-Fehlers. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn