Image

知识库 → 在 Ubuntu 20.04 上安装和配置 phpMyAdmin

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

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


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


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

apt install php-mbstring
apt install phpmyadmin


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

  • [*]apache2
  • []lighttpd

在我们的例子中,服务器预装了 LAMP,我们选择 apache2。

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

重新启动 Web 服务以应用我们的安装配置:

/etc/init.d/apache2 restart
/etc/init.d/php7.4-fpm restart


2. 基本设置

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

mysql -u root -p

CREATE USER 'alldbuser'@'localhost' IDENTIFIED BY 'пароль'; GRANT ALL PRIVILEGES ON . TO 'alldbuser'@'localhost'; FLUSH PRIVILEGES;


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


3. 安全设置


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

nano /usr/share/phpmyadmin/.htaccess

AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user


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

htpasswd -c /etc/phpmyadmin/.htpasswd webdb-user

要在 Web 服务器级别应用设置,您需要更改 /etc/apache2/apache2.conf 文件中的全局设置,AllowOverride 值为 All,设置块应如下所示:

AllowOverride All
Require all granted


重新启动服务,具体取决于您的 Web 服务器:

/etc/init.d/apache2 restart
/etc/init.d/php7.4-fpm restart


现在,当您单击链接 http://server-ip/phpmyadmin 时,将出现一个窗口,用于输入您的登录名和密码。 在我们的例子中,登录名是 webdb-user。 您还可以添加一个配置,这样甚至不会提示来自未知 ip 地址的密码输入,并且用户会收到禁止消息,在文件中添加一行并指定您的静态 ip 地址:

nano /usr/share/phpmyadmin/.htaccess

AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user Allow from 77.88.99.11 22.33.44.55


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





暂时没有评论