備忘録

CentOS7にphpMyAdminをインストール

CentOS7にMySQL(データベース)をブラウザ上で管理できるphpMyAdminをインストールした時のメモ

phpMyAdminはMySQL(データベース)をブラウザ上で管理できるツールです。

最新のphpMyAdminをインストール

最新のphpMyAdminは下記サイトで確認

phpMyAdmin - Downloads(https://www.phpmyadmin.net/downloads/)

インストール先(ドキュメントルート)に移動

# mkdir -p /var/www/ip/html/
# cd /var/www/ip/html/

phpMyAdmin の公式ページから最新版をダウンロード

# wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gz

ダウンロードしたファイルを解凍・リネーム

# tar xvzf phpMyAdmin-4.9.0.1-all-languages.tar.gz
# rm -f phpMyAdmin-4.9.0.1-all-languages.tar.gz
# mv phpMyAdmin-4.9.0.1-all-languages phpMyAdmin

※ディレクトリを「phpMyAdmin」としましたが、推測されにくいディレクトリ名にしたほうがいいです。

config.inc.phpの設定

/var/www/ip/html/phpMyAdmin/config.inc.php

サンプル(config.sample.inc.php)をリネームして編集

# cd phpMyAdmin
# mv config.sample.inc.php config.inc.php
# chmod 644 config.inc.php
$cfg['blowfish_secret'] = 'zQG6bmUtphnqS$Wjm8xDPeraA#VAjHm3zm';//任意の文字列32文字以上

$i = 1;
$cfg['Servers'][$i]['auth_type']       = 'cookie';
$cfg['Servers'][$i]['host']            = 'localhost';
$cfg['Servers'][$i]['connect_type']    = 'tcp';
$cfg['Servers'][$i]['compress']        = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['Servers'][$i]['AllowRoot']       = false;
$cfg['Servers'][$i]['extension']       = 'mysqli';

$cfg['DefaultLang'] = 'ja';
$cfg['UploadDir']   = '';
$cfg['SaveDir']     = '';
$cfg['LoginCookieValidity'] = 7200;//2時間

rootを禁止しているのでphpMyAdminへのログインは別ユーザの作成が必要です。また、認証プラグインが「caching_sha2_password」の場合は接続できない場合があります。

phpMyAdiminの所有者の変更

chown -R [ユーザ名]:apache /var/www/ip/html/phpMyAdmin

[ユーザ名]はApache又は、FTPユーザ等を設定ください。

ディレクトリの削除

下記4つのディレクトリはなくても大丈夫なはずなので、セキュリティ上の予防措置として削除しておきます。

  • doc
  • examples
  • setup
  • sql
rm -rf /var/www/ip/html/phpMyAdmin/doc/
rm -rf /var/www/ip/html/phpMyAdmin/examples/
rm -rf /var/www/ip/html/phpMyAdmin/setup/
rm -rf /var/www/ip/html/phpMyAdmin/sql/

「http://サーバのIPアドレス/phpMyAdmin/」にアクセスするとphpMyAdminのログイン画面が表示されればOKです。