Image

知识库 → 在 Lemp Debian 12 上安装和配置 phpMyAdmin

[虚拟服务器]
出版日期: 12.07.2023

要通过 Web 界面处理数据库,有一个 Web 编辑器 phpMyAdmin。 此工具连接到 MariaDB 数据库并显示现有数据库,允许您创建新数据库、编辑表中的数据。 总的来说,一切都和在 mysql 控制台中可以完成的一样,但是更加方便和清晰,尤其是在经常处理数据的时候。 考虑在预配置 Nginx + MariaDB + PHP (LEMP) 的 Debian 12 Linux 服务器上安装 phpMyAdmin.

我们从 root 用户进行所有设置,如果您使用的是普通用户,请在命令前添加 sudo.

1. 安装必要的组件和数据库编辑器本身

apt install php-mbstring
apt install phpmyadmin


在安装过程中,将提示用户选择应该为哪个 Web 服务器配置编辑器。

  • []apache2
  • []lighttpd

在我们的例子中,服务器预装了 LEMP,我们将两个字段留空并单击确定。

接下来,将建议为数据库编辑器本身创建一个数据库,其中将存储编辑器的用户设置和其操作所需的其他数据。 在这里我们选择 Yes 选项,在下一个窗口中将要求您提供 phpmyadmin 用户的密码。 我们输入密码,在接下来的窗口中确认,避免输入错误。

2. 基本设置

让我们通过链接 http://server-ip/phpmyadmin 来检查工作,我们可以输入任何数据库的登录名和密码,例如,新创建的,我们设置的 phpmyadmin 登录名和密码。 有时,为了方便,需要同时操作多个数据库,为了在一个用户下显示它们,我们需要创建一个并委托root用户的权限。

mysql -u root -p

CREATE USER 'alldbuser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON . TO 'alldbuser'@'localhost'; FLUSH PRIVILEGES;

现在,在 alldbuser 用户下授权时,将显示在该服务器上创建的所有数据库。

如果需要为root用户设置密码,使用以下命令:

mysql -u root
use mysql;
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOURNEWPASSWORD';
FLUSH PRIVILEGES;
exit

在 nginx web 服务器的根目录下添加 phpMyAdmin 文件夹的链接:

ln -s /usr/share/phpmyadmin /usr/share/nginx/html

3. 安全设置
为了保护数据库编辑器免受猜测密码和潜在漏洞的影响,让我们在没有服务器的级别添加授权。

vi /etc/nginx/conf.d/default.conf

location /phpmyadmin { auth_basic "Admin Login"; auth_basic_user_file /etc/nginx/pma_pass; }

添加用户并为其指定密码:

htpasswd -c /etc/nginx/pma_pass pma_username

重启 nginx 服务:

systemctl restart nginx

现在,当您单击链接 http://server-ip/phpmyadmin 时,将出现一个窗口,用于输入您的登录名和密码。 在我们的例子中,登录名将是 pma_username。

设置完成,我们强烈建议您仅使用带有 SSL 证书的 https 协议输入密码,以避免数据被拦截。





暂时没有评论