phpMyAdminインストール

Last-modified: Tue, 23 May 2017 00:06:49 JST (86d)
  • phpmyadmin導入
    ググれば出てくるのですが、phpmyadminの導入方法です。
    Ubuntu 16.04で試しました。
  1. まずは公開ディレクトリにphmyadminを展開します。
    cd /var/www/
    wget https://files.phpmyadmin.net/phpMyAdmin/4.7.0/phpMyAdmin-4.7.0-all-languages.zip
    unzip phpMyAdmin-4.7.0-all-languages.zip
  2. 次に設定ファイルのひな型をコピーし、設定します。
    cd phpmyadmin/
    cp config.sample.inc.php config.inc.php
    vi config.inc.php
    
    $cfg['blowfish_secret'] = '32文字のランダム文字列。pwgen 32 1 みたいな感じで生成。'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
    
    /**
     * phpMyAdmin configuration storage settings.
     */
    
    //コメントアウトし、phpmyadminが使用する管理DBにアクセスするユーザ、PWをセット
    /* User used to manipulate with storage */
     $cfg['Servers'][$i]['controlhost'] = 'localhost';
     $cfg['Servers'][$i]['controlport'] = '';
     $cfg['Servers'][$i]['controluser'] = 'pma';
     $cfg['Servers'][$i]['controlpass'] = 'pmapass';
    //以下コメントを除去
    # /* Storage database and tables */
     $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
     $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
     $cfg['Servers'][$i]['relation'] = 'pma__relation';
     $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
     $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
     $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
     $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
     $cfg['Servers'][$i]['history'] = 'pma__history';
     $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
     $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
     $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
     $cfg['Servers'][$i]['recent'] = 'pma__recent';
     $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
     $cfg['Servers'][$i]['users'] = 'pma__users';
     $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
     $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
     $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
     $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
     $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
     $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
    
    /**
     * End of servers configuration
     */
    
    /**
     * Default language to use, if not browser-defined or user-defined
     * (you find all languages in the locale folder)
     * uncomment the desired line:
     * default = 'en'
     */
    //$cfg['DefaultLang'] = 'en';
    //$cfg['DefaultLang'] = 'de';
    $cfg['DefaultLang']     = 'ja-utf-8'; //デフォルトを日本語に設定
    
  3. もし、phpMyAdminでlocalhost以外のサーバなど、複数のサーバを管理したい場合、
    設定ファイルの"End of servers configuration"の下に以下追記
    // Second Server
    $i++;
    /* Authentication type */
    $cfg['Servers'][$i]['auth_type'] = 'cookie';
    /* Server parameters */
    $cfg['Servers'][$i]['verbose'] = '表示するサーバ名';
    $cfg['Servers'][$i]['host'] = '<外部MySQLサーバのホスト名orIP>';
    $cfg['Servers'][$i]['compress'] = false;
    $cfg['Servers'][$i]['AllowNoPassword'] = false;
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    ようは、First serverにある、$i=1が設定されたlocalhostの設定配列の下に$i=2の設定を追加する形です。
    別サーバにもphpMyAdmin用管理DBを作成して拡張機能を使いたい場合は、その設定も同様に追加します。
    ($cfg['Servers'][$i]['controlhost']とか $cfg['Servers'][$i]['pmadb']とか)
    勿論各サーバにDBなりユーザなりを作らないといけません。
  4. 設定ファイルのパーミッションを設定します。
    chmod 660 /var/www/phpmyadmin/config.inc.php
  5. Apacheがアクセスできるよう所有者を変更します。
    chown -R root.www-data /var/www/phpmyadmin/
  6. ZIPはもういらないので削除
    rm phpMyAdmin-4.7.0-all-languages.zip
  7. 管理用データベース、テーブル作成
    mysql -uroot -p /var/www/phpmyadmin/sql/create_tables.sql
  8. pmaユーザを作成(ユーザ名、PWは適宜変更)
    mysql -uroot -p
    
    use phpmyadmin;
    GRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON `phpmyadmin`.* TO
    'pma'@localhost IDENTIFIED BY "pmapass";
  9. Apacheの設定をする。内容は例なので状況に応じて適宜設定してください。
        #ローカルからは許可するが、外部からはBASIC認証をかける。
        Alias /phpmyadmin /var/www/phpmyadmin
        <Location /phpmyadmin>
          <RequireAny>
            Require ip 127.0.0.1/32 192.168.0.0/24
          </RequireAny>
          AuthType Basic
          AuthName "SecretZone"
          AuthUserFile /etc/apache2/htpasswd_phpmyadmin
          require valid-user
        </Location>
    

Counter: 80, today: 1, yesterday: 1

このページの参照回数は、80です。