GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 20.04にApache(LAMP)を使用してphpMyAdminをインストールする方法

このチュートリアルでは、Ubuntu 20.04 LTSにApache、MariaDB、PHP7.4(LAMPスタック)を使用してphpMyAdminをインストールする方法を説明します。 phpMyAdminは、PHPで記述された無料のオープンソースのWebベースのデータベース管理ツールです。ユーザーがMySQLまたはMariaDBデータベースを管理するためのグラフィカルなWebインターフェイスを提供します。

phpMyAdminを使用すると、管理者は次のことができます。

  • データベースとテーブルを参照します。
  • データベースの作成、コピー、名前変更、変更、および削除;
  • テーブルの作成、コピー、名前の変更、変更、削除;
  • テーブルのメンテナンスを実行します。
  • フィールドの追加、編集、削除;
  • 複数のクエリであっても、SQLステートメントを実行します。
  • インデックスの作成、変更、削除;
  • テキストファイルをテーブルにロードします;
  • テーブルまたはデータベースのダンプを作成して読み取ります。
  • データをSQL、CSV、XML、Word、Excel、PDF、LaTeX形式にエクスポートします。
  • 複数のサーバーを管理します。
  • MySQLユーザーと権限を管理します;
  • 構成のヒントを使用してサーバー設定とランタイム情報を確認します。
  • MyISAMテーブルの参照整合性を確認します;
  • 例によるクエリ(QBE)を使用して複雑なクエリを自動的に作成します
  • 必要なテーブルを接続する;
  • データベースレイアウトのPDFグラフィックを作成します;
  • データベースまたはそのサブセットをグローバルに検索します。
  • BLOBデータを画像やダウンロードリンクとして表示するなど、事前定義された一連の機能を使用して、保存されたデータを任意の形式に変換します。
  • InnoDBテーブルと外部キーを管理します;

前提条件

このチュートリアルに従うには、ローカルコンピューターまたはリモートサーバーで実行されているUbuntu20.04OSが必要です。

VPS(仮想プライベートサーバー)をお探しの場合は、紹介リンクからVultrにアカウントを作成して、50ドルの無料クレジットを取得できます(新規ユーザーのみ)。また、ドメイン名を使用してphpMyAdminを設定する必要がある場合は、NameCheapからドメイン名を購入することをお勧めします。これは、価格が低く、whoisのプライバシー保護が無料で提供されるためです。

Ubuntu20.04にLAMPスタックがすでにインストールされていることを前提としています。そうでない場合は、次のチュートリアルを確認してください。

  • Ubuntu 20.04 LTSにLAMPスタック(Apache、MariaDB、PHP7.4)をインストールする方法

それが邪魔にならないように、phpMyAdminのインストールを始めましょう。

ステップ1:Ubuntu20.04にphpMyAdminをダウンロードしてインストールする

phpMyAdminはUbuntu20.04ソフトウェアリポジトリに含まれています。以下のコマンドで簡単にインストールできます。

sudo apt update
sudo apt install phpmyadmin

上記のコマンドは、PHP7拡張機能を含むすべての必要な依存関係をインストールします。インストール中に、構成するWebサーバーを選択するように求められます。 spaceを押す apache2を選択するためのバー。 (アスタリスクは、アイテムが選択されていることを示します)。次に、Tabを押します キーとEnter 選択を確認します。

次の画面で、Yesを選択します dbconfig-commonを使用してphpMyAdminのデータベースを構成するには 。

次に、phpmyadminのパスワードを設定します MariaDB/MySQLのユーザー。

この手順が完了すると、phpmyadminという名前の新しいデータベースが作成されます が作成され、データベースユーザーphpmyadmin このデータベースを管理するために必要な権限があります。私のように興味があれば、MariaDBにログインして、phpmyadminの権限を確認できます。 ユーザーが許可されました。

次のコマンドを使用して、MariaDBサーバーにログインできます。

sudo mysql -u root

次に、phpmyadminの権限を確認します ユーザー。

show grants for [email protected];

出力:

ご覧のとおり、ユーザーphpmyadmin データベースphpmyadminに対するすべての権限を持っています 。これで、次を実行して終了できます:

exit;

次に、次のコマンドを実行して、/etc/apache2/conf-enabled/phpmyadmin.confかどうかを確認します。 ファイルが存在します。

file /etc/apache2/conf-enabled/phpmyadmin.conf

インストールプロセスにエラーがない場合は、次のコマンド出力が表示されます。

/etc/apache2/conf-enabled/phpmyadmin.conf: symbolic link to ../conf-available/phpmyadmin.conf

このファイルがサーバーに存在しない場合は、phpMyAdminセットアップウィザードでApacheWebサーバーを選択しなかった可能性があります。次のコマンドで修正できます。

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

sudo a2enconf phpmyadmin

sudo systemctl reload apache2

ステップ2:サブディレクトリからphpMyAdminにアクセスする

phpMyAdminをインストールすると、構成ファイルが/etc/apache2/conf-enabled/phpmyadmin.confに配置されます。 、サブディレクトリを介してphpMyAdminにアクセスできます。同じUbuntu20.04サーバーにWordPressなどの他のWebアプリケーションをインストールした場合は、/phpmyadminを追加するだけです。 ブラウザのアドレスバーのドメイン名の後。

example.com/phpmyadmin

phpMyAdminがローカルのUbuntuコンピューターにインストールされている場合は、ブラウザーのアドレスバーに次のテキストを入力してphpMyAdminWebインターフェイスにアクセスできます。

localhost/phpmyadmin

接続が拒否されたり、完了に失敗した場合は、ファイアウォールがHTTPリクエストを妨げている可能性があります。 iptablesファイアウォールを使用している場合は、次のコマンドを実行してTCPポート80および443を開く必要があります。

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT

UFWファイアウォールを使用している場合は、このコマンドを実行してTCPポート80および443を開きます。

sudo ufw allow 80,443/tcp

これで、MariaDB/MySQLのユーザー名とパスワードを使用してphpMyAdminにログインできます。 rootとしてログインできない場合は、手順5に進んでこの問題のトラブルシューティングを行ってください。

ステップ3:サブドメインからphpMyAdminにアクセスする

Ubuntu 20.04サーバーに他のApache仮想ホストがない場合は、サブドメインを使用してphpMyAdminWebインターフェイスにアクセスすることをお勧めします。このようにして、HTTPSを有効にしてトラフィックを暗号化できます。

まず、phpMyAdmin用のApache仮想ホストを作成する必要があります。既存のphpMyAdmin構成スニペットをテンプレートとして使用できます。新しいファイルにコピーしましょう。

sudo cp /etc/apache2/conf-enabled/phpmyadmin.conf /etc/apache2/sites-available/phpmyadmin.conf

次に、Nanoなどのコマンドラインテキストエディタを使用して新しいファイルを編集します。

sudo nano /etc/apache2/sites-available/phpmyadmin.conf

このファイルには<VirtualHost>がありません タグがあるため、このファイルの先頭に次の行を追加する必要があります。 pma.example.comを置き換えます phpMyAdminの優先サブドメインを使用します。このサブドメインのDNSAレコードを作成することを忘れないでください。

<VirtualHost *:80>
    ServerName pma.example.com
    DocumentRoot /usr/share/phpmyadmin

    ErrorLog ${APACHE_LOG_DIR}/pma.error.log
    CustomLog ${APACHE_LOG_DIR}/pma.access.log combined

このファイルの最後に次の行を追加して、<VirtualHost>を閉じます。 タグ。

</VirtualHost>

ファイルを保存して閉じます。 (Nanoテキストエディタでファイルを保存するには、Ctrl+Oを押します。 、Enterキーを押して確認します。終了するには、Ctrl+Xを押します 。)次に、この仮想ホストを有効にします。

sudo a2ensite phpmyadmin.conf

この変更を有効にするには、ApacheWebサーバーをリロードします。

sudo systemctl reload apache2

これで、

を介してphpMyAdminWebインターフェイスにアクセスできるようになります。
pma.example.com

ログインフォームにユーザーの資格情報を入力する前に、HTTPSを有効にしましょう。

ステップ4:Apacheを使用してphpMyAdminでHTTPSを有効にする

phpMyadmin Webインターフェースを保護するために、無料のLet’sEncryptTLS証明書をインストールできます。次のコマンドを実行して、Ubuntu 20.04ソフトウェアリポジトリからLet’s Encryptクライアント(certbot)をインストールします。

sudo apt install certbot python3-certbot-apache

Python3-certbot-apache Certbot用のApacheプラグインです。次のコマンドを実行して、TLS証明書を取得してインストールします。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple -d pma.example.com --email [email protected]

場所:

  • –apache: Apacheオーセンティケーターとインストーラーを使用する
  • –同意する :Let'sEncryptの利用規約に同意する
  • –リダイレクト :301の永続的なリダイレクトを追加してHTTPSを適用します。
  • –hsts :すべてのHTTP応答にStrict-Transport-Securityヘッダーを追加します。
  • –staple-ocsp :OCSPステープリングを有効にします。
  • –ステープルで留める必要があります :OCSPMustStaple拡張機能を証明書に追加します。
  • -d フラグの後には、コンマで区切られたドメイン名のリストが続きます。最大100個のドメイン名を追加できます。
  • –メール :登録と復旧の連絡に使用されるメール。

EFF(Electronic Frontier Foundation)からのメールを受信するかどうかを尋ねられます。 YまたはNを選択すると、TLS証明書が自動的に取得および構成されます。これは、以下のメッセージで示されます。

ステップ5:phpMyAdminログインエラーのトラブルシューティング

MariaDBのrootアカウントでphpMyAdminにログインしようとすると、次のエラーが表示される場合があります。

#1698 - Access denied for user 'root '@'localhost'

または

mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'

ユーザーphpmyadminでログインした場合 、上記のエラーは表示されません。ただし、ユーザーphpmyadmin phpmyadminの管理にのみ使用できます データベース。エラーの原因は、デフォルトでは、MariDBrootユーザーがmysql_native_passwordを使用する代わりに、unix_socketプラグインを介して認証されることです。 プラグイン。この問題を解決するために、別の管理者ユーザーを作成し、新しい管理者ユーザーにすべての権限を付与できます。

コマンドラインからMariaDBサーバーにログインします。

sudo mysql -u root

パスワード認証を使用して管理者ユーザーを作成します。

create user [email protected] identified by 'your-preferred-password';

すべてのデータベースに対するすべての権限を付与します。

grant all privileges on *.* to [email protected] with grant option;

特権をフラッシュして終了します;

flush privileges;

exit;

これで、adminを使用してphpMyAminにログインできます。 アカウントを作成し、すべてのデータベースを管理します。


Ubuntu
  1. Ubuntu18.04にLAMPスタックをインストールする方法

  2. Apache を使用して Ubuntu 20.04 に phpMyAdmin をインストールする

  3. Apache を使用して Ubuntu 22.04 に phpMyAdmin をインストールする

  1. Ubuntu18.04でApacheを使用してphpMyAdminをインストールして保護する方法

  2. Apacheを使用してUbuntu20.04にPrestaShopをインストールする方法

  3. LAMPを使用してUbuntu16.04/Ubuntu14.04にWordPressをインストールします

  1. UbuntuにLAMPスタックを使用してphpMyAdminをインストールする方法

  2. Ubuntu20.04にApacheを使用してphpMyAdminをインストールします

  3. Debian 10 BusterにApache(LAMP)を使用してphpMyAdminをインストールします