在CentOS7上通过RPM安装实现LAMP+phpMyAdmin过程全记录
在CentOS7上通过RPM安装实现LAMP+phpMyAdmin过程全记录
时间:2017年9月20日
一、软件环境:
IP:192.168.1.71
Hostname:centos73-2.surmount.net
Linux:CentOS Linux release 7.3.1611 (Core)
Apache:httpd-2.4.6
Mysql:Ver 15.1 Distrib 5.5.52-MariaDB
PHP:初始用ISO光盘yum源安装的版本为php-5.4.16。在后续安装phpMyAdmin-4.7.4时报错,然后按提示升级为php56w-5.6.31。
二、LAMP搭建:
2-1:配置本地ISO镜像yum源;
# mount -r /dev/cdrom /media/cdrom
# vim /etc/yum.repos.d/iso.repo
[iso]
name=iso
baseurl=file:///media/cdrom
gpgcheck=0
enable=0
# yum repolist
2-2:安装MariaDB、设置MariaDB的root用户密码;
# yum install mariadb-server -y
# systemctl start mariadb.service
# mysql
MariaDB [(none)]> SET PASSWORD FOR 'root' @'127.0.0.1'=PASSWORD('jingpei');
MariaDB [(none)]> SET PASSWORD FOR 'root' @'localhost'=PASSWORD('jingpei');
MariaDB [(none)]> FLUSH PRIVILEGES;
//设置MariaDB的root用户密码
2-3:安装及配置Apache;
# yum install httpd -y
# vim /etc/httpd/conf/httpd.conf
ServerName centos73-2.surmount.net:80
# httpd -t
Syntax OK
# systemctl start httpd.service
http://192.168.1.71
//测试html页面
OK
2-4:安装PHP、测试php与DB的连接;
# yum install php php-mysql -y
# vim /var/www/html/index.php
<?php
$link = mysql_connect('localhost', 'root', 'jingpei');
if (!$link)
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
phpinfo()
?>
http://192.168.1.71/index.php
//测试php页面,测试DB连接。
OK
三、安装phpMyAdmin:
3-1:phpMyAdmin简介;
phpMyAdmin,是MySQL或MariaDB数据库的GUI管理工具,以php为基础,以web为工作形式。
3-2:安装、配置及访问测试phpMyAdmin;
# unzip phpMyAdmin-4.7.4-all-languages.zip
# cp -a phpMyAdmin-4.7.4-all-languages /var/www/html
# cd /var/www/html
# ln -sv phpMyAdmin-4.7.4-all-languages pma
# cd /var/www/html/pma
# cp config.sample.inc.php config.inc.php
# tr -d 'a-zA-Z0-9' < /dev/urandom | head -30 | md5sum
8b2c0e4f280fb8cab9ff8b2716cf7a40 -
# vim config.inc.php
......
$cfg['blowfish_secret'] = '8b2c0e4f280fb8cab9ff8b2716cf7a40'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
......
# systemctl reload httpd.service
http://192.168.1.71/pma
status code:500
3-3:排错及测试;
# vim /etc/php.ini
......
display_errors
Default Value: On
......
error_reporting
Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
......
//根据状态码500(服务器内部错误),开启PHP报错。
# systemctl reload httpd.service
http://192.168.1.71/pma/
Parse error: syntax error, unexpected '@' in /var/www/html/phpMyAdmin-4.7.4-all-languages/libraries/common.inc.php on line 467
# yum install php-mbstring -y
# vim /var/www/html/pma/libraries/common.inc.php
467 if (@extension_loaded('mbstring') && !empty(@ini_get('mbstring.func_overload'))) {
468 PMA_fatalError(
469 __(
470 'You have enabled mbstring.func_overload in your PHP '
471 . 'configuration. This option is incompatible with phpMyAdmin '
472 . 'and might cause some data to be corrupted!'
473 )
474 );
475 }
//根据报错安装php-mbstring软件包;查看报错文件,暂时注释掉common.inc.php的467-475行(待php升级完成后再取消注释)。
# systemctl reload httpd.service
http://192.168.1.71/pma/
PHP 5.5+ is required.
Currently installed version is: 5.4.16
//提示php版本低
# yum list installed | grep php
php.x86_64 5.4.16-42.el7 @iso
php-cli.x86_64 5.4.16-42.el7 @iso
php-common.x86_64 5.4.16-42.el7 @iso
php-mbstring.x86_64 5.4.16-42.el7 @base
php-mysql.x86_64 5.4.16-42.el7 @iso
php-pdo.x86_64 5.4.16-42.el7 @iso
# yum remove php php-cli php-common php-mbstring php-mysql php-pdo -y
//删除低版本PHP
# wget -O /etc/yum.repos.d/CentOS-Base-Ali.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# sed -i 's/$releasever/7/g' /etc/yum.repos.d/CentOS-Base-Ali.repo
# vim /etc/yum.repos.d/epel.repo
[epel]
name=epel
baseurl=https://mirrors.ustc.edu.cn/epel/7Server/x86_64/
enabled=0
gpgcheck=0
# rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# yum install php56w -y
//配置网络yum源、epel源、webtatic源,升级PHP。
# systemctl reload httpd.service
http://192.168.1.71/pma/
//安装php56w-mbstring软件包,再测试提示缺少mysqli扩展。
# wget http://repo.webtatic.com/yum/el7/x86_64/RPMS/php56w-mbstring-5.6.31-1.w7.x86_64.rpm
# rpm -ivh php56w-mbstring-5.6.31-1.w7.x86_64.rpm
# systemctl reload httpd.service
http://192.168.1.71/pma/
//安装php56w-mysql,再测试正常。
# yum install php56w-mysql -y
# systemctl reload httpd.service
# httpd -M | grep php
php5_module (shared)
http://192.168.1.71/pma/
OK
完成安装,鼠标流操作不再敖述。
四、总结:
下载phpMyAdmin-4.7.4-all-languages.zip时未注意,此版本较新,需要php5.5以上方可支持。下载源码包时最好要看看官网的提示及软件包解压后的说明文档。
在CentOS7上通过RPM安装实现LAMP+phpMyAdmin过程全记录的更多相关文章
- Centos7上以RPM包方式安装Oracle 18c XE
Centos7上以RPM包方式安装Oracle 18c XE 安装阿里云 YUM 源 https://opsx.alibaba.com/mirror?lang=zh-CN 一.安装oracle数据库 ...
- 在centos7上用docker安装宝塔面板
在centos7上用docker安装宝塔面板 1. [root@web01 ~]# systemctl enable docker 2. [root@web01 ~]# docker pull c ...
- Centos7上HBase的安装和配置
注意事项 HBase配置必须使用主机名,不支持直接配置IP地址.我尝试过,如果不使用主机名直接用IP,会导致HBase连接zk超时. > 设置主机名 hostnamectl set-hostna ...
- CentOS7上Python3.5安装
CentOS7上Python3.5安装 1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. yum in ...
- 在CentOS6上配置MHA过程全记录
在CentOS6上配置MHA过程全记录 MHA(Master High Availability)是一款开源的MariaDB or MySQL高可用程序,为MariaDB or MySQL主从复制架构 ...
- SAP S4HANA1610/Fiori安装过程全记录
经历各种坑,从硬件到文件,终于安装成功. 有需要安装或使用S4HANA(含Fiori)的同学可以参考. 安装文件分享给大家 链接:http://pan.baidu.com/s/1mi7LfIS 密码: ...
- centos7上使用yum安装mysql
centos yum是没有mysql的,集成的是新的Mariadb,怎么用yum的方式在centos7上安装mysql呢? 1. 下载mysql的repo源 wget http://repo.mysq ...
- centos7 mysql5.7 rpm 安装
卸载MariaDB CentOS7默认安装MariaDB而不是MySQL,而且yum服务器上也移除了MySQL相关的软件包.因为MariaDB和MySQL可能会冲突,故先卸载MariaDB. 查看已安 ...
- Centos7上docker的安装和基本使用
Centos7上Docker的相关操作 Docker的安装 1.检查内核版本 docker使用linux的内核必须是3.10以上,首先需要 # uname -r 2.使用yum安装docker # y ...
随机推荐
- python编码错误的解决办法 SyntaxError: Non-ASCII character '\xe5' in file
[提出问题]. 在编写Python时,当使用中文输出或注释时运行脚本,会提示错误信息: SyntaxError: Non-ASCII character '\xe5' in file ******* ...
- 深入剖析ConcurrentHashMap 一
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt201 ConcurrentHashMap是Java5中新增加的一个线程安全的 ...
- memcache的原理和命中率的总结
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt267 1 Memcache是什么Memcache是danga.c ...
- UVW代码漫谈(一)
博客园是个非常好的学习知识的地方,相信有很多人跟我一样,园龄3年,从博客园不知道拷了多少代码,看了多少博客,自己却一篇博客都没写过.真是罪过. 这次准备写几篇关于这个项目源码的阅读和理解的文章,大家一 ...
- 团队作业4——第一次项目冲刺(Alpha版本)7th day
一.Daily Scrum Meeting照片 二.燃尽图 三.项目进展 在计时模式下能够记录用户的用户名和成绩,没有弄登录功能, 将程序定义为单机的 未完成的卡片为登录功能和使用QQ登录. 四.困难 ...
- 201521123072《java程序设计》第八周总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 List中指定元素的删除(题目4-1) 1.1 实验总结 在删除List中的元素中要考虑元素删 ...
- 学号:201521123116 《java程序设计》第八周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 List<Entry<String,Integer> ...
- 201521123063 《JAVA程序设计》 第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 上周学习了继承和多态,满足is-a条件,但是发现会导致继承的滥用,如果只是但以的 ...
- 201521123045-----《Java程序设计》第3周学习总结
---恢复内容开始--- 1. 本章学习总结 2. 书面作业 1. 代码阅读 public class Test1 { private int i = 1;//这行不能修改 private stati ...
- python类型转换、数值操作(收藏)
最近学习python语言,碰到数据类型间的转换问题.看到一篇文章总结的挺详细,收藏之备用. 类型转换 代码 1 函数 描述 2 int(x [,base ...