zoukankan      html  css  js  c++  java
  • 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.

  • 相关阅读:
    List中的get(i)
    报空指针异常
    json数据请求
    springmvc中的字典表
    json的解析
    httpClient返回的数据类型,怎么弄
    java中webService
    红外遥控协议(NEC)
    很奇怪的GPIO地址
    emacs命令备忘
  • 原文地址:https://www.cnblogs.com/sunshine-H/p/9592668.html
Copyright © 2011-2022 走看看