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端口绑定到/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。

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.
linux centos7安装phpMyAdmin详解,以及解决各种bug问题的更多相关文章
- Linux pip安装使用详解
简介 pip是Python有它自己的包管理工具,与yum和apt-get相似. 安装步骤: 1.下载get-pip.py:https://bootstrap.pypa.io/get-pip.py 2. ...
- linux下安装apache详解
下载httpd-2.2.6.tar.bz2 把httpd-2.2.6.tar.bz2放到/soft 下[root@localhost ~]#cd /soft[root@localhost soft] ...
- centos7安装mongodb详解
记录一下linux下安装mongodb数据库过程. 安装mongodb #下载linux版本的tar文件# 例如笔者下载的是:mongodb-linux-x86_64-rhel70-3.4.4.tg ...
- Linux centos7 安装 phpMyAdmin
yum install httpd php mariadb-server –y搭建lamp运行环境之后安装phpMyAdmin遇到的一些问题记录一下 1.官网下载phpMyAdmin压缩包 wget ...
- linux下安装gcc详解
1.了解一下gcc 目前,GCC可以用来编译C/C++.FORTRAN.JAVA.OBJC.ADA等语言的程序,可根据需要选择安装支持的语言.我自己linux上是4.1.2版本,是不支持openMP的 ...
- Linux离线安装Ruby详解
很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装Ruby,则不能提供yum命令进行在线安装了,这个时候我们就需要下载安装包进行离线安装.本文主要简单介绍如果离线安 ...
- Linux 离线安装Rubygems详解
很多时候我们会发现,真实的生成环境很多都没有外网,只有内网环境,这个时候我们又需要安装RubyGems,则不能提供yum命令进行在线安装了,这个时候我们就需要下载安装包进行离线安装.本文主要简单介绍如 ...
- TVD$XTAT在linux下安装使用详解
扩展跟踪文件分析工具 (TVD$XTAT)是个命令行工具.和TKPROF一样,主要目的是把原始跟踪文件作为输入内容生成一个格式化的文件作为输出内容.输出文件可以是HTML或是文本文件.界面非常友好,推 ...
- linux 软件安装目录详解
我一般会在/opt目录下创建 一个software目录,用来存放我们从官网下载的软件格式是.tar.gz文件,或者通过 wget+地址下载的.tar.gz文件 执行解压缩命令,这里以nginx举例 t ...
随机推荐
- Android Activity 去掉标题栏及全屏显示
默认生成的活动(Activity)界面中包含标题栏,并带有状态栏.有时不需要这两个控件. 1.去掉标题栏 (三种方法) a:在setContentView()方法前 添加:requestWindowF ...
- (N)IO Frameworks in Java
(N)IO Frameworks in Java – Thread.currentThread.join() https://www.ashishpaliwal.com/blog/2008/10/ni ...
- python console
print(sys.stdout.encoding, locale.getpreferredencoding ()) windows console : chcp 65001; 在设置了这个环境变量时 ...
- python基础-第六篇-6.2模块
python之强大,就是因为它其提供的模块全面,模块的知识点不仅多,而且零散---一个字!错综复杂 没办法,二八原则抓重点咯!只要抓住那些以后常用开发的方法就可以了,哪些是常用的?往下看--找答案~ ...
- SpringBoot 与 Web开发
1. SpringBoot 静态资源映射规则 webjars:以JAR包的方式引入静态资源; 所有/webjars/**,都去classpath:/META-INF/resources/webjars ...
- django允许外部访问
默认方法启动django python manage.py runserver 这时启动的服务只能在本机访问,这是因为服务只向本机(127.0.0.1:8000)提供,所以局域网的其他机器不能访问. ...
- POJ1470Closest Common Ancestors 最近公共祖先LCA 的 离线算法 Tarjan
该算法的详细解释请戳: http://www.cnblogs.com/Findxiaoxun/p/3428516.html #include<cstdio> #include<alg ...
- sVIrt概述
sVirt概述 前面已经对seLInux的基本原理做了分析,seLinux主要就是基于主体和客体的安全上下文,进行访问决策.那么安全上下文是不是又可以理解为一个标签呢? 基于以上seLInux的特性, ...
- Python 开发中高级技巧
列表推导式 >>> chars = [ c for c in 'python' ] >>> chars ['p', 'y', 't', 'h', 'o', 'n'] ...
- SQL Server 排名函数
个函数进行的解释. 以下是对这4个函数的解释: RANK() 返回结果集的分区内每行的排名.行的排名是相关行之前的排名数加一. 假设两个或多个行与一个排名关联,则每一个关联行将得到同样的排名. 比如, ...