问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

linunx下怎么设置php数据库支持已安装的mysql

发布网友 发布时间:2022-04-08 02:36

我来回答

2个回答

懂视网 时间:2022-04-08 06:57

    编译参数,只需要加上--with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd ,即可。

    已测试通过。

    连接:http://baike.baidu.com/link?url=E0lpDyt-K7RxXAU5lL4f9XXe4iPgg1kCvWNhqiIkLTvccVxHC883eB7Rq-x9eWyrMsO6hGWzw0EjOCaF-Y2lZK

    

Linux下单独编译安装php且支持mysql扩展

标签:

热心网友 时间:2022-04-08 04:05

到官网下载 http://httpd.apache.org/download.cgi
2
解压 tar -zxvf httpd-2.2.22.tar.gz
3
建立目标文件夹(注意以下所有操作都时在root用户下执行的) mkdir /usr/local/apache2 也就是说等下安装的apache2要安装到这个文件夹里面
4
配置 回到原来解压之后产生的文件夹 ./configure --prefix=/usr/local/apache2 --enable-mole=shared 要加上后面的参数,否则无法使用php,-enable-mole=shared表示Apache可以动态的加载模块
这一步,出现了很多问题:
第一个错误为:
checking for APR... no configure: error: APR not found. Please read the documentation.解决方法:download the latest versions of both APR and APR-Util from Apache APR, unpack them into ./srclib/apr and ./srclib/apr-util (be sure the domain names do not have version numbers; for example, the APR distribution must be under ./srclib/apr/)
then do
./configure --with-included-apr
另外一种解决方法为:分别安装APR和APR-util,安装方法为:首先下载这两个文件,然后解压,进入解压后目录,然后把APR和APR-util分别安装到/usr/local/文件夹的apr和apr-util文件夹下。APR的具体安装方法为:[root@localhost 52lamp]# tar -zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zip[root@localhost 52lamp]# cd apr-1.4.2[root@localhost apr-1.4.2]# ./configure --prefix=/usr/local/apr[root@localhost apr-1.4.2]# make[root@localhost apr-1.4.2]# make install安装Apr-util 在./confiure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr其他步骤类似。
5
第二个错误为:no acceptable C compiler found in $Path直接运行 yum install gcc,安装Gcc即可第三个问题为:pcre-config for libpcre not found解决方法就是 下载prce安装包,和APR类似,安装到/usr/local/pcre文件夹下面即可。PS:fedora下安装c++编译器g++的命令为:yum install gcc-c++ 。
6
编译 make
安装 make install
启动,重启和停止 ,先切换到安装完成后的目录/usr/local/apache2/bin ./apachectl -k start ./apachectl -k restart ./apachectl -k stop
配置文件(满足最基本的配置) 编辑 /usr/local/apache2/conf/httpd.conf 文件 找到: AddType application/x-compress .Z AddType application/x-gzip .gz .tgz 在后面添加: AddType application/x-httpd-php .php(使Apcche支持PHP) AddType application/x-httpd-php-source .php5 找到: <IfMole dir_mole> DirectoryIndex index.html </IfMole> 添加: <IfMole dir_mole> DirectoryIndex index.html index.php </IfMole> 找到: #ServerName www.example.com:80 修改为: ServerName 127.0.0.1:80或者ServerName localhost:80 记得要去掉前面的“#”
7
测试 在浏览器里输入http://127.0.0.1 如果出现It Works!说明成功。

8
修改默认的Web站点目录
默认的目录为 "/usr/local/apache2/htdocs",修改apache的配置文件httpd.conf,比如在新建一个 /home/gyw/WebSite的目录作为apache的站点目录
找到DocumentRoot这一行修改为:DocumentRoot "/home/gyw/WebSite"
找到 <Directory> 这一行修改为:<Directory "/home/gyw/WebSite">
测试:修改到文件夹出现错误:
“You don't have permission to access /index.html on this server.”
解决方法:
更改文件权限;chmod 755 index.html
打开apache配置文件httpd.conf,找到这么一段:<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow deny from all Satisfy all</Directory>
测试结果如下:

END
安装PHP

1
下载 http://www.php.net/downloads.php解压 tar -zxvf php-5.3.16.tar.gz建立目标文件夹 mkdir /usr/local/php 也就是说等下安装的php要安装到这个文件夹里面
2
配置 回到原来解压后的文件夹 ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs
注意这里有一个-with-apxs2=/usr/local/apache/bin/apxs选项,其中apxs是在安装Apache时产生的,apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,使之可以用由mod_so提供的LoadMole指令在运行时加载到Apache服务器中。我的理解是通过这个工具把PHP模块动态加载到Apache中
出现错误:configure: error: xml2-config not found. Please check your libxml2 installation.
运行yum install libxml2,然后再运行yum install libxml2-devel安装完毕后,重新运行上面的./configure命令。
3
编译 make 测试编译 make test 安装 make install
4
、配置文件
cp /usr/local/src/php-5.3.16/php.ini-development /usr/local/php/lib/php.in
把原来位于源代码里面的php.ini-development拷贝到/usr/local/php/lib/php.ini下,并且重命名为php.ini
重启apache
5
测试 在apache的htdocs下建立一个php文件test.php,里面的内容如下: <?php phpinfo(); ?> 然后在浏览器里输入http://127.0.0.1/test.php 如果出现php的相关配置,成功,如果什么都没有输入,说明失败,重新以上步骤或者查找原因
如果决定在安装后改变配置选项,只需重复最后的三步configure, make, 以及 make install,然后需要重新启动 Apache 使新模块生效。Apache不需要重新编译。
测试结果如下图:

END
安装MySql

1
下载 到官网下载mysql-5.1.65.tar.gz(注意是源码包)解压 tar -zxvf mysql-5.1.65.tar.gz建立目标文件夹 mkdir /usr/local/mysql 也就是说等下安装的mysql要安装到这个文件夹里面
2
配置 ./configure --prefix=/usr/local/mysql/
在./configure时出现错误:error: No curses/termcap library found
下载安装相应软件包
yum list|grep ncurses
yum -y install ncurses-devel
yum install ncurses-devel
3
编译 make安装 make install
4
启动 MySQL服务并不会自动启动,还需要先初始化MySQL数据库,操作如下: cd /usr/local/mysql/bin sudo ./mysql_install_db --user=root 注意,这里最后的root是指可以操作数据库的用户,可以是当前用户,也可以新建用户,与linux上的root用户是两回事,可以自己取一个名字 ./mysqld_safe --user=root & 这条命令负责启动mysql服务的守护进程,此外最后的&时必须的,因为希望守护进程在后台运行 这里的root就是刚才的那个
5
为根用户创建密码 ./mysqladmin -u root password ‘123456’ 如果root已经设置过密码,采用如下方法 ./mysqladmin -u root password oldpass ‘123456’
6
测试 mysql -u root -p 会提示输入密码,就用刚才设置的密码 123456 如果出现mysql>,说明连接成功了,下面通过命令 创建一个数据库、建一个表,增加一条记录,为后面的测试准备
mysql> create database gywtest; mysql> use gywtest;
mysql> create table student(id int(4) not null primary key auto_increment,stuname char(20));
mysql> insert into student(stuname) values('Tom');
注意每条命令后面有个分号,如果上面的都成功,后面就可以用这个测试。
END
将PHP与MySql结合起来

重新配置PHP,改变配置选项,只需重复PHP安装时的最后的三步configure, make, 以及 make install,然后需要重新启动 Apache 使新模块生效,Apache不需要重新编译。
配置
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysqli=/usr/local/mysql/bin/mysql_config 注意mysql_config 的路径编译 make
安装 make installe
测试 写一个页面test.php,放在apache的web目录下,测试上面用命令创建的数据库
<?php $mysqli=new mysqli(); $mysqli->connect('localhost','root','123456','gywtest'); // 创建查询 $sqlstr='select * from student'; //发送查询给MySql $result=$mysqli->query($sqlstr); while($row=$result->fetch_object()) { $name=$row->stuname; echo $name; }?>
Fatal error: Class 'mysqli' not found in /home/lufangtao/Project/DB.php on line 3
解决方法:
/usr/local/php/bin/phpize 这里回车运行
出错:
Cannot find config.m4. Make sure that you run './phpize' in the top level source directory of the mole
解决方法:
PHP源码包文件夹下的EXT文件夹就是放置着目前版本的可用扩展,CD进去看看都有哪些你需要的?应该看到mysqli文件夹了吧~~~
在当前目录下执行phpize
[root@localhost mysqli]#/usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20090626
Zend Modeule Api No: 20090626
Zend Extension Api No: 220090626
Cannot find autoconf. Please check your autoconf installation and the$PHP_AUTOCONF environment variable. Then, rerun this script.
解决方法:
yum install autoconf再次运行上面的命令即可。
[root@localhost mysqli]#./configure –prefix=/opt/mysqli –with-php-config=/opt/php/bin/php-config –with-mysqli=/opt/mysql/bin/mysql_config
[root@localhost mysqli]#make
[root@localhost mysqli]#make install
安装完成后会有提示扩展所在目录路径,如:
/opt/php/lib/php/extensions/no-debug-zts-20090626php
所需的mysqli.so便会在此目录下,接下来修改/opt/php/etc/下的php.ini文件,加入mysqli扩展,即加入如下一行:
extension=/opt/php/lib/php/extensions/no-debug-zts-20090626/mysqli.so
4
安装完成!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑lol突然很卡怎么办啊电脑玩lolfps低怎么解决 危化品仓库有什么设备 香港中文大学2021-2022在河北,重庆最低录取分数线 ChaCheer 洽洽 南瓜子 盐焗味 500g-适用对象 老闫家小粒香南瓜子-适用对象 洽洽盐焗味南瓜子-适用对象 盐焗南瓜子里有添加明矾吗 老街口盐焗味南瓜子500g*2袋量大优惠休闲零食 一天走多少步可以减肥每天走多少步可以减肥 肉炖土豆需要炖多久时间 请教用过wifi宝的大神.为什么我的手机连接上了wifi热点但是却上不了网,这究竟是为什么? WIFI宝能否让XP系统散发的无限热点可以让安卓4.2收到? wifi共享精灵开启成功,但是手机搜不到热点?怎么办啊,求解。 以电脑作为WIFI热点后…… xp系统笔记本我wifi热点 摩托罗拉xoom mz606安卓4.0.3无法搜到wifi热点 如何在校园网内用笔记本建立wifi热点 南昌工程学院 windows7 wifi热点共享时无法共享怎么回事 wifi共享精灵为什么苹果手机可以搜到热点,安卓手机搜不到热点? win7建立wifi热点,在本地连接共享属性里找不到wifi选项 买手机,提个建议吧 华为怒阿7se怎么将通讯录复制粘贴到微信,之后收藏? 华为手机将微信记录复制到华为手机 链脉名片是做什么用的? 电子名片是什么,怎么弄? linux 编译按照php 必须要mysql吗 而且我需要按照完php以后有mysql扩展,但是不想再服务器上装mysql服务 平板QQ上怎么打开麦克风? 手机怎么下载能制造wifi热点的软件 电脑用手机WIFI热点下载不了东西 那有免费的wifi热点软件下载? 我下了个软件,叫wifi宝,被当做热点后,花的流量是不是非常多,只要能搜到的手机电脑上网, linux 怎么配置mysql 扩展 生日在出差中度过怎么发朋友圈? 今天是女的生日,正好她又要出差,该如何发朋友圈? 公司跑出差容,我想发朋友圈,怎么说,本人男… 地理怎么看地球俯视图和侧视图?要用图说话 怎么看地球仪(经线、纬线、北极圈、北半球、南半球等等) 怎么看地球仪的方位 托勒密是怎么看地球的? 怎么站在地球上就能看到地球的全貌? 怎么看地球是顺时针转,怎么看地球是逆时针转??? 请问座在飞机上能看到地球在转吗,如果不能要怎样才能看到地球在转,往哪个方向转? 地球的俯视图应如何看 地球是自西向东转。是怎么看得?如果我从地球的后面看。不成了自东向西转了吗? 怎样辨别地球方向 怎样看地球仪上的任何一点的经线和纬线? (是地球上的某一点!) 关于地球处于黄昏还是白天怎样分辨 在太空中不同角度看地球,地球是怎样转动的 怎样看地球图确定时区 怎样看地球仪上的任何一点的经线和纬线? 做卖装饰材料行业怎么样 有利润吗?