Fix phpMyAdmin Import SQLUnknown collation: ‘utf8mb4_unicode_520_ci

O problema de import via phpMyAdmin sau din SSH (cu linie de comanda pentru import) a bazelor de date sau arhivate, ce apare in special atunci cand se muta o baza de date de pe un server pe altul, ce nu foloseste aceleasi setari pentru encoding sau sunt versiuni diferite cu setari specifice in Mysql.

Error
SQL query:

CREATE TABLE `wp_termmeta` (
`meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`term_id` bigint(20) unsigned NOT NULL DEFAULT '0',
`meta_key` varchar(255) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
`meta_value` longtext COLLATE utf8mb4_unicode_520_ci,
PRIMARY KEY (`meta_id`),
KEY `term_id` (`term_id`),
KEY `meta_key` (`meta_key`(191))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci
MySQL said: Documentation

#1273 - Unknown collation: 'utf8mb4_unicode_520_ci'

Dupa aceasta eroare, importul unei de baze de date WordPress sau a altui CMS, se va opri subit.

Problema apare din cauza encoding-ului diferit, folosit de cele doua sisteme. In cazul de fata,utf8mb4_unicode_520_cinu recunoscut, iar importul nu se poate face.

Rezolvare eroare import SQL prin phpMyAdmin sau SSH – Unknown collation: ‘utf8mb4_unicode_520_ci

Metoda cea mai simpla este sa inlocuiti in fisierul .SQL, string-urileutf8mb4” CU “utf8. Pentru a face acest lucru, aveti la indemana phpMyAdmin, de unde sa descarcati fisierul baze de date pe PC. Inainte sa va apucati de modificari, asigurati-va o copie de rezerva a bazei de date. Backup-ul este intotdeauna indicat inainte de incepe sa modificam intr-o baza de date.

Sa spunem ca in scenariul nostru avem fisierulnume_baza_de_date.sqlin care trebuie sa inlocuimutf8mb4” CU “utf8.. Metoda la indemna pentru multi administratori de sistem este sa faca aceasta modificare pe linux, folosind comandased” για “find & replace. Asadar, urcati fisierul pe un server linux, apoi executati liniile de comanda σε directorul in care aveti fisierul .sql in care doriti sa faceti modificarile.

 sed -i 's/utf8mb4/utf8/g' nume_fisier.sql
 sed -i 's/utf8_unicode_ci/utf8_general_ci/g' nume_fisier.sql
 sed -i 's/utf8_unicode_520_ci/utf8_general_ci/g' nume_fisier.sql

Dupa executarea acestor linii de comanda, in fisierul .sql se vor inlocuiutf8mb4” CU “utf8”, “utf8_unicode_ci” CU “utf8_general_ci” και “utf8_unicode_520_ci” CU “utf8_general_ci. Desigur, puteti face aceste modificari pe un Windows PC sau Mac, folosind un editor TXT in care sa deschideti fisierul .SQL.

Importati fisierul modificat prin intermediul phpMyAdmin.

Παθιασμένος με την τεχνολογία, γράφω με ευχαρίστηση στο stealthsetts.com ξεκινώντας από το 2006. Έχω μια πλούσια εμπειρία στα λειτουργικά συστήματα: MacOs, Windows και Linux, αλλά και σε γλώσσες προγραμματισμού και πλατφόρμες blogging (WordPress) και για ηλεκτρονικά καταστήματα (WooCommerce, Magento, Presashop).

Σπίτι Η πηγή σας σε μαθήματα, χρήσιμες συμβουλές και νέα. Fix phpMyAdmin Import SQLUnknown collation: ‘utf8mb4_unicode_520_ci

2 Σκέψεις για το "Fix phpMyAdmin Import SQLUnknown collation: ‘utf8mb4_unicode_520_ci’

Αφήστε ένα σχόλιο