sql >> Database teknologi >  >> RDS >> Mysql

Sådan ændres tegnsæt fra latin1 til UTF8 i MySQL

Som standard har MySQL-databaser latin1 tegnsæt og sortering. Nogle gange kan det dog være nødvendigt at gemme UTF8-tegn i MySQL-databasen. Sådan ændrer du tegnsæt fra latin1 til UTF8.


Sådan konverteres MySQL-database fra latin1 til UTF8

Her er trinene til at ændre tegnsæt fra latin1 til UTF for MySQL-databasen.


1. Bestem det aktuelle tegnsæt

Log ind på MySQL kommandolinjeværktøj. Du vil se en adgangskodeprompt. Indtast din adgangskode for at logge ind på MySQL-databasen.

$ sudo mysql -uroot - p

Kør følgende kommando for at bestemme det nuværende tegnsæt i din database. Erstat databasenavn nedenfor med dit databasenavn

mysql> SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name ="databasenavn ";+------------------------------+| default_character_set_name |+-------------- --------------+| latin1 |+-----------------------------------+ 

Hvis du vil bestemme tegnsættet for en specifik databasetabel, skal du køre følgende kommando. Erstat databasenavn og tabelnavn med henholdsvis din database og tabelnavne.

mysql> VÆLG CCSA.character_set_name FRA information_schema.TABLES T, informationsskema.COLLATION_CHARACTER_SET_APPLICABILITY CCSA HVOR CCSA.collation_name =T.table_collation OG T.table_schema ="databasenavn " OG T.table_name ="tabelnavn ";

Bonus Læs:Sådan øger du maks. forbindelser i MySQL

2. Skift tegnsæt fra latin1 til UTF8

Kør følgende kommando for at ændre tegnsæt i MySQL-databasen fra latin1 til UTF8. Erstat databasenavn med dit databasenavn

Til MySQL> 5.5

mysql> ALTER DATABASE databasenavn CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Til MySQL <=5.5

mysql> ALTER DATABASE database_name CHARACTER  SET utf8 COLLATE utf8_unicode_ci; 

Bonus Læs:Sådan rangerer du over partition i MySQL

På samme måde er her kommandoen til at ændre tegnsæt i MySQL-tabellen fra latin1 til UTF8. Erstat tabelnavn med dit databasetabelnavn.

Til MySQL> 5.5

mysql> ÆNDRINGSTABEL tabelnavn KONVERTER TIL KARAKTERSÆT utf8mb4 SAMLET utf8mb4_unicode_ci;

Til MySQL <=5.5

mysql> ALTER TABLE table_name CONVERT TO CHARACTER  SET utf8 COLLATE utf8_unicode_ci; 

Forhåbentlig vil ovenstående vejledning hjælpe dig med at ændre databasens tegnsæt til utf8mb4 (UTF-8).


  1. En oversigt over logisk replikering i PostgreSQL

  2. Saml rækker i Oracle SQL-sætning

  3. Liste alle indeksnavne, kolonnenavne og dets tabelnavn for en PostgreSQL-database

  4. Returner en liste over e-mails sendt fra SQL Server Database Mail (T-SQL)