Jorofi Posted May 11, 2010 Share Posted May 11, 2010 Здравейте, Проблемът е следния, файла е utf8 кирилицата излиза по следния начин Ицо Дингозов. Пробвах да я оправя по няколко начина: 1. При import-a на файла, след таблиците, сложих "ENGINE=MyISAM DEFAULT CHARSET=utf8;" 2. С Firefox да сменям encoding-а, но нямаше никаква полза. 3. С Visual Studio 2010 записах няколко файла с друг encoding но пак нямаше полза. Backup-a е изваден от тази система - phpMyAdmin Version 2.11.9.4 - MySQL Version: 5.1.30 - PHP-Version: 5.2.10 Зареждам го през - MySQL Workbench 5.2.20 - MySQL Version: 5.1.30 Link to comment Share on other sites More sharing options...
tedy Posted May 11, 2010 Share Posted May 11, 2010 Приказвай ми. С phpmyadmin съм имал един вагон главоболия с тия бекъпи и рестори през годините. Отдавна съм се отказал да ползвам тва изчадие за бекъп и ресторе, че и за всичко останало. Всички бази достъпвам през десктопа с native програми, неминаващи през php. По проблема, я дай ако можеш файл с въпросния експорт, стигат само 1-2 заявки , останалото конфиденциално ако има го махни, да видим в какво състояние е файла, защото дори така пейстнато тук може да не е коректно изведено, а и тия символи не ми приличат на utf-8, показан като win1251, какъвто е този форум. Всъщност откъде и знаеш, че въпросния файл е utf-8. Може така да са ти казали, но да не е. Може да има или да няма BOM. Пробвай да го импортираш пак с phpmyadmin. Общо взето каквото е ползвано за експорт, същото гледай и за импорт, като някакво правило ми е вече, иначе много често ми се е налагало да преправям sql-a ако се ползват различни софтуери, да не говорим че някои са бъгави и не протича хич безболезнено импорта/експорта, особено ако резултантния sql стане няколко стотин МБ. Отделно тва Workbench все още е в бета версия (5.2), и тя е бъгава, а 5.1 няма удобствата (че и функционалността) да кажем на Mysql Query Browser и другите такива. Ако съдиш основно какво показва Workbench-a, може да не си настроил шрифта, там мисля подобно ги показваше ако не е с кирилишки. Link to comment Share on other sites More sharing options...
Jorofi Posted May 11, 2010 Author Share Posted May 11, 2010 Приказвай ми. С phpmyadmin съм имал един вагон главоболия с тия бекъпи и рестори през годините. Отдавна съм се отказал да ползвам тва изчадие за бекъп и ресторе, че и за всичко останало. Всички бази достъпвам през десктопа с native програми, неминаващи през php. По проблема, я дай ако можеш файл с въпросния експорт, стигат само 1-2 заявки , останалото конфиденциално ако има го махни, да видим в какво състояние е файла, защото дори така пейстнато тук може да не е коректно изведено, а и тия символи не ми приличат на utf-8, показан като win1251, какъвто е този форум. Всъщност откъде и знаеш, че въпросния файл е utf-8. Може така да са ти казали, но да не е. Може да има или да няма BOM. Пробвай да го импортираш пак с phpmyadmin. Общо взето каквото е ползвано за експорт, същото гледай и за импорт, като някакво правило ми е вече, иначе много често ми се е налагало да преправям sql-a ако се ползват различни софтуери, да не говорим че някои са бъгави и не протича хич безболезнено импорта/експорта, особено ако резултантния sql стане няколко стотин МБ. Отделно тва Workbench все още е в бета версия (5.2), и тя е бъгава, а 5.1 няма удобствата (че и функционалността) да кажем на Mysql Query Browser и другите такива. Ако съдиш основно какво показва Workbench-a, може да не си настроил шрифта, там мисля подобно ги показваше ако не е с кирилишки. Съгласен съм с теб за native програмите, така ми дадоха dump-a и сега си нося кръста. До преди няколко месеца ползвах старите неща MySQL Query Browser и MySQL Administrator. Но реших да си по-играя малко с Workbench-a. Това е линка към почистеният файл, няма нищо важно няколко коментара, таблиците имат CHARSET=latin1 пробвах с utf8 нямаше ефект. Пробвах да го импортна вчера с phpmyadmin но не го дочаках трябваха му 20 30 мин. и не издържах, ще го пусна пак и ще го оставя да върви, ако не стане за един ден ще го мисля. Link to comment Share on other sites More sharing options...
tedy Posted May 11, 2010 Share Posted May 11, 2010 Съгласен съм с теб за native програмите, така ми дадоха dump-a и сега си нося кръста. До преди няколко месеца ползвах старите неща MySQL Query Browser и MySQL Administrator. Но реших да си по-играя малко с Workbench-a. Това е линка към почистеният файл, няма нищо важно няколко коментара, таблиците имат CHARSET=latin1 пробвах с utf8 нямаше ефект. Пробвах да го импортна вчера с phpmyadmin но не го дочаках трябваха му 20 30 мин. и не издържах, ще го пусна пак и ще го оставя да върви, ако не стане за един ден ще го мисля. Файлът, който си дал, има двойно utf-8 енкодване, затова гледайки го в редактор, реално ти (ние) виждаш резултата от първото декодиране (направено от самия текстов редактор). Как точно се е получил тоя изходен файл не знам, но при двойно декодиране се вижда вече кирилицата. Пробвай с малко парче като това, което си дал, да импортнеш през phpmyadmin, да видим дали ще се усети да го декодне като хората. С прекарване веднъж през RAW утф8 декодер може да се докара/възстанови до нормален UTF-8, ако другите методи които пробваш, не сработят. За спорта може да напиша прост такъв, че нещо не откривам в нета. Edit: Изглежда това е чест проблем (двойно utf8 енкодване) при експорт когато конекцията не е сетната правилно, а данните в базата са си utf8. Пробвай да импортираш базата така, ако не се чете, пробвай този метод. В случая таблиците ти са latin1, защо са така, един господ знае, направи ги преди това utf8 в sql-a. Имаш кирилица все пак. Link to comment Share on other sites More sharing options...
Jorofi Posted May 14, 2010 Author Share Posted May 14, 2010 Файлът, който си дал, има двойно utf-8 енкодване, затова гледайки го в редактор, реално ти (ние) виждаш резултата от първото декодиране (направено от самия текстов редактор). Как точно се е получил тоя изходен файл не знам, но при двойно декодиране се вижда вече кирилицата. Пробвай с малко парче като това, което си дал, да импортнеш през phpmyadmin, да видим дали ще се усети да го декодне като хората. С прекарване веднъж през RAW утф8 декодер може да се докара/възстанови до нормален UTF-8, ако другите методи които пробваш, не сработят. За спорта може да напиша прост такъв, че нещо не откривам в нета. Edit: Изглежда това е чест проблем (двойно utf8 енкодване) при експорт когато конекцията не е сетната правилно, а данните в базата са си utf8. Пробвай да импортираш базата така, ако не се чете, пробвай този метод. В случая таблиците ти са latin1, защо са така, един господ знае, направи ги преди това utf8 в sql-a. Имаш кирилица все пак. Метода работи с малко корекции за конкретната ситуация 10х. 1. Импортвам омотания файл както е с латиници и дивотии. 2. Експортвам базата в файл DB_NAME.sql: mysqldump -h localhost -u root -p --opt --quote-names --skip-set-charset --default-character-set=latin1 MY_SCHEME > DB_NAME.sql 3. Отворих файла DB_NAME.sql и смених "CHARSET=latin1;" на "CHARSET=utf8;" 4. И после импортнах обратно файла: Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.