mysql与php

来源:互联网 发布:超级优化有几个女主角 编辑:程序博客网 时间:2024/06/05 05:45
Mysql 安装

tar zxf mysql-boost-5.7.17.tar.gz
cd mysql-5.7.17/

du -sh



yum install -y cmake-2.8.12.2-4.el6.x86_64.rpm

yum install -y gcc gcc-c++ ncurses-devel



rm -f CMakeCache.txt   ##重新编译时,需要清除旧的对象文件和缓存信息


cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql -DMYSQL_DATADIR=/usr/local/lnmp/mysql/data -DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_BOOST=boost/boost_1_59_0/


make && make install  ##由于是cmake编译,所以,该过程会有安装进度%的提示



groupadd -g 27 mysql
useradd -u 27 -g 27 -s /sbin/nologin -M -d /usr/local/lnmp/mysql/data mysql

id mysql


cd /usr/local/lnmp/mysql/

chown mysql.mysql . -R



cd /usr/local/lnmp/mysql/bin
vim ~/.bash_profile                 ##修改环境变量

PATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin


source ~/.bash_profile              #使之生效



cd /usr/local/lnmp/mysql/support-files
cp my-default.cnf  /etc/my.cnf      #根据你的主机内存复制mysql配置文件,启动脚本的要求
cp: overwrite `/etc/my.cnf'? y

cp mysql.server /etc/init.d/mysqld  ##启动脚本,6.5版本的,脚本都放在/etc/init.d下面


mysqld --initialize --user=mysql    ##初始化,并复制后面的初始化密码


cd /usr/local/lnmp/mysql
chown root.root . -R

chown mysql data -R


/etc/init.d/mysqld start            ##开启mysql

    

mysql_secure_installation           #按提示完成 mysql 安全设置,生产环境推荐使用

Enter password for user root:       ##复制你初始化的密码

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1  ##大小写+特殊字符+数字



mysql -pSyx.123456           ##登陆数据库



安装PHP
tar jxf php-5.6.20.tar.bz2

cd php-5.6.20



yum install net-snmp-devel curl-devel libxml2-devel libpng-devel libjpeg-devel freetype-devel gmp-devel openldap-devel -y   ##安装依赖性


[root@server1 ~]# rpm -ivh libmcrypt-2.5.8-9.el6.x86_64.rpm libmcrypt-devel-2.5.8-9.el6.x86_64.rpm

 

./configure --prefix=/usr/local/lnmp/php --with-config-file-path=/usr/local/lnmp/php/etc --with-mysql=mysqlnd  --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --with-snmp --with-gd --with-zlib --with-curl --with-libxml-dir --with-png-dir --with-jpeg-dir --with-freetype-dir --with-gmp --with-gettext --enable-inline-optimization --enable-soap --enable-ftp --enable-sockets --enable-mbstring --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mcrypt –-with-mhash



##如果出现这种报错configure: error: /bin/sh ./config.sub –-with-mhash failed


就把报错的一个应用模块重新键盘输入一遍


make && make install


cp php.ini-production /usr/local/lnmp/php/etc/php.ini

cd /root/php-5.6.20/sapi/fpm

cp init.d.php-fpm /etc/init.d/php-fpm   ##添加启动脚本

chmod +x /etc/init.d/php-fpm


cd /usr/local/lnmp/php/etc

vim php-ini         

date.timezone = Asia/Shanghai     ## 修改时区


cp php-fpm.conf.default php-fpm.conf

vim php-fpm.conf             

pid = run/php-fpm.pid

    

/etc/init.d/php-fpm start    ##启动php


cd /usr/local/lnmp/php/

vim ~/.bash_profile

PATH=$PATH:$HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin


source ~/.bash_profile


vim /usr/local/lnmp/nginx/conf/nginx.conf

 location / {

            root   html;

            index   index.php index.html index.htm;

        }


 location ~ \.php$ {

            root           html;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

            include        fastcgi.conf;

        }


cd /usr/local/lnmp/nginx/html/

vim index.php     ##建立测试页


<?php

phpinfo()

?>


测试:浏览器访问172.25.4.1


建立论坛

unzip Discuz_X3.2_SC_UTF8.zip


mv upload/ /usr/local/lnmp/nginx/html/bbs

cd /usr/local/lnmp/nginx/html/bbs/

chmod 777 config/ data/ uc_client/ uc_server/ -R    ##修改文件,目录权限,配置安装环境

浏览器访问172.25.4.1/bbs/install


如果出现以下错误,则进行以下配置


cd /usr/local/lnmp/php/etc/

vim php.ini

pdo_mysql.default_socket= /usr/local/lnmp/mysql/data/mysql.sock


mysql.default_socket = /usr/local/lnmp/mysql/data/mysql.sock


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


/etc/init.d/php-fpm reload  ##修改万php文件以后记得重启服务


如果出现以下错误,则是因为mysql.sock文件的目录访问权限不足


chmod 755 /usr/local/lnmp/mysql/data/

安装数据库界面:


安装完论坛进入管理中心以后,会提示你删除php下的install加载页面,以免再次访问直接进入初始化界面


cd /usr/local/lnmp/nginx/html/bbs/install

rm -f index.php



memcache模块

Memcache 是 danga.com 的一个开源项目,它是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的 Hash 表,能够用来存储各种格式的数据。可以类比于 MySQL 这样的服务,而 PHP 扩展的 Memcache 实际上是连接 Memcache 的方式。

在安装memcache模块之前需要检查你的系统下有没有php安装包,如果有的话,卸载掉,不然会覆盖掉你的memcache模块的安装,导致模块安装失败。

rpm -qa |grep php

yum remove -y php-common-5.3.3-26.el6.x86_64 php-5.3.3-26.el6.x86_64 php-cli-5.3.3-26.el6.x86_64

yum install autoconf -y

tar zxf memcache-2.2.5.tgz


phpize

./configure

 

 make install


cd /usr/local/lnmp/php/lib/php/extensions/no-debug-non-zts-20131226/  ##进入该目录检查下面是否有memcache.so文件


cd /usr/local/lnmp/php/etc

vim php.ini

862 extension=memcache.so


/etc/init.d/php-fpm reload

php -m |grep memcache  ##检查php是否有了memcache模块


yum install memcached -y


/etc/init.d/memcached start


yum install telnet -y    ##可以通过这个软件远程连接memcache端口测试,建立数据后,查询数据,直接得到结果


telnet localhost 11211


stats

set name 0 0 6

westos

STORED

get name

VALUE name 0 6

westos

END


cd /root/memcache-2.2.5

cp memcache.php /usr/local/lnmp/nginx/html

cp example.php /usr/local/lnmp/nginx/html


cd /usr/local/lnmp/nginx/html/

vim memcache.php

$VERSION='$Id: memcache.php,v 1.2 2008/09/11 19:21:06 mikl Exp $';

define('ADMIN_USERNAME','admin');       // Admin Username

define('ADMIN_PASSWORD','westos');      // Admin Password

define('DATE_FORMAT','Y/m/d H:i:s');

define('GRAPH_SIZE',200);

define('MAX_ITEM_DUMP',50);

$MEMCACHE_SERVERS[] = '127.0.0.1:11211'; // add more as an array

#$MEMCACHE_SERVERS[] = 'mymemcache-server2:11211'; // add more as an array

浏览器访问http://172.25.4.1/memcache.php


刷新http://172.25.18.1/example.php 页面也会同步改变memcache.php页面的缓存命中率