linux下PHP pdo_myql mysqli phpmyadmin 的问题,折腾一早上6点到8点
服务器重新配置了下,自己的一个项目刚预开发遇到了个问题
大早上起来看了下phpinfo() 的页面 好吧!上次偷懒,只有个mysql 的扩展
于是找了资料开始增加扩展:
详细如下不废话了
先搞定第一个问题 PDO_MYSQL
wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
tar zxvf PDO_MYSQL-1.0.2.tgz
解压缩进入到扩展编译的目录
cd PDO_MYSQL-1.0.2
/usr/local/php/bin/phpize //这里是你php安装目录下的一个文件,需要先运行一次
然后
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql/
前面是php的配置文件 后面是msql的文件夹
make
make install
编译和安装后配置php.ini 文件
vi /usr/local/php/lib/php.ini //添加扩展
#pdo_mysql
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so
如果找的烦躁用这个速度查找
在vi命令模式下输入
/extension
然后按键盘的N按键,意思就是找到这个单词,下一个单词切换
好了,这里重新启动apache服务器
/usr/local/apache/bin/apachectl -k restar
再看一下phpinfo的页面已经有了PDO_MYSQL
第二个问题是我们常用的是mysqli来连接数据库例如
$mysqli = new mysqli("localhost", "root", "root", "MY_DB"); /* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); } $query = "SELECT user_name FROM `MY_DB`.`LOL_DD_USER_INFO` "; if ($result = $mysqli->query($query)) { /* fetch associative array */ while ($row = $result->fetch_assoc()) { echo $row["user_name"]; echo "<br />"; } /* free result set */ $result->close(); } /* close connection */ $mysqli->close();
继续解决第二个问题 php支持 mysqli
找到php编译的源文件目录
例如我这里是临时目录
cd /a/2/php-5.2.17/ext/mysqli/
/usr/local/php5/bin/phpize 这里回车运行,执行完后就出了configure文件
./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
前面的是php配置的路径 后面的是mysql的目录下面的配置文件
没问题的话就
make
make install
然后修改php.ini文件让支持编译好的mysqli
vi /usr/local/php/lib/php.ini //添加扩展
#pdo_mysql
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/mysqli.so
如果找的烦躁用这个速度查找
在vi命令模式下输入
/extension
然后按键盘的N按键,意思就是找到这个单词,下一个单词切换
好了,这里重新启动apache服务器
/usr/local/apache/bin/apachectl -k restar
再看一下phpinfo的页面已经有了MYSQLI
总算条件满足了,网上下了个phpmyadmin
放到目录,怎么搞的,1405错误连接不上?
搞了半天原来没看说明,需要把config.sample.inc.php 文件名改成 config.inc.php
总算正常了,折腾俩小时。继续忙开发案去了,,,,
如果有兴趣交流 php 代码的请加我QQ306816165