MySQL låter dig lagra UTF8-tecken i databasen. Detta är användbart när du arbetar med icke-ascii- eller unicode-data. Faktum är att du till och med kan konvertera alla tabeller till UTF8, om du vill. I den här artikeln kommer vi att titta på hur man stöder fullständiga unicode-tecken i MySQL. Så här lagrar du UTF8-tecken i MySQL.
Hur man lagrar UTF8-tecken i MySQL
Här är stegen för att lagra UTF8-tecken i MySQL. Som standard stöder MySQL endast ASCII-tecken och lagrar data i latin1-teckenuppsättning.
1. Kontrollera teckenuppsättningen
Öppna terminal och kör följande kommando som ersätter användarnamn nedan med ditt databasanvändarnamn
$ mysql -u användarnamn -p
Du kommer att se en lösenordsuppmaning. Ange lösenord och logga in på MySQL.
Kör följande kommando för att lista teckenuppsättningen
mysql> SHOW VARIABLES LIKE 'character_set%'; +--------------------------+---------------------------------------------------------+ | Variable_name | Value | +--------------------------+---------------------------------------------------------+ | character_set_client | cp850 | | character_set_connection | cp850 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | cp850 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.6\share\charsets\ | +--------------------------+---------------------------------------------------------+
Bonus Läs:Hur man rankar över partition i MySQL
2. Ändra teckenuppsättningen till UTF8
Öppna filen my.cnf i terminal
$ sudo vi /etc/my.cnf
Lägg till /ersätt raden efter [klient] och [mysqld]
[client]
default-character-set=utf8mb4
[mysqld]
character-set-server = utf8
mb4
Bonus Läs:Hur man ändrar MySQL-tidszon i fråga
3. Starta om MySQL Server
Starta om MySQL Server för att tillämpa ändringar
$ sudo service mysql restart
Från och med nu kommer alla dina framtida databaser att kunna lagra UTF8-tecken. Dina befintliga databaser kommer dock att fortsätta att stödja deras gamla teckenuppsättning.
Så vi måste konvertera din databas till UTF8
Bonus Läs:Hur man ändrar MySQL-serverns tidszon
4. Konvertera MySQL-databas till UTF8
Här är stegen för att konvertera alla tabeller till UTF8. Logga in på MySQL som visas i steg 1.
Kör följande kommando för att ändra teckenuppsättningen och sorteringen av din databas till UTF8. Ersätt dbname nedan med ditt databasnamn.
mysql> ALTER DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Kommandot ovan kommer att konvertera alla tabeller i din databas till UTF8.
Förhoppningsvis kommer handledningen ovan att hjälpa dig att lagra UTF8-data i MySQL.
Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!