====== MariaDB10.4 phpMyAdminの使い方 ======
phpMyAdmin 4.9.0.1 (MariaDB 10.4.6)
--- //[[http://www.y2sunlight.com|y2sunlight]] 2019-10-09//
[[mariadb:top|MariaDBに戻る]]
関連記事
* MariaDB10.4 phpMyAdminの使い方
* [[mariadb:10.4:mysqli|MariaDB10.4 PHPサンプルプログラム]]
* [[mariadb:10.4:system-variables|MariaDB10.4 システム変数の参照と変更]]
* [[mariadb:10.4:server-info|MariaDB10.4 サーバ情報の取得]]
* [[mariadb:10.4:transaction|MariaDB10.4 トランザクション]]
リンク
* https://www.phpmyadmin.net/ --- phpmyadmin 本家
* https://www.dbonline.jp/phpmyadmin/ --- phpmyadminの使い方(日本語)
以下「MySQL」は「MariaDB」に読み替えて下さい。
----
===== 概要 =====
phpMyAdmin は WebブラウザでMySQLの管理や操作が行えるツールです。phpMyAdmin は、その名前が示しているようにPHPを使って作られており、データベースへのアクセスにはPHP 拡張モジュールの[[mariadb:10.4:mysqli#mysqli クラスの使い方|MySQLi]]が使用されています。phpMyAdmin はブラウザさえあれば開発環境と実行環境の両方で使えるので、是非とも使い方を覚えておきたいツールの1つです。
\\
===== phpMyAdmin の起動 =====
phpMyAdmin は XAMPP をインストールすると直ぐに使うことができます。ブラウザで以下のURLにアクセスして、XAMPPのダッシュボードを表示して下さい。
http://localhost/
[{{:mariadb:10.4:phpmyadmin01.png?nolink}}]
■ 画面上部メニュー[phpMyAdmin]をクリックします。
[{{:mariadb:10.4:phpmyadmin02.png?nolink}}]
■ phpMyAdmin の主な機能には以下のものがあります。
* ユーザと特権の管理
* データベースの作成と削除
* テーブルの作成、コピー、削除、リネーム、定義の変更
* テーブルのメンテナンス(チェック、最適化、復旧、分析)
* キーの管理
* SQLステートメント、バッチクエリの実行
* テーブルデータの追加、変更、削除
* テーブルデータのインポート(SQL/CSV/XML 形式など)
* テーブルデータのエクスポート(SQL/CSV/XML/JSON 形式など)
* テーブルダンプの作成と読み込み
* データベースレイアウトの PDF 画像の作成
本編では、phpMyAdmin の設定方法とデータベースとユーザの作成方法について説明します。phpMyAdmin の全般的な使い方は以下のサイトに詳しく説明されています。
> https://www.dbonline.jp/phpmyadmin/ --- phpmyadminの使い方(日本語)
\\
===== phpMyAdmin の設定 =====
XAMPPでphpMyAdmin をインストールすると以下の場所に設置されます。
{XAMPP Install Folder}\phpMyAdmin\
phpMyAdmin の設定は以下のファイルで行います。
* httpd.conf --- Apacheの設定ファイル
* php.ini --- PHPの設定ファイル
* config.inc.php --- phpMyAdminの設定ファイル
==== httpd.conf ====
phpMyAdmin に関するApacheの設定は、httpd.conf からインクルードされている以下のファイル内にあります。
{{fa>file-o}} ''{XAMPP Install Folder}\apache\conf\extra\httpd-xampp.conf''
Alias /phpmyadmin "D:/usr/xampp7.2.22/phpMyAdmin/"
AllowOverride AuthConfig
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
この辺りの設定は変更の必要はないでしょう。
\\
==== php.ini ====
XAMPPでインストールしたPHPの設定ファイルphp.iniの中に、phpmyadmin で必要なPHPの拡張 mbstring と mysqli の設定があります。
{{fa>file-o}} ''{XAMPP Install Folder}\php\php.ini''
extension=mbstring
extension=mysqli
extension=pdo_mysql
この辺りも変更の必要はないでしょう。
\\
==== config.inc.php ====
phpMyAdminに関する設定はconfig.inc.phpで行います。このファイルはphpMyAdminのインストールディレクトリにあります。本編の場合は、次の場所にあります。
{XAMPP Install Folder}\phpMyAdmin\config.inc.php
以下では、config.inc.php の最低必要な設定項目のみ説明します。phpMyAdminの設定方法(config.inc.php)については、phpMyAdminインストールディレクトリ下の次のHTMLドキュメントに記載されています。
* http://localhost/phpmyadmin/doc/html/config.html
config.inc.php に記載されている順に主な項目について説明します。
=== cookie認証用のパスフレーズの設定 ===
$cfg['blowfish_secret'] = '適当なパスフレーズ ';
この設定項目はcookie認証でパスワードを暗号化する場合に使用します。cookie認証を使用しない場合は設定する必要はありません。64文字以内の適当パスフレーズを入力して下さい。
=== MySQLサーバに関する設定 ===
/*
* Servers configuration
*/
$i = 0;
/*
* First server
*/
$i++;
/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
phpMyAdminでは複数のMySQLサーバにアクセスする事ができます。上の設定は第1のサーバに対するものです。config.inc.phpには第2、第3 のサーバに対する設定もできますが、サーバのホスト名を設定しないと有効な設定とは見なされません。(以下の「[[#ホスト名の設定|]]」を参照)
auth_type は認証の種類を設定します。デフォルトは config です。
* config --- config.inc.php中にユーザ名と平文のパスワードを記述する方式
* cookie --- クッキーを使ったMySQLユーザでログインする方式
* http --- HTTP認証(基本認証)を使う方式
auth_type が config の時、user と password が使用されます。AllowNoPasswordは、パスワードなしでログインを許可するか否かを指定します。デフォルトは false です。
$cfg['Servers'][$i]['extension'] = 'mysqli';
MySQLにアクセスする為に使用するPHP拡張モジュールを選択します。通常は mysql または mysqliです。(mysqli の使用が推奨されています)
=== ホスト名の設定 ===
/* Bind to the localhost ipv4 address and tcp */
$cfg['Servers'][$i]['host'] = '127.0.0.1';
MySQLサーバーのホスト名またはIPアドレスを指定します。ホスト名 **localhost** は MySQLによって特別に処理され、ソケットベースの接続プロトコルとして使用されます。TCP/IPでローカルホストを使用する場合には、127.0.0.1 (IPアドレス)を使用して下さい。
$cfg['Servers'][$i]['connect_type'] = 'tcp';
バージョン4.7.0から非推奨です。MySQLは host に基づいて接続タイプを決定するため、この設定は不要です。
> 変更後はApacheを再起動して下さい。
\\
===== データベースの作成 =====
phpMyAdminを起動し、[データベース]タブをクリックします。
[{{:mariadb:10.4:phpmyadmin03.png?nolink}}]
■ データベース名と照合順序を入力し、[作成]をクリックします。
入力例
^ データベース名 | sunlight_db |
^ 照合順序 | utf8_bin |
■ ここで指定する照合順序は、データベースで使用する既定の照合順序です。照合順序は検索時(SELECT句)に指定することもできます。UTF8 には良く使われる3つの照合順序があります。これらの違いは、日本語のゆらぎをどこまでカバーするのかによります。
^ utf8_bin | バイナリ照合。大文字・小文字など区別する |
^ utf8_general_ci | 大文字・小文字を区別しない |
^ utf8_unicode_ci | ひらがな・カタカナなども区別しない |
https://dev.mysql.com/doc/refman/5.6/ja/charset-binary-collations.html
**データベースユーザの作成**
sunlight_db 上記で作成したデータベースにフルアクセスできるユーザアカウントを作成します。
[{{:mariadb:10.4:phpmyadmin04.png?nolink}}]
■ 左のペインからデータベース(sunlight_db)を選択し、[特権]タブをクリックします。\\
■ [ユーザアカウントを追加する]をクリックします。
[{{:mariadb:10.4:phpmyadmin05.png?nolink}}]
■ 必要なデータ情報を入力し、画面一番下の[実行]をクリックします。
入力例
^ ユーザ名 | テキスト入力項目の値を利用する: | sunlight |
^ ホスト名 | ローカル | localhost |
^ パスワード | テキスト入力項目の値を利用する: | パスワードを入力します |
^ 再入力 | パスワードを再入力します ||
^ 認証プラグイン | ネイティブMySQL認証 ||
^ 特権の付与| データベースへの全ての特権を与える ||
■ 同じユーザでローカルホストからだけでなく、LAN内の他のホストからアクセスしたい場合は、ホスト名だけを「全てのホスト(%)」に変えて、もう一度同じユーザに特権を与えます。\\
^ ホスト名 | すべてのホスト | % |
データベースユーザを作成すると、[特権]タブの一覧にそのユーザが表示されます。
[{{:mariadb:10.4:phpmyadmin06.png?nolink}}]
\\