S 92dcfd00052314288913494ece68ec2f MySQL データリストアで文字化けになる

【環境】
Linux
MySQL


【現象】
AサーバからBサーバでMySQLのデータを移行したら文字化けしている

ちなみにバックアップ方法は
mysqldump と
LOAD DATA INFILE を試した。


【原因】
もちろん 文字コードの違いが原因

最初のAサーバはmy.cnfでも create database コマンドでも
ダンプ時も文字コードをutf-8にしていたがBサーバのmy.cnfは初期設定のままだったため create database 時に文字コードセットしてもうまくいかない

【対応】
まず bサーバでmysqlにログイン

mysql> show variables like "char%";
と打つと
+--------------------------+----------------------------+
Variable_name Value
+--------------------------+----------------------------+
character_set_client latin1
character_set_connection latin1
character_set_database utf8
character_set_filesystem binary
character_set_results latin1
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
+--------------------------+----------------------------+
こんな結果が出る
これにあわせて 取得したmysqldumpデータのファイルに少し情報を追加する

上記の場合だと
vi xxxx.dump をして
set @@character_set_client=latin1;
set @@character_set_connection=latin1;
set @@character_set_database=utf8;
set @@character_set_results=latin1;
set @@character_set_server=latin1;
の記述を冒頭に追加し リストア実行する
旧バージョンで表示
S 92dcfd00052314288913494ece68ec2f
(108words)

最新

    最新エントリ