2019独角兽企业重金招聘Python工程师标准>>>
之前php 与 nginx 环境已经搭建好了。但是php还没有集成mysql。没数据库啥也玩不转。放假下午在家没事便开始搞。
开始谷歌之旅~ 坑一: 最先找到 让改/usr/local/lib/php.ini 将 ;extension=php_mysqli.dll 前面的分号; (注释)去掉。应该开启mysql 模块吧。但是后来一看居然是windows下的配置。 俺没仔细看文档内容啊。。 哭。习惯遇见大段英文就跳过的后果啊! 坑二: 接着谷歌到 我电脑的php 需要安装mysql连接插件:于是便有了一下命令: sudo apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl 执行后 一直报错 大致意思是php5-imagick 这个安装不正确。 终端显示: E: Sub-process /usr/bin/dpkg returned an error code (1) bug 哎。。我了个去 这又是什么。 谷歌说大致是因为用apt-get install 安装导致的问题。 于是我又用谷歌解决了下这个问题。。不过好像也与我的目的没什么关系。 坑三: 再次怀着悲壮的心情谷歌。 大致的意思是 让我在php的安装目录(我是通过源码安装的) 编译出 mysql.so。在配置php.ini来生效。 当我在php的安装目录下进行 cd ext/mysql /usr/local/bin/phpize ./configure --with-php-config=/usr/local/bin/php-config --with-mysql=/usr/local/mysql/ 发生错误 --with-mysql = 后面的路径不存在。 我更改成--with-mysql 不设置地址。让内核自动寻找。 又发生错误
ubuntu ext/mysqlnd/mysqlnd.h:No such file or directory 这又是啥! 这让老夫如何是好! 终于啊! 使出大招。 卸载php 在php 安装目录下 执行 sudo make distclean 然后重新安装执行 ./configure --enable-sockets=shared --with-mysql=shared,mysqlnd --enable-fpm make make install 执行后。在php中写下访问mysql的代码 成功!
但是我对这块还是迷迷糊糊的。现在只能是先让它能跑再说。以后再学习吧。