使用DAS实现数据库自动SQL限流

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 本场景主要介绍如何使用DAS提供SQL限流功能,通过自动SQL限流来控制数据库请求访问量和SQL并发量,保障服务的可用性。

使用DAS实现数据库自动SQL限流


1. 购买DAS专业版并新增实例

登录DAS专业版购买页面,根据界面提示选择对应参数,购买DAS专业版服务。

DAS控制台DAS专业版管理页面,单击页面右上角新增实例。

在选择实例的搜索框里输入需要使用DAS专业版管理的PolarDB实例ID,勾选已查询出来的实例,添加至右侧区域。

说明:DAS专业版会自动打开PolarDB的SQL洞察,DAS将赠送给您5GB SQL洞察存储空间,超出部分按照0.008元/GB/小时收费,日志至少保存30天。

单击确定后页面会提示新增成功,可到已使用实例列表页面查看。

2. 开启DAS自治服务

登录PolarDB MySQL控制台,单击集群列表,选择已创建的集群ID,进入集群详情页。

在左侧导航栏选择一键诊断,自治中心页签下,单击右侧自治功能开关进入设置页面

开启自治服务。

单击确定

3. 构造测试数据

在PolarDB MySQL中创建表,并导入测试数据。

登录PolarDB MySQL控制台,单击实例ID,进入实例详情后,单击数据库管理 > 创建数据库,完成数据库的创建。

本案例中数据库的名称定为das_test

通过DMS登录数据库:在PolarDB MySQL控制台,进入实例详情页,单击SQL查询,跳转DMS控制台后输入账号和密码。

说明:首次使用DMS连接PolarDB MySQL实例时,系统会提示您授权白名单,单击确认后即可完成授权。


成功登录后,直接打开数据库的SQL Console面板,输入以下语句,创建PolarDB MySQL表。

1)执行如下语句创建一张students表。


         

2)如下两条INSERT INTO语句各执行一次,写入两条数据。


         

3)重复执行如下语句建议执行20次以上,生成200万行数据。


         


4. 模拟压测

本步骤需要在ECS控制台中,登录ECS实例部署压测程序,并使用该程序模拟流量注入。

登录下载地址,下载压测程序。

开通ECS服务器,本案例要求配置如下:

地域与可用区:与已创建的polarDB Mysql实例一致。

实例规格:建议选择计算型、4vCPU 8GiB以上规格。

镜像:CentOS 7.8 64位。

系统盘 :选择 ESSD云盘 40GB。

公网IP:勾选分配公网IPV4地址。

带宽计费模式:选择按使用流量。

带宽峰值:设置为10Mbps。

其余配置不做要求,选择默认即可。

PolarDB MySQL控制台的集群详情中,将ECS的IP地址添加至PolarDB MySQL的白名单中。

登录ECS。

1)登录ECS控制台,选择实例,点击开通的实例ID名称。

2)单击远程连接。

3)可选择Workbench远程连接方式,单击立即登录。

执行如下命令创建目录。

mkdir -p /user/local/src

将下载的das-testbed-simple.zip压缩包上传至ECS 实例的 /usr/local/src目录下。

说明:

Windows系统下载使用MobaXterm工具登录ECS地址上传。

Macos系统使用终端上传。

在src目录下执行如下命令解压das-testbed-simple.zip 。

unzip das-testbed-simple.zip

编辑 config/data-source.properties,复制 PolarDB的集群地址 替换该文件里的占位符,并设置账户和密码。

1)在PolarDB集群的基本信息页面,获取集群地址 。

2)修改配置文件config/data-source.properties

vi data-source.properties

说明:标红位置参数按照实际环境配置。

jdbc.url:

*********.rwlb.rds.aliyuncs.com:PolarDB MySQL集群的链接地址。

das_test:数据库名称。

jdbc.username:账户名。

jdbc.password:账户密码。


修改 das-testbed-simple/config/test-scenario-config.json 的内容如下:

{
  'variables': [
    {
     'name': 'names', 
     'expression': 'query(dataSource, 'SELECT name FROM students LIMIT 10000')' 
    } 
 ], 
  'queries': [ 
      'update students set extra_info = UUID() where name = '${random(names).name}''
 ], 
    'queryConfig': { 
        'threadCount': 20, 
         'durationTimeInMinute': 20
     }
  }

说明:该配置测试程序以 20个线程并发执行 update 语句20分钟,把 PolarDB主库的 CPU持续打高。

通过 yum命令在 ECS上安装 java。

yum install java-1.8.0-openjdk* -y

在终端窗口运行以下命令,对PolarDB进行高并发压测。

[root@iZwz******* das-testbed-simple]# java -jar das-testbed-simple.jar


5. 查看自动SQL限流结果

登录PolarDB MySQL控制台

在左侧菜单单击一键诊断。

自治中心页签下查看异常事件。

单击异常检测事件详情

单击根因分析和建议

可以看到UPDATE以并发度2被限流10分钟。


实验链接:https://developer.aliyun.com/adc/scenario/83c2eccd4e6149e3ac2e2fcdc1f5ab95


相关实践学习
使用DAS实现数据库自动扩容和回缩
暂无
相关文章
|
24天前
|
SQL 开发框架 .NET
ASP.NET连接SQL数据库:详细步骤与最佳实践指南ali01n.xinmi1009fan.com
随着Web开发技术的不断进步,ASP.NET已成为一种非常流行的Web应用程序开发框架。在ASP.NET项目中,我们经常需要与数据库进行交互,特别是SQL数据库。本文将详细介绍如何在ASP.NET项目中连接SQL数据库,并提供最佳实践指南以确保开发过程的稳定性和效率。一、准备工作在开始之前,请确保您
112 3
|
6天前
|
SQL 数据采集 监控
局域网监控电脑屏幕软件:PL/SQL 实现的数据库关联监控
在当今网络环境中,基于PL/SQL的局域网监控系统对于企业和机构的信息安全至关重要。该系统包括屏幕数据采集、数据处理与分析、数据库关联与存储三个核心模块,能够提供全面而准确的监控信息,帮助管理者有效监督局域网内的电脑使用情况。
12 2
|
11天前
|
SQL JSON Java
没有数据库也能用 SQL
SPL(Structured Process Language)是一款开源软件,允许用户直接对CSV、XLS等文件进行SQL查询,无需将数据导入数据库。它提供了标准的JDBC驱动,支持复杂的SQL操作,如JOIN、子查询和WITH语句,还能处理非标准格式的文件和JSON数据。SPL不仅简化了数据查询,还提供了强大的计算能力和友好的IDE,适用于多种数据源的混合计算。
|
12天前
|
SQL 数据库
SQL数据库基础语法入门
[link](http://www.vvo.net.cn/post/082935.html)
|
19天前
|
SQL 存储 关系型数据库
mysql 数据库空间统计sql
mysql 数据库空间统计sql
37 0
|
23天前
|
SQL 存储 监控
串口调试助手连接SQL数据库的技巧与方法
串口调试助手是电子工程师和软件开发人员常用的工具,它能够帮助用户进行串口通信的调试和数据分析
|
23天前
|
SQL 存储 数据采集
如何把问卷录入SQL数据库
将问卷数据录入SQL数据库是一个涉及数据收集、处理和存储的过程
|
6月前
|
运维 安全 关系型数据库
参加数据库管理工具DAS训练营,赢取国潮保温杯和阿里云定制双肩包!
本训练营带您简单了解数据库自治与云安全服务,数据库自治服务提供云上RDS、PolarDB、NoSQL、ADB等数据库7*24小时异常检测、SQL自优化、安全合规审计、弹性伸缩、数据自治、锁分析等亮点功能。一站式自动化、数字化DAS集成平台,助力您畅享DBA运维智能化。
|
5月前
|
机器学习/深度学习 人工智能 运维
阿里云DAS-您的专属AI专家,引领数据库自治驾驶
阿里云数据库自治服务(DAS)可以被誉为“您的专属AI专家”,它确实在引领数据库进入自治驾驶的时代。 DAS的核心优势在于其结合了多年大规模数据库集群运维调优的专家经验与机器学习等智能化技术。这
|
6月前
|
SQL 运维 数据库
数据库自治专家DAS在手,安心过春节!
春节期间,企业数据库可能面临的问题高发在稳定性、性能和安全性等方面,比如:会遭遇人手不足,IT支持可能会因运维工程师休假、交通通勤而受到限制,也会存在远端接入不方便、通信不畅通、处理不及时等问题。除此之外,大规模增长的商业活动促销和交易量波动增加,交易系统有可能凌晨依然存在高峰负载压力等问题,这对数据库性能是一场不小的考验,上述种种问题,都需要更精确的、更全方位的守护系统。通过DAS智能助手,能够实现7*24小时的守护,接触DBA焦虑,保障系统平稳有序运行。
418 2