Титла: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 22, 2011, 20:48 Здравейте,
След като направя бекъп на базата ми данни от phpmyadmin-а на CentOS VPS и го изтегля на моят компютър кирилицата идва като на йероглифи .. какво да направя, че след като искам да си направя бекъп да идва както си е кирилицата, а не на йероглифи ? Благодаря предварително. Поздрави. Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: romeo_ninov в Mar 22, 2011, 21:38 Да ползвате същата кодова таблица, която е на оригиналната база
Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: n00b в Mar 22, 2011, 22:42 +1 @ninov
Айде гледайте малко и collation-ите на таблиците. То само import/export не става. Трябва и акъл! Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 22, 2011, 23:05 Ами, добре, но аз самия бекъп като го изтегля ми идва на йероглифи ... от самия сървър бекъпа идва така при export-a .. това имах впредвид как да го оправя ?
Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: bonbon в Mar 22, 2011, 23:45 +1 @ninov Все забравям че това е БЪЛГАРСКИ форум и тук само ЗНАЕЩИ и МОЖЕЩИ пишат. :) На въпроса: Не ползвам CentOS, ползвам Debian, но би трябвало да е едно и също. С тази комадна: mysqladmin -p_паролата-ти variables | grep character_set ще разбереш с какъв character_set (набор от символи) работи mysql-сървъра по default. Когато правиш копие на БД, задай този character_set Напр: mysqldump -p_паролата-ти -името-на-базата-данниc --default-character-set=-character_set–по–default > име-на-фаил. Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 23, 2011, 00:04 Пренаписах си ги в самия dump файл преди пак да го ресторна на БГ (кирилица), но сега в phpmyadmin-a ми ги показва както трябва на кирилица, но в сайта са ми на въпросителни ???????? от какво може да е това сега ?
Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: n00b в Mar 23, 2011, 00:23 Може да е от много работи:
1. mysql_query("SET CHARACTER SET utf8 "); или там какъвто да е чарсета да се оправи 2. някъде не е зададено в html-то или по-скоро apache с какъв енкодинг идват данните Всъщност това е грандиозен проблем на php/mysql и кирилицата в частност (koi-r, windows-1251, cp866 и т.н.). Затова е измислен Unicode. Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: Naka в Mar 23, 2011, 11:44 Ами просто си backup-ни данните в utf8.
аз използвам mysqldump ..... --skip-extended-insert --default-character-set=utf8 ...... Това ще създаде txt файл който е кодиран в utf8 и понеже е кодиран в utf8 винаги ще се чете. Трикът е mysqldump се съобразява с това в каква кодировка са ти таблиците (или даже колоните) и при експорта ги конвентира вътрешно. Например ако си имал таблица в cp1251 става следното: [(таблицата)cp1251] ---cp1251--конвентиране-в-utf8----mysqldump--> [файл в utf8] в самият файл обаче mysqldump записва с каква кодировка е била таблицата(колоната) и при обратното възтановяване става точно обратният процес и таблицата ти ще бъде възтановена с ориналната кодировка и оригиналните данни. Хубавото на цялата работа е че може базата ти да има таблици, колони с различни кодировки т.е да е мешаница с кодировки и всичко се запазва. Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 23, 2011, 14:51 Правя го така както казахте, но в самия phpmyadmin кирилицата ми се показва на йероглифи и то при изтеглянето става както си е било ... всъщност трябва да оправя да се показват на кирилица в phpmyadmin-a ?
Показва: collation latin1_swedish_ci в phpmyadmin-a Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: Naka в Mar 23, 2011, 15:30 Показва: collation latin1_swedish_ci в phpmyadmin-a Не трябва да е така. A други промелниви дава ли? character_set_client, character_set_results, character_set_connection ? Тези трите трябва да ти показват utf8. Както и да е: командите SET NAMES utf8 и опцията --default-character-set=utf8 са еквивалентни. И двете правят тези три променливи (character_set_client, character_set_results, character_set_connection) да покават utf8. не знам как работи phpmyadmin. :'( Мисля че ако character_set_results покава utf8 би трябвало да ти изплюе utf8 данни. http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 23, 2011, 15:45 Имам чуството, че няма да мога да изтегля читав бекъп, защото в сайта всичко си показва както трябва да е на кирилица, но всичко в phpmyadmin-а е на йероглифи и каквото и да правя за да изтегля бекъп с кирилица, всеки път излиза на йероглифи :(
Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: Naka в Mar 23, 2011, 15:46 Имам чуството, че няма да мога да изтегля читав бекъп, защото в сайта всичко си показва както трябва да е на кирилица, но всичко в phpmyadmin-а е на йероглифи и каквото и да правя за да изтегля бекъп с кирилица, всеки път излиза на йероглифи :(някъде не можеш ли да зададеш mysql_query("SET NAMES 'utf8'") ; Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 23, 2011, 15:52 Къде имаш впредвид да го задам ? Пробвах с php файл, пробвах през конзолата да изтегля бекъпа в utf8, но все излиза с йероглифи .. и като sql query го зададох от phpmyadmin-a ..
Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: Naka в Mar 23, 2011, 16:00 Къде имаш впредвид да го задам ? Пробвах с php файл, пробвах през конзолата да изтегля бекъпа в utf8, но все излиза с йероглифи .. и като sql query го зададох от phpmyadmin-a .. Ами в кода на phpmyadmin. Някъде непосредствено след mysql_connect() и mysql_select_db() Щом имаш конзола защо не ползваш mysqldump? или си напиши скрипт който да ползва mysqldump. Той винаги работи правилно. Знаеш ли в каква кодировка са ти данните в BD? Поне трябва да разбираш какво става. Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 23, 2011, 16:07 default-a на phpmyadmin-a е UTF-8, таблиците вътре са различни, но да кажем повечето са с latin1_swedish_ci и когато примерно напиша нещо в сайта на кирилица то си го показва както трябва, но като го погледна в phpmyadmin-a седи на йероглифи ...
Титла: Re: Бекъп на база данни от CentOS VPS при което става на йероглифи .. Съвет ? Публикувано от: IamJJJ в Mar 23, 2011, 16:17 Добре, има ли вариант след като примерно имам такъв бекъп с йероглифите, да го ресторна на някоя дата база и да го оправи примерно някакси ?
EDIT: Имам mysql_query("SET NAMES $mysql_charset"); в файловете на тракера, в сайта като пиша на кирилица си излиза супер, но в phpmyadmin-а .. не! :( Как да направя така, че всичко на кирилица където е сега в базата данни да се появява и в phpmyadmin-а на кирилица както е в сайта ? |