mac 编译安装lnmp + phalcon

本文在以下教程基础上再集成了phalcon,以下教程为系列教程,不可分离。


一、mac自带了apache和php,应该先删除。

以下为Os X1 0.10.4新装系统演示:

打开终端命令

cd /
find . -name 'apache*'  #找到与apache相关的,删除之
find . -name 'httpd*' #找到与httpd相关的,删除之
find . -name 'php*'  #找到与php相关的,删除之


二、编译安装lnmp

第一种方式来自网络,设置相对简单,灵活性不如第二种方式

(感谢原作者分享,非常完美的编译安装,和linux下雷同)

mysql:http://www.widlabs.com/article/mac-os-x-install-mysql-with-tar-gz.html

Nginx:http://www.widlabs.com/article/mac-os-x-compile-install-nginx.html

PHP:http://www.widlabs.com/article/mac-os-x-compile-install-php.html

配置文件:http://www.widlabs.com/article/mac-os-x-lnmp-config.html


第二种采用和linux下同样的编译方式,推荐这种方式,具体见网络资料

先安装cmake

然后编译安装mysql

mac默认有_mysql用户和组,新建用户可以省略。并且将用户换成_mysql,

如:

sudo chown -R _mysql:_mysql /var/mysql/
sudo chown -R _mysql:_mysql /usr/local/server/mysql

sudo make install

谨记都用sudo

如果启动失败,删除数据库文件夹下面的ib_logfile0和ib_logfile1


三、安装好了之后,开始编译安装phalcon

在mac需要先安装m4和autoconf,注意不要用最新版,好像有点故障

sudo wget http://ftp.gnu.org/gnu/m4/m4-1.4.tar.gz
sudo tar zxvf m4-1.4.tar.gz
cd m4-1.4/
sudo ./configure && sudo make && sudo make install
 
sudo wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
sudo tar zxvf autoconf-2.69.tar.gz
cd autoconf-2.69/
sudo ./configure && sudo make && sudo make install

然后编译phalcon,和centos下差不多,参考http://my.oschina.net/kmwzjs/blog/337192


命令:也可以命令做软链接到 /usr/local/bin,如

ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/nginx

#mysql
sudo /usr/local/mysql/support-files/mysql.server start   #启动
sudo /usr/local/mysql/support-files/mysql.server stop    #停止
sudo /usr/local/mysql/support-files/mysql.server restart #重启

#ngnix
sudo /usr/local/nginx/sbin/nginx           #启动 
sudo /usr/local/nginx/sbin/nginx -s reload #重启
sudo /usr/local/nginx/sbin/nginx -s stop   #停止

#php-fpm重启和停止
sudo /usr/local/php/sbin/php-fpm                         #启动
sudo kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` #重启
sudo kill -INT `cat /usr/local/php/var/run/php-fpm.pid`  #停止

#配置文件地址
/usr/local/nginx/conf/nginx.conf #nginx配置
/usr/local/php/php.ini #php.ini配置
/usr/local/php/etc/php-fpm.conf  #php配置
/etc/my.cnf  #mysql配置


php-fpm master 进程可以理解一下信号:
SIGINT, SIGTERM 立刻终止
SIGQUIT 平滑终止
SIGUSR1 重新打开日志文件
SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块


要是mysql遇到Data too long for column错误解决方案

在my.ini或者my.cnf里找到

sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_Create_USER,NO_ENGINE_SUBSTITUTION”

把其中的STRICT_TRANS_TABLES,去掉,然后重启mysql就ok了 


mac中nginx出现 too many open files

是xebug

其他设置

1.让php-fpm支持连接mysql

安装之后,需要修改一下/usr/local/php.ini,找到mysqli.default_socket改成

mysqli.default_socket = /usr/local/mysql/mysql.sock

2. 设置session和upload的路径为/tmp


重启php-fpm,不然CI等框架无法使用php去连接mysql数据库,记得改成mysqli引擎

sudo kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`

你可能感兴趣的:(mac,编译安装,LNMP,phalcon)