phpMyAdminでデータベースを作る
ここではサンプルとして「sampledb」を作成する。データベース作成権限はrootにしかないため、rootでログインする。
まず、phpMyAdminを開く。ホーム画面から①「データベース」をクリック。

①データベース名の欄に「sampledb」、②照合順序は「utf8mb4_general_ci」を選択。最後に③「作成」ボタンをクリック。

左の一覧にsampledbが追加された。

ユーザアカウントを追加
PHPからデータベースを扱う場合、指定したデータベースだけを操作できる一般ユーザを設定する。これによりrootで何でも操作するよりも安全性が向上する。
phpMyAdminのホーム画面から、「ユーザアカウント」をクリック。

画面下部の「ユーザアカウントを追加する」をクリック。

①「ユーザ名」の右欄にユーザ名を入力(ここではsampleuser)。②「ホスト名」はローカル環境で運用するため、左のドロップダウンメニューから「ローカル」を選択。③「パスワード」はそのままパスワードを設定。下の④「グローバル環境」は1つもチェックしない。最後に一番下の⑤「実行」をクリック。

新しいユーザアカウントが追加された。

上部の「ユーザアカウント」をクリックして、ユーザアカウント一覧に追加されているか確認。この時、グローバル権限が「USAGE」になっているか確認。ALL PRIVILEGESはroot権限を意味する。
続いて、sampleuserが利用できるデータベースを指定する。「権限を編集」をクリック。

上部の「データベース」をクリック。

①利用したいデータベースを選択。②「実行」をクリック。

①「データベース固有の権限」の「すべてチェックする」にチェック。②「実行」をクリック。

自動ログインさせずログイン画面を出させる
環境
- XAMPP for Windows 8.2.12
- XAMPPコントロールパネル v3.3.0
phpMyAdminは初期状態ではrootで自動ログインしてしまう。これだと追加したユーザアカウントでログインできない。設定ファイルの「config.inc.php」を修正してログイン画面を出させる。
Windows版XAMPPを使っている場合、XAMPPコントロールパネルのApachの「Config」をクリックすると、ドロップダウンメニューが表示される。その中の「phoMyAdmin(config.inc.php)」を選択すると、メモ帳で当該ファイルが開く。

修正箇所と内容は、
- Authenticationの設定項目にあるauth_typeの値を’config’から’cookie’に変更
- userの値を’root’から”と空にする
- passwordの値を”と空にする。すでに値がある場合、それがrootパスワードなので覚えておく
変更前
/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
$cfg['Lang'] = '';
変更後(ログイン画面が表示される)
/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
$cfg['Lang'] = '';
参考図書
コメント