asterisk
以前から気になっていたが解決方法がわからなかった
mysqlを勉強し始めたら原因がわかった
レポートのデータベース asteriskcdrdb のcharacter_set_database の文字コードがutf8でないのが原因
データーベースを作成した時点の文字コードがutf8でないと文字化けをおこす
日本語データーが登録できるようにする
utf8に統一すればよい
vi /etc/mysql/mysql.conf.d/mysqld.cnf
#最終行に追記
character-set-server=utf8
vi /etc/mysql/conf.d/mysql.cnf
[mysql]
default-character-set=utf8
vi /etc/mysql/conf.d/mysqldump.cnf
#追記
default-character-set=utf8
/etc/init.d/mysql restart
解決
asteriskcdrdbをエクスポートする
mysqldump -u root -p asteriskcdrdb > asteriskcdrdb_backup.sql
mysql -u root -p
create database asteriskcdrdbbackup;
mysql -u root -p -h localhost asteriskcdrdbbackup < asteriskcdrdb_backup.sql
phpmyadminでうまく行っているか確認する
うまく行っていたら
mysql -u root -p
drop database asteriskcdrdb;
create database asteriskcdrdb;
mysql -u root -p -h localhost asteriskcdrdbbackup < asteriskcdrdb_backup.sql
確認
mysql -u root -p
show variables like “chara%”;
+————————–+—————————-+
| Variable_name | Value |
+————————–+—————————-+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+————————–+—————————-+
8 rows in set (0.01 sec)
すべての文字コードがutf8になっていればOK
コメント