====== 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}}] \\