LAMP下的更新问题

运维 系统运维
LAMP下的更新:在安装php、mysql、apache后,需要安装新的版本进行更新时,会遇到好多麻烦。本文对应遇到的几个问题提出了相应的LAMP安装过程中的解决方案。LAMP下的更新

  LAMP下的更新问题:系统是redhat9,自定义安装了php,mysql,apache。所以在安装***的php,mysql,apache版本时候,本人对相关的rpm进行了卸载,忽略依赖关系强制卸载apache;由于php,mysql与perl的bt依赖关系,

  LAMP下的更新中的问题

  1.当你看到mysql有很多版本,如:

  mysql-max-5.0.21-linux-i686-glibc23.tar.gz和

  mysql-max-5.0.21-linux-i686.tar.gz

  这俩个到底选哪个呢,请你使用如下命令来决定

  1.   # rpm -qa | grep glibc  
  2.  
  3.   glibc-kernheaders-2.4-8.10  
  4.  
  5.   glibc-common-2.3.2-11.9  
  6.  
  7.   glibc-2.3.2-11.9  
  8.  
  9.   glibc-devel-2.3.2-11.9  
  10.  

  如果出现以上信息,请选择mysql-max-5.0.21-linux-i686-glibc23.tar.gz版本

  2:编译php时出现

  1.   ./configure: /usr/local/apache2/bin/apxs: /replace/with/path/to/perl/interpreter:  
  2.  
  3.   bad interpreter: No such file or directory  
  4.  

  这是找不到perl解释器的缘故。

  修改/usr/local/apache2/bin/apxs文件中:

  /replace/with/path/to/perl/interpreter

  把他替换成perl所在的路径如/opt/ActivePerl-5.8/bin/perl,

  (如果你下载的是active perl5.8的rpm,他默认安装路径是/opt/ActivePerl-5.8/bin/perl)

  3.安装了perl后,发现所有的文本编辑器都不能用了。

  运行vi或者gedit时候,提示找不到libperl.so

  到perl的安装目录下找一个libperl.so放到/usr/lib目录下就解决问题了

  我的libperl.so在/opt/ActivePerl-5.8/lib/5.8.8/i686-linux-thread-multi-CORE/目录下。

  如果不知道libperl.so在什么地方,可以用

  1.   # locate libperl.so  
  2.  

  查找,或者用find命令

  4.当我使用mysql-standard-5.0.20,编译php时出现mysql错误:

  1.   checking for mSQL support... no  
  2.  
  3.   checking for MSSQL support via FreeTDS... no  
  4.  
  5.   checking for MySQL support... yes  
  6.  
  7.   checking for specified location of the MySQL UNIX socket... no  
  8.  
  9.   checking for MySQL UNIX socket location... /tmp/mysql.sock  
  10.  
  11.   checking for mysql_close in -lmysqlclient... no  
  12.  
  13.   checking for mysql_error in -lmysqlclient... no  
  14.  
  15.   configure: error: mysql configure failed. Please check config.log for more information  

.

  LAMP下的更新中的问题,安装PHP的时候没有指定一下mysql的安装目录。但是我已经指定了,所以这个说法是错误的,其实主要原因是 mysql-level没有装,也就是mysql的版本不对,应该换

  mysql-max-5.0.21版本(包含所有mysql相关内容的软件包)

  5.编译php时出现

  configure: error: freetype2 not found!

  没有安装freetype-level

  configure: error: libpng.(a|so) not found.

  没有安装libpng-devel

  6忘了mysql的root口令怎么办

  1.   # /usr/local/mysql/support-files/mysql.server stop  
  2.  
  3.   # cd /usr/local/mysql/bin/  
  4.  
  5.   # mysqld_safe --skip-grant-tables &  
  6.  
  7.   # mysqladmin -u user password 'newpassword'  
  8.  
  9.   # mysqladmin flush-privileges  
  10.  

  增加pdo_mysql单独安装

  原来编译php的时候,没有把dpo_mysql相关的参数带上,安装 完后才发现。再重新编译有点费时间,所以决定单独来安装。

  先找需要的版本,我用的是稳定的版本。要先看看说明,特别是要注意mysql的php的版本。

  1.   wget  
  2.  
  3.   tar xzvf PDO_MYSQL-1.0.2.tgz  
  4.  
  5.   cd PDO_MYSQL-1.0.2  
  6.  
  7.   /usr/local/php/bin/phpize  
  8.  
  9.   Configuring for:  
  10.  
  11.   PHP Api Version: 20041225  
  12.  
  13.   Zend Module Api No: 20060613  
  14.  
  15.   Zend Extension Api No: 220060519  
  16.  
  17.   ./configure  
  18.  

  执行完以后,报了个错误:

  1.   checking for mysql_config... not found  
  2.  
  3.   configure: error: Cannot find MySQL header files under  
  4.  

  这个错误表明系统缺省没有找到你的mysql安装目录,因此可以使用这个命令解决:

  ln -s /usr/local/mysql/bin/mysql_config /usr/bin/mysql_config

  这样建立了你的实际msyql安装目录和mysql_config命令的管理

  经过configure就可以make了

  在执行:./configure 时,又出现了一个问题:

  1.   checking for PDO includes... checking for PDO includes...  
  2.  
  3.   configure: error: Cannot find php_pdo_driver.h.  
  4.  

  检查的时候,不能找到php_pdo_driver.h,经过检查,发现在读php-config的时候,在读以前的配置。

  解决方法:./configure –with-php-config=/usr/local/php/bin/php-config(根据实际的路径的来指定)

  在执行./configure --with-php-config=/usr/local/php/bin/php-config,又出现了一个问题:

  error: mysql_query missing!?

  解决方法:./configure --with-php-config=/opt/php5/bin/php-config --with-pdo-mysql=/opt/mysql5

  (根据自己的实际路径,设定编译安装mysql的位置).

  1.   make  
  2.  
  3.   make install  
  4.  

  注意pdo_mysql的全路径,我的是:

  /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so

  然后在/usr/local/lib/php.ini

  加上一句:

  1.   extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so  
  2.  

  重新启动apache即可看到已经加载pdo_mysql成功。

       LAMP下的更新中的问题有好多,这只是其中的一部分,如果大家还有什么类似的问题的话,可以贴出来,一起解决一下。

【编辑推荐】

  1. Linux下安装LAMP的步骤
  2. LAMP简介
  3. Linux上安装LAMP
责任编辑:zhaolei 来源: javaeye
相关推荐

2015-09-29 16:43:50

UAC更新Windows 10

2010-05-12 15:29:17

WSUS服务器更新

2018-08-31 09:32:46

Windows 10Windows安装更新

2011-03-10 15:44:18

CentOSLAMP安装

2011-03-09 16:16:54

CentOSLAMP

2011-03-10 15:44:18

CentOSLAMP安装

2009-09-28 14:13:25

拓扑管理摩卡

2011-03-14 11:29:43

2011-03-09 10:52:04

ContOSLAMP安装

2011-03-11 10:27:45

UbuntuLAMP配置

2011-03-10 10:09:09

UbuntuLAMP搭建

2011-03-09 15:13:00

UbuntuLAMP配置

2011-03-09 13:46:47

SUSElamp安装

2011-03-09 15:44:14

UbuntuLAMP

2021-11-07 07:09:41

Windows 11操作系统微软

2020-11-09 09:50:16

Windows10

2011-03-11 09:54:48

CentOSLAMP安装

2011-03-09 09:25:53

RedHatLinuxLAMP

2011-03-14 13:07:22

LAMPApache调优

2012-03-07 10:13:35

云计算云服务IT环境
点赞
收藏

51CTO技术栈公众号