CentOS已安装宝塔的情况下手动安装phpMyAdmin

本文讲述了在CentOS7.9服务器上,由于宝塔自带MySQL不可用,作者通过手动安装phpMyAdmin并与Nginx配合,实现安全访问的方法,包括配置文件修改和访问控制脚本的编写。
摘要由CSDN通过智能技术生成

CentOS 7.9.2009,宝塔7.9.4。

服务器中已有MySQL,可能不是通过宝塔安装的,而是手动安装的。用命令行可以正常进入MySQL查看和管理数据,说明已有的MySQL是正常的。在宝塔中点击数据库提示“未安装本地数据库,已隐藏无法使用的功能”,软件商店中已安装Nginx和PHP,从软件商店中安装phpMyAdmin 5.0.0提示“依赖以下软件,请先安装[mysql,nginx|apache|openlitespeed]”。

数据库名和用户名已打码

 

 

 既然宝塔上装不了,就想手动安装,查到的文章有的是yum安装,有的是解压phpMyAdmin压缩包再配置Nginx的root目录,弄完都打不开phpMyAdmin页面,403或404。

后来看到个视频,他是先在宝塔的网站中添加PHP站点(域名假设是test.com,也可以是自定义的IP+端口),然后在这个站点的根目录(如/www/wwwroot/test.com)中解压phpMyAdmin压缩包,得到/www/wwwroot/test.com/phpMyAdmin-4.9.11-all-languages,然后访问test.com/phpMyAdmin-4.9.11-all-languages就能打开phpMyAdmin页面,或者IP:端口/phpMyAdmin-4.9.11-all-languages也能打开(要提前放行端口),安全起见我把phpMyAdmin-4.9.11-all-languages文件夹重命名成一个很长的随机字符串,这样别人即使知道域名或IP+端口,也不知道具体的路径,无法访问数据库。

如果报错phpmyadmin mysqli_real_connect(): (HY000/2002): No such file or directory,进入phpMyAdmin-4.9.11-all-languages文件夹,cp config.sample.inc.php config.inc.php,将config.inc.php中$cfg['Servers'][$i]['host']的值由'localhost'改成'127.0.0.1'。参考链接

参考链接中还做了一个访问开关(如叫phpmyadmin.sh,要给可执行权限),需要通过phpMyAdmin访问数据库时,开启开关,不访问时关闭,关闭后即使知道访问地址也无法打开。原理就是修改当前站点自己的Nginx配置文件名(即子配置文件名),改完后服务器上的Nginx主配置没改,它还用旧名字去读取子配置文件,读取不到,所以打不开子网站(即新建的phpMyAdmin站点)。使用前将两处mv的路径改成自己的,然后将两处systemctl restart nginx都改成nginx -s reload,因为前者会重启Nginx,后者是重载配置但不重启。

#!/bin/bash 
# author: yasin
function enable_phpmyadmin(){
    mv /etc/nginx/conf.d/phpmyadmin.conf_bak /etc/nginx/conf.d/phpmyadmin.conf
    # systemctl restart nginx
    nginx -s reload
    echo "enable phpmyadmin success." 
}

function disable_phpmyadmin(){
    mv /etc/nginx/conf.d/phpmyadmin.conf /etc/nginx/conf.d/phpmyadmin.conf_bak
    # systemctl restart nginx
    nginx -s reload
    echo "disable phpmyadmin success." 
}

case $1 in
enable)
    enable_phpmyadmin;;
disable)
    disable_phpmyadmin;;
*)
    echo "Usage:`basename $0` {enable|disable}";;
esac

打开访问开关:./phpmyadmin.sh enable

关闭访问开关:./phpmyadmin.sh disable

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值