TOP ▲
itcore TOP
> TIPS
> mysql_utf8.php
タグ:mysql utf8 文字コード mysql DATABASEの文字コードをlatin1からutf8に変更する。(utf8にし忘れたときなど) | itcore 2021年
1.現在の文字コードを指定してテーブルをダンプする。
--default-character-set=latin1
2.バックアップファイルの文字コードを変更する。
sed -e s/latin1/utf8/ bkup_tool_hs_object_20210109_202713.sql > bkup_tool_hs_object_20210109_202713_utf8.sql
< /*!40101 SET NAMES latin1 */;
> /*!40101 SET NAMES utf8 */;
< ) ENGINE=InnoDB AUTO_INCREMENT=151 DEFAULT CHARSET=latin1 COMMENT='オブジェクト';
> ) ENGINE=InnoDB AUTO_INCREMENT=151 DEFAULT CHARSET=utf8 COMMENT='オブジェクト';
3.文字コードを指定したテスト用DBを作成する。
CREATE DATABASE IF NOT EXISTS tool_hs_utf8 CHARACTER SET utf8mb4;
4.テスト用DBにロードして文字が化けていないか確認する。
5.現在のデータベースをdropする。(要注意作業)
drop database tool_hs;
6.文字コードを指定してDBを作成し直す。
CREATE DATABASE IF NOT EXISTS tool_hs CHARACTER SET utf8mb4;
7.バックアップデータをロードして文字が化けていないか確認する。
8.アプリで文字コードを指定する。
mysqli_query($link, 'SET NAMES utf8');
9.テスト用のデータベースを削除する。