phpMyAdminは、MySQLサーバーとMariaDBサーバーを管理するためのWebベースの管理ツールです。これは、作成、削除、クエリ、テーブル、列、リレーション、インデックス、ユーザー、権限などのデータベースアクティビティの実行に役立ちます。
このガイドは、CentOS 7 /RHEL7にApacheを使用してphpMyAdminをインストールするのに役立ちます。
前提条件
phpMyAdminにはPHPv7.13以降が必要であり、MySQL /MariaDBv5.5以降をサポートしています。このガイドでは、phpMyAdminにPHP7.3を使用します。
MySQL/MariaDBサーバーのインストール
phpMyAdminをインストールする前に、システムにデータベースインスタンスをインストールして接続します。スタンドアロンデータベースとしてインストールすることも、LAMPスタックの一部としてインストールすることもできます。
データベースをインストールしてから、以下に示す必要なパッケージをインストールします。
スタンドアロンデータベース
読む: CentOS 7 /RHEL7にMariaDBをインストールする方法
yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm yum install --enablerepo=remi-php73 -y httpd php php-cli php-mysqlnd
LAMPスタック
読む: CentOS 7 /RHEL7にLAMPスタックをインストールする方法
phpMyAdminをインストール
phpMyAdminはEPELで利用できます。したがって、EPELリポジトリrpmをインストールして、システムにEPELリポジトリを構成します。
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
次のコマンドを使用してphpMyAdminをインストールします。
yum install -y --enablerepo=remi-php73 phpmyadmin
phpMyAdminを構成する
phpMyAdminは、設定ファイルを/etc/httpd/conf.dディレクトリに配置します。アクセスのルールと許可があります。
デフォルトでは、phpMyAdminにはローカルホストからのみアクセスできます。外部マシンからphpMyadminにアクセスするには、phpMyAdmin.confファイルを編集する必要があります。
vi /etc/httpd/conf.d/phpMyAdmin.conf
CentOS 7では、Webアクセスはmod_authz_core.cモジュールによって管理されます。そのため、変更しても許可または拒否のルールは機能しません。
デフォルトの設定は次のようになります。
# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
<Directory /usr/share/phpMyAdmin/setup/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory> Requireip127.0.0.1とRequireip::1をコメントアウトしてから、コメント行のすぐ下に「Requireallgranted」を追加してください。変更後の内容は以下のようになります。
# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
Require all granted
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
<Directory /usr/share/phpMyAdmin/setup/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
Require all granted
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory> Apacheサービスを再起動します。
systemctl restart httpd
ファイアウォール
外部ネットワークからのHTTPリクエストを許可するようにファイアウォールを構成します。
firewall-cmd --permanent --add-service=http firewall-cmd --reload
phpMyAdminにアクセス
ブラウザからphpMyAdminにアクセスします。URLは次のようになります。
http:// localhost / phpMyAdminまたは
http:// your-ip-address / phpMyAdminルート(DB管理者)または任意のデータベースユーザーでログインします。
データベースページが表示されます。
結論
それで全部です。 CentOS 7 /RHEL7にApacheを使用してphpMyAdminをインストールする方法を学んだことを願っています。コメントセクションでフィードバックを共有してください。