首页 运维 正文
LAMP下的更新问题

 2022-10-23    351  

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

  LAMP下的更新中的问题

LAMP下的更新问题

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

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

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

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

  #rpm-qa|grepglibc 

  glibc-kernheaders-2.4-8.10 

  glibc-common-2.3.2-11.9 

  glibc-2.3.2-11.9 

  glibc-devel-2.3.2-11.9 

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

  2:编译php时出现

  ./configure:/usr/local/apache2/bin/apxs:/replace/with/path/to/perl/interpreter: 

  badinterpreter:Nosuchfileordirectory 

  这是找不到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在什么地方,可以用

  #locatelibperl.so 

  查找,或者用find命令

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

  checkingformSQLsupport...no 

  checkingforMSSQLsupportviaFreeTDS...no 

  checkingforMySQLsupport...yes 

  checkingforspecifiedlocationoftheMySQLUNIXsocket...no 

  checkingforMySQLUNIXsocketlocation.../tmp/mysql.sock 

  checkingformysql_closein-lmysqlclient...no 

  checkingformysql_errorin-lmysqlclient...no 

  configure:error:mysqlconfigurefailed.Pleasecheckconfig.logformoreinformation 

.

  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口令怎么办

  #/usr/local/mysql/support-files/mysql.serverstop 

  #cd/usr/local/mysql/bin/ 

  #mysqld_safe--skip-grant-tables& 

  #mysqladmin-uuserpassword'newpassword' 

  #mysqladminflush-privileges 

  增加pdo_mysql单独安装

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

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

  wget 

  tarxzvfPDO_MYSQL-1.0.2.tgz 

  cdPDO_MYSQL-1.0.2 

  /usr/local/php/bin/phpize 

  Configuringfor: 

  PHPApiVersion:20041225 

  ZendModuleApiNo:20060613 

  ZendExtensionApiNo:220060519 

  ./configure 

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

  checkingformysql_config...notfound 

  configure:error:CannotfindMySQLheaderfilesunder 

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

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

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

  经过configure就可以make了

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

  checkingforPDOincludes...checkingforPDOincludes... 

  configure:error:Cannotfindphp_pdo_driver.h. 

  检查的时候,不能找到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的位置).

  make 

  makeinstall 

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

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

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

  加上一句:

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

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

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

原文链接:https://77isp.com/post/8470.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。