tp5.0需要开启php pdo 拓展才能访问数据库,
1.先检查linux主机上的php版本是否已经开启,
cd /usr/local/php5.6.30/bin/
./php -m
在网上找到n多个解决方法,但是没有一个成功的,都是说什么安装另外一个php pdo_mysql 包,
解决办法:找回/下载已经安装好的对应的php版本,解压,例如
wget http://php.net/get/php-5.6.30.tar.gz/from/this/mirror
tar -zvxf php-5.6.30.tar.gz
再一次重新编译安装即可,但是编译的时候需要添加上 --with-pdo-mysql,如果是发现当前php发现这个拓展没有支持pdo_mysql,之前你安装的时候是没有添加这个参数的
./configure --prefix=/usr/local/php5.30 --enable-fpm --with-mcrypt \
--enable-mbstring --enable-pdo --with-curl --disable-debug --disable-rpath \
--enable-inline-optimization --with-bz2 --with-zlib --enable-sockets \
--enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex \
--with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-pdo-mysql \
--with-gd --with-jpeg-dir --with-freetype-dir --enable-calendar
make && make install
我是用阿里云主机,遇到这个情况的时候,我是直接安装了另外一个版本的php ,在编译安装时候发现报
virtual memory exhausted: 无法分配内存
那么需要在编译后面添加一个参数,--disable-fileinfo, 成功安装
./configure --prefix=/usr/local/php5.30 --enable-fpm --with-mcrypt \
--enable-mbstring --enable-pdo --with-curl --disable-debug --disable-rpath \
--enable-inline-optimization --with-bz2 --with-zlib --enable-sockets \
--enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex \
--with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-pdo-mysql \
--with-gd --with-jpeg-dir --with-freetype-dir --enable-calendar --disable-fileinfo
make && make install
cp php.ini-production /usr/local/php5.30/etc/php.ini
cd /usr/local/php5.30
cp etc/php-fpm.conf.default etc/php-fpm.conf
vim etc/php-fpm.conf