Typowy laik - taki jak ja, cieszy się z każdego sukcesu informatycznego (tak to nazwę) i jeśli ma przed sobą zrobienie kopii bazy danych i jej odtworzenie to cieszy się jeśli się to uda.
Zrobienie kopii bazy danych:
mysqldump -uroot -p nazwabazy > nazwabazy.sql
Odtworzenie bazy danych:
mysql -uroot -p nazwabazy < nazwabazy.sql
Zrobiłem, udało się ufffffff jestem szczęśliwy.
Po kilku chwilach sprawdzam jak działa sklep - i co i jaja. W niektórych opisach brak polskich znaków - jest tylko "ó" z polskich ogonków. I teraz co robić?
Rozwiązanie jest następujące:
Przed wgraniem kopii bazy danych należy bezwzględnie sprawdzić z jakim kodowaniem baza została zainstalowana.
Jak to sprawdzić, ano tak:
- logujemy się poprzez ssh na serwer: najlepiej przez putty
- logujemy się do bazy danych: mysql -u root -p
- wykonujemy polecenie: show variables like 'char%';
- dostajemy listing na ekranie w postaci tabelki i informacji o kodowaniu bazy danych.
Teraz pytanie jak to nareperować, ano ja zrobiłem to w następujący sposób:
- znalazłem plik my.cnf - /etc/mysql/my.cnf - to plik konfiguracyjny bazy danych mysql
- w pliku nie było śladu o jakiejkolwiek konfiguracji kodowania więc dopisałem tam ręcznie
[client] default-character-set = utf8 [mysqld] collation_server = utf8_general_ci character_set_server = utf8 [mysqldump] default-character-set = utf8 [mysql] default-character-set = utf8
Polskie znaczki wróciły do normy.
Pisząc ten post korzystałem z pomocy, a dokładnie ze strony: http://winhelp.jogger.pl/2011/02/17/polskie-znaki-utf-8-i-mysql-co-mi-pomoglo/
Brak komentarzy:
Prześlij komentarz