如何在Ubuntu 18.04上使用Nginx安装phpMyAdmin

phpMyAdmin是一个基于PHP的开源工具,用于通过基于Web的界面管理MySQL和MariaDB服务器。

phpMyAdmin允许您与MySQL数据库进行交互,管理用户帐户和特权,执行SQL语句,以各种数据格式导入和导出数据等等。

本教程介绍了如何在Ubuntu 18.04上使用Nginx安装phpMyAdmin。

先决条件

在继续本教程之前,请确保满足以下先决条件:

  • 在您的Ubuntu服务器上安装了LEMP(Linux,Nginx,MySQL和PHP 7)。
  • 以具有sudo特权的用户身份登录。

尽管不是必需的,但强烈建议您通过HTTPS访问phpMyAdmin实例。 如果您的站点上未启用SSL,请查看我们的文章有关如何在Ubuntu 18.04上使用Let’s Encrypt保护Nginx。

在Ubuntu上安装phpMyAdmin#

安装phpMyAdmin是一个相当简单的任务。 首先更新软件包列表:

sudo apt update

接下来,运行以下命令从默认的Ubuntu存储库安装phpMyAdmin软件包:

sudo apt install phpmyadmin

在安装phpMyAdmin之前,请确保已在系统上安装了Nginx和PHP FPM。

安装程序将要求您选择应自动配置为运行phpMyAdmin的Web服务器。 没有选择Nginx的选项,请按 TAB 选择 OK 然后 Enter。 我们将在下一节中配置Nginx。

接下来,安装程序将询问您是否要使用 dbconfig-common 设置数据库的工具。 选择 Yes 并击中 Enter

配置phpmyadmin数据库

输入phpMyAdmin的密码以在数据库中注册,然后选择 OK 然后按 Enter

配置phpmyadmin密码

系统将提示您确认密码,输入相同的密码,然后选择 OK 然后按 Enter

配置phpmyadmin确认密码

至此,phpMyAdmin已经安装在您的Ubuntu服务器上。

创建一个管理MySQL用户#

在运行MySQL 5.7(及更高版本)的Ubuntu系统中,root用户设置为使用 auth_socket 默认情况下使用身份验证方法。

auth_socket 该插件对通过Unix套接字文件从本地主机连接的用户进行身份验证。 这意味着您不能通过提供密码来作为根身份验证。

我们将创建一个新的管理MySQL用户,而不是更改MySQL用户root的身份验证方法。 该用户将具有与root用户相同的特权,并将被设置为使用 mysql_native_password 身份验证方法。

我们将使用该用户登录phpMyAdmin仪表板,并在MySQL服务器上执行管理任务。

首先以root用户身份登录到MySQL服务器:

sudo mysql

在MySQL Shell中执行以下命令,这将创建一个新的管理用户并授予适当的权限:

CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'change-with-your-secure-password';GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

在此示例中,我们将管理用户命名为 padmin。 您可以使用任何喜欢的名称,只需确保设置一个强密码即可。

配置Nginx和phpMyAdmin#

有几种方法可以配置Nginx以提供phpMyAdmin文件。 如果已经设置了域的服务器块来满足PHP请求,则只需创建一个从phpMyAdmin安装文件到域文档根目录的符号链接。

在本指南中,我们将创建一个片段,我们可以将其包含在任何Nginx服务器块文件中。

打开您的文本编辑器并创建以下文件:

sudo nano /etc/nginx/snippets/phpmyadmin.conf

粘贴以下内容:

/etc/nginx/snippets/phpmyadmin.conf

location /phpmyadmin {
    root /usr/share/;
    index index.php index.html index.htm;
    location ~ ^/phpmyadmin/(.+.php)$ {
        try_files $uri =404;
        root /usr/share/;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include /etc/nginx/fastcgi_params;
    }

    location ~* ^/phpmyadmin/(.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
        root /usr/share/;
    }
}

确保使用正确的套接字路径或地址/端口 fastcgi_pass 指示。

保存文件并关闭编辑器。

现在,您可以使用以下命令将以下行添加到要访问phpMyAdmin的每个域的服务器块中: domain.com/phpmyadmin

include snippets/phpmyadmin.conf;

这是一个例子:

/etc/nginx/conf.d/domain.com.conf

server {

    # . . . other code

    include snippets/phpmyadmin.conf;

    # . . . other code 

}

访问phpMyAdmin#

要访问phpMyAdmin界面,请打开您喜欢的浏览器,然后输入服务器的域名或公共IP地址,然后输入 /phpmyadmin

http(s)://your_domain_or_ip_address/phpmyadmin

输入管理用户登录凭据,然后单击 Go

phpmyadmin登录

登录后,您将看到phpMyAdmin仪表板,其外观如下所示:

phpmyadmin界面

结论#

恭喜,您已经在Ubuntu 18.04服务器上成功安装了phpMyAdmin。 现在,您可以开始创建MySQL数据库,用户和表,并执行各种MySQL查询和操作。

如有疑问,请在下面发表评论。

ubuntu phpmyadmin mysql mariadb nginx php

Sidebar