最新公告
  • 欢迎您光临模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • MySQL 压力测试工具

    正文概述 模版网   2020-08-12   67

    请注意:本项目仅用于学习和测试,请勿用于违法行为,造成的一切后果由使用者自行承担。

    这是一个使用 PHP 编写的 MySQL 性能测试工具,用于检测数据库的性能,可承载的并发数量等。

    经过测试,一台 I5-4590 CPU,12GB 内存的机器,在被 1024 线程攻击后,CPU 瞬间上到 90%,内存占用率以每秒增加 50-100MB 的速度持续增长,并且在攻击结束后都没有下降,数据库软件为 Mariadb 10.3,所有设置均为默认。

    img

    攻击开始前目标主机工作正常,可用内存 3GB

    img

    攻击开始一分钟后 CPU 跑满,内存几乎已经用完

    三分钟后,目标主机因为内存不足导致死机,只能硬重启。

    在我另一台 Atom CPU、2GB 内存的机器上测试更是直接秒杀,1 分钟左右就已经死机,SSH 连接断开,只能强制重启。

    需要环境

    运行 MySQLCC 需要以下环境 / 组件支持

    1. PHP 7.2 及以上
    2. PHP MySQLi 组件
    3. Pthreads 组件

    安装 Pthreads

    首先检查自己的 PHP 是不是 Zend Thread Safety:

    命令行输入 php -v,如果看到 ZTS 说明是线程安全的,如果是 NTS 则说明不是线程安全。

    将 pthreads 代码克隆到本地并编译:

    git clone https://github.com/krakjoe/pthreads
    cd pthreads/
    phpize
    ./configure
    make
    make install
    

    接下来修改 php.ini,在结尾增加一行:

    extension=pthreads.so
    

    如果运行 php -v 命令时提示 No such file 之类的字样,请尝试将 make install 之后提示的路径加到 pthreads.so 前面

    extension=/usr/local/php/include/php/ext/pthreads.so
    

    项目代码

    暂无优惠

    已有10人支付

    运行方式

    下载本项目到您的服务器上,然后运行以下命令进行测试:

    php mysqlcc.php <目标主机> <端口号> <线程数> [随机数据模式] [用户名] [密码] [数据库名]
    

    说明:

    • 选项里,<> 是必填的,[] 是可选的。
    • 目标主机可以是 IP 或者域名,域名会自动解析为 IP。
    • 端口号默认是 3306 端口。
    • 线程数推荐 256-1024 之间,视服务器性能而定,线程并非越大越好。
    • 随机数据模式的值是 true 启用或者 false 关闭。
    • 随机数据模式关闭时,需要自己手动指定用户名、密码和数据库名。

    如何防止 MySQL 被攻击

    最简单就是修改 MySQL 端口,不过这是治标不治本,如果没有必要,把 3306 端口用防火墙屏蔽即可。

    如果一定要外部连接,建议屏蔽外部访问 3306,然后用 Frp 等工具进行反向代理,或者设置防火墙 IP 白名单。

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,请不要用于商业用途!
    3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,默认解压密码为"********",如遇到无法解压的请联系管理员!

    模版网 » MySQL 压力测试工具

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板网
    一个高级程序员模板开发平台

    发表评论

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者

    发表评论

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者