菜鸟学Linux 第059篇笔记 编译安装MySQL,PHP 压力测试

菜鸟学Linux 第059篇笔记 编译安装MySQL,PHP 压力测试

大家好,又见面了,我是全栈君。

菜鸟学Linux 第059篇笔记 编译安装MySQL,PHP 压力测试

安装二进制格式的MySQL

# tar -xf mysql-5.5.54-linux2.6-i686.tar.gz -C /usr/local/

# cd /usr/local/

# ln -sv mysql-5.5.54-linux2.6-i686 mysql

# groupadd -r -g 306 mysql

# useradd -u 306 -r -g 306 mysql (创建MySQL的用户和组)

# chown -R mysql.mysql .  更改解压的MySQL文件的属主属级为mysql:mysql

# scripts/mysql_install_db –user=mysql

# chown -R root /usr/local/mysql

# chown -R mysql data

# cp suppot-files/my-huge.cnf /etc/my.cnf

# vim /etc/my.cnf

# Try number of CPU’s*2 for thread_concurrency 

thread_concurrency = 8 (自行看CPU而修改)

在此后添加一行 datadir = /mydata/data (这个是数据放在哪里自行定义)

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

# ckconfig -add mysqld

添加环境变量

# vim /etc/profile.d/mysql.sh

添加一行 export PATH=$PATH:/usr/local/mysql/bin

可选安装

1、添加mysql的man文档

# vim /etc/man.config

在MANPATH处添加一行

MANPATH /usr/local/mysql/man

2、输出mysql库文件

# vim /etc/ld.so.conf.d/mysql.conf

添加一行/usr/local/mysql/lib  (此处添加不会立即重新,需重启)

# ldconfig -v 在不重新启动系统情况下重新读取库文件

库文件缓存路径 /etc/ld.so.cache

3、输出头文件

ln -sv /usr/local/mysql/include /usr/include/mysql

(至此MySQL已经完成安装)

MySQL配置文件格式,集中式配置文件,可以为多个程序提供配置

[mysql]

abc…

[mysqld]

abc…

[client]

abc

mysql查找配置文件顺序

/etc/my.cnf –> /etc/mysql/my.cnf –> $BASEDIR/my.cnf (一般为安装目录) –>

$BASEDIR/my.cnf –> ~/.my.cnf  

(如果配置文件冲突,后一个会覆盖前一个)

MySQL服务器维护了两类变量

服务器变量:information_schema

定义MySQL服务器运行特性

SHOW GLOBAL VARIABLES [LIKE ‘STRING’]

状态变量:performance_schema

保存了MySQL服务器运行统计数据

SHOW GLOBAL STATUS [LIKE ‘STRING’];

MySQL通配符

_ 任意单个字符

% 任意长度任意个字符

PHP 编译安装

php53-mbstring multi-bytes string 

用来支持中文,或非一个字节可以表示字符的那些语言

编译安装

# tar xf php-5.4.13.tar.bz2

# cd php-5.4.13 

# ./configure –prefix=/usr/local/php –with-mysql=/usr/local/mysql 

–with-openssl –with-mysqli=/usr/local/mysql/bin/mysql_config 

–enable-mbstring –with-freetype-dir –with-jped-dir –with-png-dir 

–with-zlib –with-libxml-dir=/usr –enable-xml –enable-sockets 

 –with-apxs2=/usr/local/apache/bin/apxs –with-mycrypt 

 –with-config-file-path=/etc –with-config-file-scan-dir=/etc/php.d 

 –with-bz2 –enable-maintainer-zts

(注意这些是一行命令)

注解以上几个参数

–with-mycrypt

加密传递php 但是要使用此功能需要安装其它安装包

libmcrypt-2.5.7-5.el5.i386.rpm

libmcrypt-devel-2.5.7-5.el5.i386.rpm

mhash-0.9.2-6.el5.i386.rpm

mhash-devel-0.9.2-6.el5.i386.rpm

–with-apxs2=/usr/local/apache/bin/apxs

将php编译成模块 让httpd在解析动态php脚本时,掉用php库文件来解析

而不是启用另外一个进程,来解析php动态文件,直接在httpd进程内部

进行动态脚本解析

# make 

# make install

为php提供配置文件

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

让httpd能够理解和处理.php结尾的文件

# vim /etc/httpd/httpd.conf

/AddType  搜索找到以AddType开头的行,在其行后添加如下两行

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

/DirectoryIndex 查找到此处在其后加入index.php

DirectoryIndex index.php index.html (这个是我加入之后的,之前没有)

(重新启动httpd服务 service httpd restart)

PHP支持扩展功能:

xcache

Apc

php-mycrypt

安装PHP扩展功能Xcache

# tar -xf xcache-2.0.0.tar.bz2

# /usr/local/php/bin/phpize

# ./configure –enable-xcache –with-php-config=/usr/local/php/bin/php-config

# make 

# make install 会输出如下一段信息 复制此段信息

/usr/local/php/lib/php/extensions/no-debug-zts-20100525/

# mkdir /etc/php.d

# cp xcache.ini /etc/php.d/

# vim /etc/php.d/xcache.ini 

找到一项为zend_extension =  将等于后全部删除

然后把刚刚上边所输出的信息粘贴等于号后,然后再在其后添加xcache.so

完成后的样子

zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.s

将zend_extension_ts =此行注释掉 注意是使用;来注释

(至此Xcache可正常进行工作)

新版httpd建立VirtualHost

注释中心主机

#DocumentRoot “/usr/local/apache/htdocs”

启用虚拟主机

# Virtual hosts 

#Include /etc/httpd/extra/httpd-vhosts.conf

(将上一行的#号去除却可) 

编辑虚拟主机配置文件 vim /etc/httpd/extra/httpd-vhosts.config

(里面有案例,照着修改即可) 以下是我自己做的虚拟机

(注意这里边不需要再声明NameVirtualHost *:80)

(注意权限,此版本必须要加directory 里边的权限如果不设置默认禁止访问)

<VirtualHost 192.168.11.122:80>

DocumentRoot “/web/mysky.com”

ServerName www.mysky.com

<Directory “/web/mysky.com”>

Options none

AllowOverride none

Require all granted

</Directory>

ErrorLog “/var/log/httpd/mysk.com-error”

CustomLog “/var/log/httpd/mysky.com-access” common

</VirtualHost>

<VirtualHost 192.168.11.122:80>

DocumentRoot “/web/websql.com”

ServerName www.websql.com

<Directory “/web/websql.com”>

Options none

AllowOverride none

Require all granted

</Directory>

ErrorLog “/var/log/httpd/webmysql.com-error”

CustomLog “/var/log/httpd/webmysql.com-access” common

</VirtualHost>

(建立完成后需要创建/var/log/httpd目录和网站文件即可访问相应的站点) 

至此你的虚拟主机即可正常工作!!!

如何启用httpd ssl功能

vim /etc/httpd/httpd.conf

#LoadModule ssl_module modules/mod_ssl.so 将此项启用 即去除#

#Include /etc/httpd/extra/httpd-ssl.conf  此项也启用 去除#

然后配置/etc/httpd/extra/httpd-ssl.conf

此配置和之前配置ssh相同 详细可看前边的章节

网站性能测试

ab (Apache HTTP server benchmarking tool)

-c concurrency

  Number of multiple  requests  to  perform  at  a

  time. Default is one request at a time.

-n requests

  Number of requests to perform for the benchmark-

  ing session. The default is to  just  perform  a

  single request which usually leads to non-repre-

  sentative benchmarking results.

ab -c 10 -n 100 http://www.mysky.com/index.php 

解释一下里边的重要参数

Time taken for tests:   0.202 seconds  从发起到结束一共花费时长

Complete requests:      100  成功请求数量

Failed requests:        4 失败请求数量

Write errors:  失败写入次数

Total transferred:      4883895 bytes  总传输数据量

HTML transferred:       4867295 bytes  其中html传输的大小

Requests per second:    253.99 [#/sec] (mean)  每秒钟完成请求个数

Time per request:       39.372 [ms] (mean)  并发一次 完成所需时间

Time per request:       3.937 [ms] (mean, across all concurrent requests)

单个请求所需要用的时间

Transfer rate:          12113.70 [Kbytes/sec] received

传输速率

vmstat 1

vmstat – Report virtual memory statistics

web压力测试工具

ab

http_load

webbench

siege

网站:

rpmfind.net 可以查询rpm包


本文转自Winthcloud博客51CTO博客,原文链接http://blog.51cto.com/winthcloud/1885888如需转载请自行联系原作者


Winthcloud

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108047.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 锁屏时钟APP_linux时钟同步服务器设置

    锁屏时钟APP_linux时钟同步服务器设置桌面锁屏时钟里的桌面美化功能非常多,并且也都很实用,不仅可以帮助用户把手机桌面设置的更加简洁,查找东西变得更方便,而且用户还能够使用自定义设置的方式来将自己手机桌面的内容,进行不同的展示,桌面锁屏时钟app就算在锁屏的状态下也能够显示当前的时间,非常便捷。桌面锁屏时钟优势1.一款极简实用时钟,适合每一个喜欢简约的你。2.主界面是自带时间、日期、天气温度的LED电子数字时钟。3.经典的动态翻页效果,…

    2022年9月29日
    2
  • linux的nohup命令

    linux的nohup命令在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用&在程序结尾来让程序自动运行。比如我们要运行mysql在后台:/usr/local/mysql/bin/mysqld_safe–user=mysql&。可是有很多程序并不想mysqld一样,这样我们就需要nohup命令,怎样使用nohup命令呢?这里讲解nohup命令的一些用法。nohup/root/start.sh&在shell中回车后提示:[~]$appendingoutp

    2025年5月24日
    2
  • c++ sort 二维数组排序_二维数组升序排列

    c++ sort 二维数组排序_二维数组升序排列以往遇到行排列问题(按每行的字典序排序)的时候,总是使用结构体来进行排序,但是如何使用二维数组来达到同样的效果呢?实验内容:利用二维数组进行“三级排序”测试1:使用c++内置的普通型二维数组#include&lt;algorithm&gt;#include&lt;iostream&gt;usingnamespacestd;boolcmp(inta[],intb[]){ …

    2022年8月12日
    14
  • Android CompoundButton[通俗易懂]

    Android CompoundButton[通俗易懂]为什么80%的码农都做不了架构师?>>>…

    2022年5月2日
    48
  • 导出pdf文件时加图片水印

    导出pdf文件时加图片水印前言:本人探讨的是在导出PDF文件之前先把水印加好,导出后的pdf文件已经加好了水印。

    2022年5月12日
    48
  • 每天一道算法_3_487-3279_对电话号码格式化统计批处理

    早上弄了一道求高精度幂的算法,偷懒用了内部类,总觉得过意不去,所以今天重新做了一道算法题,做完心里舒服好多。题目如下: Description企业喜欢用容易被记住的电话号码。让电话号码容易被记住的一个办法是将它写成一个容易记住的单词或者短语。例如,你需要给滑铁卢大学打电话时,可以拨打TUT-GLOP。有时,只将电话号码中部分数字拼写成单词。当你晚上回到酒店,可以通过拨打310-GI

    2022年3月10日
    363

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号