forum.bitel.ru
http://forum.bitel.ru/

В клиенте и в базе вместо русских букв ?????
http://forum.bitel.ru/viewtopic.php?f=22&t=1152
Страница 1 из 1

Автор:  max [ 26 май 2008, 10:35 ]
Заголовок сообщения:  В клиенте и в базе вместо русских букв ?????

Поставил биллинг на следующей связке: freebsd 7.0, mysql 5.1.24-rc-log, биллинг последний, ява 1.6
В итоге в клиенте все русские буквы которые содержатся в базе превращаются в ????????
Кодировка в базе 1251
я так понимаю что дело в кодировке базы, вот что в /etc/my.cnf:
Код:
# cat my.cnf
[server]
default-character-set=cp1251

[client]
default-character-set=cp1251

[mysqld]
skip-locking
key_buffer = 16M
max_allowed_packet = 50M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
default-character-set=cp1251
default-collation=cp1251_general_ci
default-character-set=cp1251
character-set-server=cp1251
collation-server=cp1251_general_ci
init-connect="SET NAMES cp1251"
skip-character-set-client-handshake
myisam_data_pointer_size = 6
log-bin
server-id       = 1

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
default-character-set=cp1251

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout


Скажите пожалуйста что поправить?

Автор:  skn [ 26 май 2008, 11:08 ]
Заголовок сообщения: 

что выдает "mysqladmin -uroot -p variables | grep character"

Автор:  max [ 26 май 2008, 11:34 ]
Заголовок сообщения: 

skn писал(а):
что выдает "mysqladmin -uroot -p variables | grep character"

| character_set_client | cp1251 |
| character_set_connection | cp1251 |
| character_set_database | cp1251 |
| character_set_filesystem | binary |
| character_set_results | cp1251 |
| character_set_server | cp1251 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |

Автор:  skn [ 26 май 2008, 11:50 ]
Заголовок сообщения: 

echo "show create database bgbilling" | mysql -uroot -p

Автор:  max [ 26 май 2008, 11:59 ]
Заголовок сообщения: 

skn писал(а):
echo "show create database bgbilling" | mysql -uroot -p

Database Create Database
bgbilling CREATE DATABASE `bgbilling` /*!40100 DEFAULT CHARACTER SET latin1 */

Автор:  skn [ 26 май 2008, 13:13 ]
Заголовок сообщения: 

пересоздайте базу.

Автор:  max [ 26 май 2008, 15:32 ]
Заголовок сообщения: 

skn писал(а):
пересоздайте базу.

да спасибо помогло, а такой вопрос? а из-за чего так получилось?

Автор:  skn [ 26 май 2008, 16:26 ]
Заголовок сообщения: 

скорее всего базу создали до прописывания charset в my.cnf (или сервер mysql забили перезагрузить после внесения изменений в my.cnf)

Автор:  max [ 26 май 2008, 19:30 ]
Заголовок сообщения: 

skn писал(а):
скорее всего базу создали до прописывания charset в my.cnf (или сервер mysql забили перезагрузить после внесения изменений в my.cnf)
спасибо всё понятно!

Автор:  MySTeRious [ 02 сен 2008, 10:56 ]
Заголовок сообщения: 

БД создавалась не мной

%mysqladmin -uroot -p variables | grep character
Enter password:
| character_set_client | cp1251 |
| character_set_connection | cp1251 |
| character_set_database | cp1251 |
| character_set_results | cp1251 |
| character_set_server | cp1251 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/share/mysql/charsets/ |


mysql> show create database bgbilling;
+-----------+----------------------------------------------------------------------+
| Database | Create Database |
+-----------+----------------------------------------------------------------------+
| bgbilling | CREATE DATABASE `bgbilling` /*!40100 DEFAULT CHARACTER SET cp1251 */ |
+-----------+----------------------------------------------------------------------+
1 row in set (0.01 sec)

Каждый раз при переподключении к базе клиентом mysql приходится запускать команду "mysql> set names cp1251;" иначе одни вопросы и ничего не видно. Где копать? (OS FreeBSD 6.1-RELEASE)

Автор:  Администратор [ 02 сен 2008, 16:18 ]
Заголовок сообщения: 

Попробуйте добавить в /etc/my.cnf

Код:
[client]
default-character-set=cp1251


http://bgbilling.ru/v4.4/doc/ch01s04.html

Автор:  stark [ 03 сен 2008, 18:47 ]
Заголовок сообщения: 

Либо запускайте mysql так :
Код:
mysql --default-character-set=cp1251

Автор:  MySTeRious [ 04 сен 2008, 19:03 ]
Заголовок сообщения: 

Этот параметр уже установлен в /etc/my.cnf

Пардон, надо было сделать это сразу:
cat /etc/my.cnf
...
default_character_set=cp1251
default_collation=cp1251_general_ci
...

UPD:
Хотя запуск вот так:
mysql --default-character-set=cp1251
действительно избавляет от вопросов... :/

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/