sql >> Databasteknik >  >> RDS >> Mysql

Hur man lagrar UTF8-tecken i MySQL

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 = utf8mb4


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!

  1. Hur COUNT() fungerar i SQL Server

  2. Hur man skapar Not Null-begränsning på kolumn i SQL Server-tabell - SQL Server / T-SQL självstudie del 51

  3. Genererar postgresql användarlösenord

  4. Hur ställer man in primärnyckel för automatisk ökning i PostgreSQL?