Ларчик просто открывался, данные я получаю в utf8 из бд, далее получив данные str = unicode(string) проблема в том что python не знал в какой кодировке я получил данные.
тысячи их — способов. Вам необходимо сменить кодировку именно на этапе отправки, т.е. в процессе работы какой-то Вашей программы, или вы прямо в базе хотите конвертировать?
Из базы в таком виде получаю: ((u'\u041c\u0430\u0440\u0448\u0440\u0443\u0442\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u041e\u0420\u0418\u041e\u041d \u0411\u041a-06', 625L),)
Как это в utf8 преобразовать не могу разобраться, может есть возможность из базы уже на лету получать utf8 вообще идеально будет. MySQLdb.connect(host="example.com",user='test',passwd='test,db='test',charset='cp1251')
Строка подключения.
А что показывает, скажем, SQLyog? Я имею ввиду в текстовых полях.
Вообще, конвертировать таблицу можно при помощи команды ALTER TABLE CONVERT TO CHARACTER SET utf8;
Мне таблицу конвертировать не надо, я хочу получать данные и отправлять через jabber, а он требует в utf8 пробовал s.decode('cp1251').encode('utf8') не помогает.
А что показывает, скажем, SQLyog? Я имею ввиду в текстовых полях.
SQLyog не используется, поэтому что показывает сказать не могу.
2. Ставил charset
3. Так же устанавливал
Ошибка: TypeError: coercing to Unicode: need string or buffer, long found
В строку подключения добавил use_unicode = True
Судя по тексту ошибки, Вы используете Django (сорри, я его совсем не знаю), так что это проблема не в MySQL, а в этом фреймворке. Быстрый гуглинг подтверждает это и дает совет как это исправить