php 5.25 多线程安装,Tengine2.1.0 + php5.5.25 + Mysql 5.5.42 安装

安装Tengine#yum安装pcre库

yum install pcre-devel openssl openssl-devel zlib -y

#创建运行账号

useradd -s /sbin/nologin -M www

#下载并安装

wget http://tengine.taobao.org/download/tengine-2.1.0.tar.gz

tar zxf tengine-2.1.0.tar.gz

cd tengine-2.1.0

./configure --prefix=/apps/tengine

make && make install

#nginx.conf 参考

====================================================

user  www www;

worker_processes     auto;

worker_cpu_affinity  auto;

error_log  /data/logs/nginx/error.log  crit;

pid        /var/run/nginx.pid;

worker_rlimit_nofile 51200;

events

{

use epoll;

worker_connections 51200;

}

http

{

include       mime.types;

default_type  application/octet-stream;

server_tokens off;

server_tag TWS;

reset_timedout_connection       on;

keepalive_timeout               120;

keepalive_requests              100;

sendfile on;

tcp_nodelay on;

tcp_nopush  off;

ignore_invalid_headers          on;

server_names_hash_max_size      256;

server_names_hash_bucket_size   64;

client_header_buffer_size 8k;

large_client_header_buffers 4 32k;

client_max_body_size 50m;

client_body_buffer_size  256k;

connection_pool_size            256;

request_pool_size               64k;

output_buffers                  2 128k;

postpone_output                 1460;

client_header_timeout           1m;

client_body_timeout             3m;

send_timeout                    3m;

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

fastcgi_buffer_size 64k;

fastcgi_buffers 4 64k;

fastcgi_busy_buffers_size 128k;

fastcgi_temp_file_write_size 256k;

gzip on;

gzip_min_length  1k;

gzip_buffers     4 32k;

gzip_http_version 1.1;

gzip_comp_level 4;

gzip_types       text/plain application/x-javascript text/css application/xml;

gzip_vary on;

log_format main  '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for" $request_time';

open_log_file_cache               max=1000 inactive=20s min_uses=1 valid=1m;

server {

listen 80;

server_name test.cnyang.com;

access_log /data/logs/nginx/test.cnyang.access.log main;

index index.php index.html index.html;

root /data/site/test.cnyang.com;

location /

{

try_files $uri $uri/ /index.php?$args;

}

location ~ .*\.(php)?$

{

expires -1s;

try_files $uri =404;

fastcgi_split_path_info ^(.+\.php)(/.+)$;

include fastcgi_params;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_pass  unix:/dev/shm/php-fcgi.sock;  #和后面的php-fpm配置结合使用(通过sock方式与php连接)

}

location /nstu {

stub_status on;

access_log   off;

#  allow 172.16.50.0/24;

#  deny all;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {

expires      30d;

}

location ~ .*\.(js|css)?$ {

expires      12h;

}

}

}

====================================================

安装php#需要有www用户

useradd -s /sbin/nologin -M www

#yum解决依赖包问题。

yum install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel -y

#下载php

wget http://cn2.php.net/distributions/php-5.5.25.tar.bz2

#解压并编译安装

tar -xjf php-5.5.25.tar.bz2

cd php-5.5.25

./configure --prefix=/apps/php --with-config-file-path=/apps/php/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --enable-opcache --with-fpm-user=www --with-fpm-group=www --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64

make ZEND_EXTRA_LIBS='-liconv'

make install

#修改配置文件

cp php.ini-production /apps/php/etc/php.ini

sed -i 's/post_max_size = 8M/post_max_size = 50M/g' /apps/php/etc/php.ini

sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 32M/g' /apps/php/etc/php.ini

sed -i 's#;date.timezone =.*#date.timezone = Asia/Shanghai#g' /apps/php/etc/php.ini

#开启Opcache

sed -i 's/;opcache.enable=0/opcache.enable=1/g' /apps/php/etc/php.ini

sed -i '/opcache.enable=1/azend_extension = "opcache.so"' /apps/php/etc/php.ini

sed -i 's/;opcache.enable_cli=0/opcache.enable_cli=1/g' /apps/php/etc/php.ini

sed -i 's/;opcache.memory_consumption=64/opcache.memory_consumption=128/g' /apps/php/etc/php.ini

sed -i 's/;opcache.max_accelerated_files=2000/opcache.max_accelerated_files=2000/g' /apps/php/etc/php.ini

sed -i 's/;opcache.revalidate_freq=2/opcache.revalidate_freq=240/g' /apps/php/etc/php.ini

sed -i 's/expose_php = On/expose_php = Off/g' /apps/php/etc/php.ini  #禁止显示版本信息

#禁用一些较危险的函数。

sed -i 's/disable_functions =/disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname/g' /apps/php/etc/php.ini

cat >/apps/php/etc/php-fpm.conf<

[global]

pid = /var/run/php-fpm.pid

error_log = /var/log/php/php-fpm-error.log

log_level = notice

rlimit_files = 65535

[www]

listen = /dev/shm/php-fcgi.sock

listen.backlog = -1

listen.allowed_clients = 127.0.0.1

listen.owner = www

listen.group = www

listen.mode = 0666

user = www

group = www

pm = dynamic

pm.max_children = 100

pm.max_requests = 1000

pm.start_servers = 18

pm.min_spare_servers = 5

pm.max_spare_servers = 20

request_terminate_timeout = 900

request_slowlog_timeout = 5

slowlog = /var/log/php/\$pool.log.slow

EOF

mkdir /var/log/php

安装mysql#yum解决依赖

yum install –y autoconf automake imake libxml2-devel expat-devel cmake gcc gcc-c++ libaio libaio-devel bzr bison libtool ncurses5-devel

#下载安装

mkdir pkg

cd pkg

[ ! -s mysql-5.5.42-linux2.6-x86_64.tar.gz ] && wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.42-linux2.6-x86_64.tar.gz

tar zxf mysql-5.5.42-linux2.6-x86_64.tar.gz

mkdir -p /apps/mysql

mv mysql-5.5.42-linux2.6-x86_64/* /apps/mysql

ln -s -f /apps/mysql/lib/mysql /usr/lib/mysql

ln -s -f /apps/mysql/include/mysql /usr/include/mysql

ln -s -f /apps/mysql/bin/mysql /usr/bin/mysql

ln -s -f /apps/mysql/bin/mysqldump /usr/bin/mysqldump

ln -s -f /apps/mysql/bin/myisamchk /usr/bin/myisamchk

ln -s -f /apps/mysql/bin/mysqld_safe /usr/bin/mysqld_safe

ln -s -f /apps/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog

ln -s -f /apps/mysql/bin/mysqladmin /usr/bin/mysqladmin

/usr/sbin/groupadd mysql

/usr/sbin/useradd -g mysql -s /sbin/nologin -M mysql

mkdir -p /data/dbdata/

chown -R mysql /apps/mysql

chown -R mysql /data/dbdata/

#my.cnf 参考

[ -f /etc/my.cnf ] && mv /etc/my.cnf /etc/my.cnf-$(date +%Y%m%d)

cat /etc/my.cnf

============================================

[mysql]

# CLIENT #

port                           = 3306

socket                         = /data/dbdata/mysql.sock

default-character-set          = utf8

[mysqld]

# GENERAL #

user                           = mysql

default-storage-engine         = InnoDB

character-set-server           = utf8

lower_case_table_names         = 1

socket                         = /data/dbdata/mysql.sock

pid-file                       = /data/dbdata/mysql.pid

# MyISAM #

key-buffer-size                = 128M

myisam-recover-options         = FORCE,BACKUP

# SAFETY #

max-allowed-packet             = 32M

max-connect-errors             = 10000

skip-name-resolve

# DATA STORAGE #

datadir                        = /data/dbdata/

# BINARY LOGGING #

log-bin                        = /data/dbdata/mysql-bin

expire-logs-days               = 14

sync-binlog                    = 1

max_binlog_size                = 500M

# CACHES AND LIMITS #

tmp-table-size                 = 32M

max-heap-table-size            = 32M

query-cache-type               = 0

query-cache-size               = 0

connect_timeout                = 20

back_log                       = 256

max-connections                = 1024

thread-cache-size              = 64

open-files-limit               = 65535

table-definition-cache         = 2048

table-open-cache               = 4096

# INNODB #

innodb_data_file_path          = ibdata1:10M:autoextend

innodb-flush-method            = O_DIRECT

innodb-log-files-in-group      = 2

innodb-log-file-size           = 256M

innodb-flush-log-at-trx-commit = 1

innodb-file-per-table          = 1

innodb_thread_concurrency      = 4

innodb-buffer-pool-size        = 6G

# LOGGING #

log-error                      = /data/dbdata/mysql-error.log

log-queries-not-using-indexes  = 1

slow-query-log                 = 1

slow-query-log-file            = /data/dbdata/mysql-slow.log

============================================

#初始化MySQL数据库

/apps/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/apps/mysql --datadir=/data/dbdata/ --user=mysql

#配置mysql启动文件

cp -f /apps/mysql/support-files/mysql.server /etc/init.d/mysqld

sed -i 's#^basedir=$#basedir=/apps/mysql/#' /etc/init.d/mysqld

sed -i 's#^datadir=$#datadir=/data/dbdata/#' /etc/init.d/mysqld

sed -i "s#/usr/local/mysql#/apps/mysql#g" /apps/mysql/bin/mysqld_safe

chmod +x /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

#启动mysql:

/etc/init.d/mysqld start

#简单配置myslq数据库

cat > /tmp/mysql_sec_script<

use mysql;

update user set password=password('mysql1234') where user='root';

delete from user where not (user='root');

delete from user where user='root' and password='';

DROP USER ''@'%';

flush privileges;

EOF

mysql < /tmp/mysql_sec_script

rm -f /tmp/mysql_sec_script

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值