linux centos7安装phpMyAdmin详解,以及解决各种bug问题

时间:2022-12-21 08:19:19

使用php和mysql开发网站的话,phpmyadmin和navicat是目前非常好的mysql管理工具,但是phpmyadmin最主要是免费开源,目前很多集成的开发环境都会自带phpmyadmin,例如windows系统下的wampserver,这是款不错的集成开发软件,链接:http://www.wampserver.com/,想学习php开发的可以下载。当然很多虚拟主机都自带这样的mysql管理工具,配置很简单,接下来在linux服务器上配置phpmyadmin

1. 安装环境介绍:

①phpMyAdmin官方下载地址:http://www.phpmyadmin.net

②linux系统:centos7.0

  ③服务器:apache2.0

  ④开发语言:php7.0

  

2. 下载phpMyAdmin

  # mkdir /你想要放置的目录      eq:mkdir /home/phpmyadmin

  # wget https://files.phpmyadmin.net/phpMyAdmin/4.8.3/phpMyAdmin-4.8.3-all-languages.zip    //去到官方地址,在右侧有个下载按钮,鼠标右键点击,“复制链接地址”);

3.安装phpMyAdmin

  # unzip phpMyAdmin-4.8.3-all-languages.zip                      //解压压缩包

  # cp -r phpMyAdmin-4.8.3-all-languages/* /home/phpmyadmin  //复制全部文件到phpmyadmin目录下

  ①修改你的httpd文件,使phpmyadmin能够被远程访问

# 监听8080端口
Listen # 将8080端口绑定到/home/phpmyadmin目录
<VirtualHost *:>
ServerName 127.0.0.1
DocumentRoot "/home/phpmyadmin"
<Directory "/home/phpmyadmin/">
options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

  # systemctl restart httpd             //重启apache

  # firewall-cmd --add-port=8080/tcp --permanent  //开放8080端口

  # firewall-cmd --reload                //重启防火墙

4.测试phpMyAdmin

  经过上面的操作,通过你的域名加端口就能访问phpMyAdmin。

linux centos7安装phpMyAdmin详解,以及解决各种bug问题

5.后续bug解决(重头戏)

linux centos7安装phpMyAdmin详解,以及解决各种bug问题

linux centos7安装phpMyAdmin详解,以及解决各种bug问题

下面我们来一个一个地将它们解决了!

①:Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.
session_start(): open(SESSION_FILE, O_RDWR) failed: Permission denied (13)

这句话的大概意思是:开启session失败,没有session目录的权限,访问被拒绝。

解决办法:chown -R usergroup:user /var/lib/php/session     //《usergroup:user》 指的是你apache所在的《用户组:用户》,编辑httpd.conf即可看到,有个user搜索下就能找到

②:mysqli_real_connect(): Headers and client library minor version mismatch. Headers:50556 Library:50641

这个问题说起来就很复杂了,主要是因为phpmyadmin设置的mysql头部版本和mysql本身的版本不一致导致的,当然这里面还有php的事,下面直接给出解决办法:

亲测有效的方法1:

  # yum remove php70w-mysql     //卸载原来的php连接mysql的模块

  # yum install php70w-mysqlnd    //安装新的php连接mysql模块

亲测有效的方法2:

  # 这个问题主要是mysqli的连接方式有问题,因为我使用的是php7.0的版本,所以将连接方法改成pdo就能处理了。

③The mbstring PHP extension was not found and you seem to be using a multibyte charset. Without the mbstring extension phpMyAdmin is unable to split strings correctly and it may result in unexpected results.

这个主要是缺少mbstring组件问题,用yum把它安装回来就行了

  # yum -y install php70w-mbstring

④The configuration file now needs a secret passphrase (blowfish_secret).

这个主要是我们从官方下载回来的phpmyadmin是最初始化的版本,里面还需要我们对它进行配置,主要有两处地方:

1.

  # vim /home/phpmyadmin/config.sample.inc.php

找到第17行$cfg['blowfish_secret'] = '';  然后填写至少32位的字符串,例如abcdl22asidlk34fja13213vhahfad2498,这里随便填,不过一定要32位以上!

2.

  # vim /home/phpmyadmin/libraries/config.default.php

找到第108行$cfg['blowfish_secret'] = '';  同样填写至少32位的字符串,要和上面的一致。

⑤The $cfg['TempDir'] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.

这个主要说的是phpmyadmin的缓存路径不存在,或者说是没有权限,so

解决办法:

  # mkdir /home/phpmyadmin/tmp            //在phpadmin目录下创建一个tmp目录

  # chown -R usergroup:user /home/phpmyadmin/tmp    //让apache用户获得tmp目录的使用权限

最后提醒的就是记得重启apache

 # systemctl restart httpd

每次操作完解决办法,最好重启下apache,不然有时会看不到效果,以为问题还没解决。

如果上述解决办法或者仍有其他问题的,可以找我帮忙解决!FREE.