linux centos7安装phpMyAdmin详解,以及解决各种bug问题
使用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 # 将8080端口绑定到/home/phpmyadmin目录 <VirtualHost *:8080> 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。
5.后续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.