プログラミング

【PR】を含みます。

XAMPP(Windows):MariaDBの起動から文字化け対策までの個人メモ

XAMPP:MariaDB起動から文字化け対策

作業環境は、Windows向けXAMPP8.0.0(PHP8.0.0)を使用しています。

MariaDBの起動からパスワード設定

XAMPP Contorol Panelの起動

(1)XAMPP Contorol Panelを起動します。

XAMPP Contorol Panelを起動説明

MariaDBの起動

(1)「MySQL」の「Start」をクリックします。※セキュリティの警告が表示されたら「許可」してください。

MySQLスタート説明

(2)「MySQL」が起動すると、MySQLの文字背景が緑色になります。

MySQLの文字背景説明

(3)「Shell」をクリックしてコマンドプロンプトを起動します。

Shellの起動説明

管理者パスワードの設定

(1)コマンドプロンプトに「mysqladmin -u root password」と入力し、「Enter」キーを押下します。※コマンドプロンプトで貼り付けを行う場合は、「右クリック ⇒ 貼り付け」で貼り付けることができます。

SQL
Copy
  1. mysqladmin -u root password
コマンドプロンプト入力説明

(2)コマンドプロンプトの「New password:」に任意のパスワードを入力し、「Enter」キーを押下します。

コマンドプロンプトパスワード入力説明01

(3)コマンドプロンプトの「Confirm new password:」に先程入力したパスワードを入力し、「Enter」キーを押下します。

コマンドプロンプトパスワード入力説明02

(4)設定が正しく完了するとコマンドプロンプトに入力待ち状態の「#」が表示されます。

コマンドプロンプトパスワード入力説明03

phpMyAdminの設定

ブラウザで「phpMyAdmin」を利用できるように、「config.inc.php」ファイルを変更します。

(1)「phpMyAdmin」フォルダを開きます。

phpMyAdminフォルダ説明

(2)「phpMyAdmin」フォルダ内の「config.inc.php」ファイルをコピーしてバックアップを取っておきます。バックアップ後、「config.inc.php」ファイルを開きます。

config.inc.phpファイル説明01

(3)21行目の「$cfg['Servers'][$i]['password']='';」に先程設定した管理者パスワードを入力します。パスワードを入力したら保存します。

config.inc.phpファイル説明02

(4)XAMPP Contorol Panelの「Apache」の「Start」をクリックします。

ApacheのStart説明01

(5)「Apache」が起動するとApacheの文字背景が緑色になります。

ApacheのStart説明02

(6)「MySQL」の「Admin」をクリックして、エラーが発生することなくphpMyAdminのページが表示されることを確認します。

「config.inc.php」ファイルを変更せずに、MySQL項目の右側にある、「Admin」をクリックするとエラーが発生します。

MySQLのAdmin説明02

MariaDBの文字化け対策

my.iniの設定

MariaDBの文字化けを防ぐために、「my.ini」ファイルの設定を変更していきます。

(1)「mysql」フォルダを開きます。

mysqlフォルダ説明

(2)「bin」フォルダを開きます。

binフォルダ説明

(3)「bin」フォルダ内の「my.ini」ファイルをコピーしてバックアップを取っておきます。不具合があった場合はバックアップファイルで元に戻します。バックアップ後、「my.ini」ファイルを開きます。

my.iniファイル説明01

(4)[mysqld]の最後(160行目付近)の「character-set-server=utf8mb4」と「collation-server=utf8mb4_general_ci」を「#」でコメントアウトします。

my.iniファイル説明02

(5)コメントアウトしたコードの直下に下記のコードをペーストします。

SQL
Copy
  1. character-set-server=cp932
  2. skip-character-set-client-handshake
my.iniファイル説明03

(6)[mysql]の直下に下記のコードをペーストします。

SQL
Copy
  1. default-character-set=cp932
my.iniファイル説明04

(7)「my.ini」ファイルを保存します。

文字コードの確認

先程設定した「my.ini」ファイルの設定を反映させるため、「MySQL」を再起動させます。

(1)コマンドプロンプトが起動してる場合は「exit」と入力して「Enter」キーを押下してコマンドプロンプトを閉じます。※コマンドプロンプトで貼り付けを行う場合は、「右クリック ⇒ 貼り付け」で貼り付けることができます。

SQL
Copy
  1. exit
コマンドプロンプト閉じる説明

(2)「MySQL」の「Stop」をクリックして停止させます。

MySQL停止説明

(3)「MySQL」の「Start」をクリックして起動させます。

MySQL起動説明

(4)「Shell」をクリックしてコマンドプロンプトを起動させます。

コマンドプロンプト起動説明

(5)コマンドプロンプトに「mysql -u root -p」と入力して「Enter」キーを押下します。

SQL
Copy
  1. mysql -u root -p
コマンドプロンプトログイン説明

(6)「Enter password:」にパスワードを入力して「Enter」キーを押下します。

コマンドプロンプトパスワード説明

(7)「MariaDB[(none)]>」に「SHOW VARIABLES LIKE 'char%';」と入力して「Enter」キーを押下します。

SQL
Copy
  1. SHOW VARIABLES LIKE 'char%';
文字コード確認説明01

(8)設定した文字コードが下記の画像と同じであれば設定完了です。今回、「my.ini」ファイルで変更した個所は下記の画像の赤枠部分です。

文字コード確認説明02
character_set_client
クライアント側で発行したSQL文を設定した文字コード(cp932)で扱う
character_set_connection
クライアントから受け取った文字を設定した文字コード(cp932)に変換する
character_set_database
現在使用しているデータベースの文字コード
character_set_filesystem
ファイルシステムで使用する文字コード
character_set_results
クライアントへ送信する検索結果で使用する文字コード
character_set_server
データベース作成時のデフォルト文字コード
character_set_system
MariaDBが使用する文字コード

-プログラミング
-,