Ubuntu 20.04服务器如何安装配置phpMyAdmin?phpMyAdmin安装配置教程

在Ubuntu 20.04服务器上安装phpMyAdmin,最稳妥的方案是通过Apt包管理器直接安装Nginx或Apache配合PHP-FPM,并配置Nginx反向代理以实现高效访问。

很多运维新手在面对Linux服务器时,往往对图形化管理数据库感到陌生,甚至因为权限配置错误导致服务无法启动,phpMyAdmin作为全球最流行的MySQL/MariaDB Web管理工具,其核心价值在于降低数据库操作门槛,对于使用Ubuntu 20.04 LTS(长期支持版)的服务器用户而言,这一版本提供了稳定的软件源和较长的维护周期,是生产环境的首选,本文将通过具体的命令行操作和配置细节,帮助你从零搭建一个安全、高效的phpMyAdmin环境。

数据库管理工具PHPMyAdmin的安装与使用(MySQL)
加载中
数据库管理工具PHPMyAdmin的安装与使用(MySQL)

Ubuntu 20.04服务器安装phpMyAdmin前的环境准备

在开始安装之前,必须确保服务器已经具备了运行Web服务的基础条件,phpMyAdmin是一个基于PHP的Web应用,因此它依赖于Web服务器(如Nginx或Apache)和PHP解释器,在Ubuntu 20.04中,默认的软件源可能不包含最新版的phpMyAdmin,或者版本较旧,因此建议先更新系统包列表。

更新系统软件源与基础依赖

打开终端,首先执行以下命令以获取最新的软件包索引:

sudo apt update

升级已安装的软件包,确保系统处于最新状态:

sudo apt upgrade -y

这一步至关重要,因为许多安全补丁和依赖库更新都包含在此次操作中,业内专家指出,保持系统底层库的一致性,能显著减少后续安装过程中出现的依赖冲突问题。

选择Web服务器:Nginx还是Apache?

虽然Apache配置phpMyAdmin更为简单(通常只需启用mod),但Nginx因其高并发处理能力和低内存占用,成为许多高性能服务器的主流选择,如果你尚未安装Web服务器,可以参考以下两种场景:

  • 已有Nginx环境,如果你已经部署了WordPress或其他PHP应用,直接使用现有的Nginx配置即可,无需重复安装。
  • 全新服务器,建议安装Nginx、PHP-FPM以及MySQL/MariaDB,安装命令如下:
  • Ubuntu 20.04服务器如何安装配置phpMyAdmin?phpMyAdmin安装配置教程

sudo apt install nginx php-fpm php-mysql mariadb-server -y

安装完成后,启动Nginx和MariaDB服务,并设置开机自启:

sudo systemctl start nginx mariadb
sudo systemctl enable nginx mariadb

Ubuntu 20.04服务器安装phpMyAdmin详细步骤

当基础环境就绪后,即可进行phpMyAdmin的安装,在Ubuntu 20.04的官方仓库中,phpMyAdmin通常作为独立包存在。

通过Apt直接安装phpMyAdmin

执行以下命令进行安装:

sudo apt install phpmyadmin -y

在安装过程中,系统会弹出交互式配置界面,请按以下步骤操作:

  1. 选择Web服务器:由于我们使用的是Nginx,且Nginx不直接处理PHP请求(需通过FastCGI),因此在此界面中不要选择任何Web服务器(如apache2或lighttpd),直接按空格键取消选择,然后确定。
  2. 配置数据库:系统会询问是否使用dbconfig-common配置数据库,选择
  3. 设置密码:为phpMyAdmin设置一个专用的数据库管理密码,请务必使用强密码,包含大小写字母、数字和特殊字符。

安装完成后,phpMyAdmin的文件通常位于/usr/share/phpmyadmin目录,Nginx默认不会自动识别这个目录,因此需要手动创建符号链接或配置虚拟主机。

配置Nginx反向代理

为了让Nginx能够访问phpMyAdmin,我们需要创建一个配置文件,在/etc/nginx/sites-available/目录下新建一个文件,例如phpmyadmin

sudo nano /etc/nginx/sites-available/phpmyadmin
粘贴到文件中,注意修改server_name为你的服务器IP或域名:

server {
listen 80;
server_name your_server_ip_or_domain;

root /usr/share/phpmyadmin;
index index.php;
location / {
    try_files $uri $uri/ =404;
}
location ~ .php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
location ~ /^/(doc|sql|setup)/ {
    deny all;
}

Ubuntu 20.04服务器如何安装配置phpMyAdmin?phpMyAdmin安装配置教程

保存并退出编辑器后,启用该站点并测试配置:

sudo ln -s /etc/nginx/sites-available/phpmyadmin /etc/nginx/sites-enabled/
sudo nginx -t

如果测试通过,重启Nginx服务使配置生效:

sudo systemctl restart nginx

通过浏览器访问http://your_server_ip/phpmyadmin,即可看到登录界面。

Ubuntu 20.04服务器安装phpMyAdmin后的安全加固策略

默认安装后的phpMyAdmin存在较高的安全风险,因为任何人都可以尝试暴力破解登录密码,安全加固是部署后的必做步骤。

启用Nginx基本身份认证

在Web服务器层面增加一层密码保护,可以有效阻挡自动化扫描攻击,使用Apache工具包中的htpasswd命令生成密码文件:

sudo apt install apache2-utils -y
sudo htpasswd -c /etc/nginx/.htpasswd admin

系统会提示你输入并确认密码,修改Nginx配置文件,在server块中添加认证指令:

auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/.htpasswd;

重启Nginx后,访问phpMyAdmin时将首先弹出浏览器自带的登录框,验证通过后才进入phpMyAdmin界面。

限制访问IP地址

如果服务器有固定的公网IP,或者你仅在公司网络下管理数据库,可以通过Nginx配置限制来源IP,在server块中添加:

allow your_static_ip;
deny all;

这样,只有指定IP的设备才能访问phpMyAdmin,极大提升了安全性,行业共识认为,多层防御(如IP限制+HTTP认证+强密码)是应对Web应用攻击的最佳实践。

常见问题排查与优化建议

在实际操作中,用户可能会遇到登录失败或页面加载缓慢的问题,以下是针对Ubuntu 20.04环境的常见解决方案。

登录提示"访问被拒绝"或"未知错误"

这通常与MySQL/MariaDB的用户权限或认证插件有关,近年来,MariaDB默认使用unix_socket认证插件,导致phpMyAdmin无法通过密码登录,解决方法是修改MySQL用户配置:

Ubuntu 20.04服务器如何安装配置phpMyAdmin?phpMyAdmin安装配置教程

sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
FLUSH PRIVILEGES;

退出MySQL后,刷新phpMyAdmin页面即可使用密码登录。

性能优化:调整PHP内存限制

对于大型数据库,默认的PHP内存限制可能导致页面超时,编辑/etc/php/7.4/fpm/php.ini(版本号可能因PHP版本而异),调整以下参数:

  • memory_limit:建议设置为256M或更高。
  • upload_max_filesize:根据导入SQL文件的大小调整,建议64M
  • post_max_size:应大于或等于upload_max_filesize。

修改后,重启PHP-FPM服务:

sudo systemctl restart php7.4-fpm

Ubuntu 20.04服务器安装phpMyAdmin常见问题解答

Ubuntu 20.04服务器安装phpMyAdmin后无法访问怎么办?

首先检查Nginx服务是否正常运行,使用systemctl status nginx查看状态,确认防火墙是否开放了80端口,Ubuntu默认使用UFW防火墙,需执行sudo ufw allow 'Nginx Full',检查Nginx配置文件语法是否正确,nginx -t命令可快速验证。

如何升级Ubuntu 20.04上的phpMyAdmin版本?

phpMyAdmin的版本更新通常通过Apt包管理器完成,执行sudo apt update刷新软件源,然后运行sudo apt upgrade phpmyadmin即可升级到最新版本,若官方源版本过旧,可考虑添加第三方PPA源或手动下载源码编译安装,但后者维护成本较高。

Ubuntu 20.04服务器安装phpMyAdmin与宝塔面板冲突吗?

宝塔面板(BT Panel)已内置Nginx/Apache和PHP环境,并提供了图形化的phpMyAdmin管理入口,若在已安装宝塔的服务器上再次通过Apt安装phpMyAdmin,会导致端口冲突或路径覆盖,建议直接使用宝塔面板后台的"数据库"功能中的phpMyAdmin入口,或通过宝塔的"网站"功能手动配置Nginx虚拟主机指向/usr/share/phpmyadmin,避免重复安装带来的管理混乱。

首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/406596.html

(0)
个人ca证书怎么验证?个人ca证书验证步骤详解
上一篇 2026年6月21日 09:15
大模型的对数似然Log Likelihood是什么?大模型训练损失下降慢怎么办
下一篇 2026年6月21日 09:20

相关推荐

  • CC攻击和DDoS攻击有什么区别?如何有效防御CC攻击

    CC攻击和DDoS攻击的核心区别在于:前者伪装成正常用户请求,专门针对应用层消耗服务器资源;后者则是通过海量虚假流量淹没网络带宽,属于底层基础设施层面的暴力压制,很多人容易把这两者混为一谈,觉得都是“攻击”,其实它们在技术原理、攻击目标以及防御难点上有着本质的不同,理解这种区别,对于企业制定网络安全策略至关重要……

    2026年6月17日
    1600
  • 广州FPGA服务器硬盘空间怎么看?如何查看服务器硬盘容量

    查看广州FPGA服务器硬盘空间的核心方法在于综合运用系统级指令与硬件管理工具,通过命令行快速获取实时数据,并结合RAID卡管理界面确认物理存储状态,同时需特别关注FPGA加速器挂载的专用存储分区,最关键的操作是区分“物理硬盘容量”与“文件系统可用空间”,并定期监控inode使用率,防止因小文件过多导致存储“假死……

    2026年3月30日
    6900
  • 广安云原生架构方案讲解,广安云原生架构方案有哪些优势

    广安企业数字化转型的核心在于构建弹性、敏捷且高可用的IT基础设施,云原生架构正是实现这一目标的最优解,通过容器化、微服务与DevOps的深度融合,企业能够将资源利用率提升40%以上,业务上线周期缩短至周级,从而在激烈的市场竞争中占据技术高地,广安云原生架构方案讲解的核心逻辑,在于利用技术红利打破传统架构的僵化瓶……

    2026年4月2日
    8200
  • 互联网区块链溯源标准是什么?区块链溯源技术有哪些应用场景

    互联网区块链溯源标准的核心在于建立不可篡改的数据信任机制,通过哈希上链与多方共识实现从生产到消费的全链路透明化,目前主流方案已能支持毫秒级验真与合规审计,为什么传统溯源在2026年不再够用过去我们习惯在商品包装上贴个二维码,扫出来看个网页,这种模式看似方便,实则漏洞百出,网页内容可以被后台随意修改,二维码可以被……

    2026年6月1日
    4100
  • html5服务器数据库怎么搭建?html5数据库有哪些

    HTML5服务器数据库并非单一技术,而是指基于Web标准的前后端协同架构,其核心在于利用浏览器本地存储(如IndexedDB)与云端关系型/非关系型数据库的实时同步,实现离线可用与数据一致性,在2026年的技术语境下,传统的“客户端-服务器”二分法正在消解,开发者不再单纯依赖后端API拉取数据,而是将数据库逻辑……

    2026年6月10日
    1900
  • 广州ECS云服务器租赁费用,广州ECS云服务器一年多少钱

    广州ECS云服务器租赁费用主要由实例规格、带宽配置、存储类型及购买时长四大核心要素决定,企业通过精准匹配业务需求与合理利用厂商优惠政策,完全可以将年度IT基础设施成本控制在预算范围的15%-20%以内,同时保障业务的高可用性,成本控制并非单纯追求低价,而是在性能、稳定性与价格之间寻找最佳平衡点,实例规格:算力成……

    2026年3月30日
    6800
  • 互联网区块链仓单应用研究,区块链仓单如何确权?

    互联网区块链仓单应用的核心价值在于通过技术手段实现货权的确权、流转与融资闭环,彻底解决传统供应链金融中的信任痛点与操作风险,传统仓储模式中,重复质押、空单欺诈以及货权不清晰是长期困扰实体经济的顽疾,随着数字化转型的深入,将区块链技术与物联网(IoT)结合,正在重塑仓储物流的底层逻辑,这不仅是技术的升级,更是商业……

    2026年6月4日
    2800
  • 互佳智慧无人停车机场是什么?无人停车场系统有哪些

    互佳智慧无人停车机场通过全自动化机械调度与AI视觉识别技术,实现了“车进库、人离开”的极致便捷,解决了城市核心区停车难、找车难及车辆剐蹭痛点,是当前高密度城区提升空间利用率的最优解,传统停车痛点与无人机场的颠覆性对比空间利用率的本质差异从平面到立体的空间革命传统地面停车场或普通地下车库,车辆行驶通道宽敞,车位之……

    2026年6月2日
    2100
  • 互动3d增强现实屏怎么用?3d增强现实屏原理

    互动3D增强现实屏通过空间计算与实时渲染技术,将虚拟信息精准叠加于物理环境,显著提升用户沉浸感与交互效率,是当前线下商业展示与数字营销的首选解决方案,想象一下,你站在一家汽车展厅里,不需要佩戴笨重的头显,只需挥挥手,一辆虚拟汽车就能在你面前拆解、旋转,甚至模拟驾驶视角,这种体验不再局限于科幻电影,而是正在成为零……

    服务器宽带 2026年6月1日
    2800
  • 如何用HTML按钮打开网站?html按钮点击跳转链接

    在HTML中,只需使用标准的标签配合target属性,或JavaScript的window.open方法,即可实现点击按钮后在新窗口或当前窗口打开指定网站,对于许多刚接触前端开发的初学者而言,”按钮打开网站”看似是一个基础操作,但在实际工程落地时,往往因为对浏览器行为、用户体验以及SEO权重的理解偏差,导致实现……

    服务器宽带 2026年6月12日
    2000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注