首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏AustinDatabases

    ProxySQL “大变语句”

    为了避免这样的事情发生,以及数据库的安全,想到了PROXYSQL 的SQL 语句重写功能。 解决的方法就是语句转换,或禁止他 PROXYSQL 的语句转换功能主要是由match + replace 的方式进行的。 以下内容需要你懂得PROXYSQL ,如果你还不懂什么是PROXYSQL,可以翻看我之前的文章,应该是几个月前的。 一般来说如果没有中间件,要想控制用户输入无聊的语句,是很困难的,这里我们下面说用proxysql 来prohibition那些无聊的语句。 当然 PROXYSQL 的功能还很多,今天speacking的也不够,不过今天到此为止,休息休息一下。

    87630发布于 2019-09-30
  • 来自专栏AustinDatabases

    MySQL ProxySql 由于漏洞扫描导致的 PROXYSQL CPU 超高

    开始未来紧急解决问题,重新启动了proxysql服务,并查看错误日志. PROXYSQL 的系统版本的2.012 MYSQL 的版本是8.011 , PROXYSQL 的错误在上边. 随后我们针对PROXYSQL 进行了压缩, 通过模仿高并发连接, 1000并发,不断的进行数据访问, 以及模拟突然的连接失效(断掉), 看看PROXYSQL 本身是不是出现的我们遇到的类似的问题. 在压力测试的过程中,PROXYSQL 系统本身没有出现任何异常的情况, CPU 始终在 %3以下, 在压力测试超过1000并发后, 并且PROXYSQL 最大设置的MAX Connection 1000 这里和公司的网络安全人员进行了相关的配合,其中发现在漏洞扫描期间,PROXYSQL 有CPU 超高的时间匹配度.随后网络安全人员,进行了如下测试, PROXYSQL 在漏洞扫描程序扫描时, 会对PROXYSQL 最终导致PROXYSQL 出现CPU 超高的问题.

    1K40发布于 2020-09-27
  • 来自专栏AustinDatabases

    MYSQL PROXYSQL 集群怎么搞 与 灵活的proxysql 应用

    PROXYSQL 是一个集中化的服务节点,在部署PROXYSQL的时候大部分都是单节点来部署,或者和应用节点一起部署. ? ,而多台PROXYSQL 统一维护一些配置信息将是困难和容易出现问题的,所以当我们需要多个PROXYSQL 的进行统一配置的时候,这时就会出现问题. 所以PROXYSQL 题目上的集群,实际上并不是实际意义上的集群,而是一个类似于信息复制的PROXYSQL 复制组的概念. ? 在我们配置PROXYSQL 多点的时候,将访问多个MYSQL的配置写入一台PROXYSQL服务器,通过PROXYSQL 的配置信息复制的方式将后期加入的节点都作为通用型的整体的MYSQL 所有集群节点的访问 的用户名密码, PROXYSQL cluster的用户名密码,以及PROXYSQL 监控MYSQL的用户名密码.

    2.6K41发布于 2020-10-30
  • 来自专栏数据库相关

    ProxySQL的数据备份

    场景: ProxySQL需要从2台扩展到N台,但是当前ProxySQL没有使用cluster模式部署,而是使用SLB+多个独立的ProxySQL节点的方式承载流量。 推荐的方法: 导出运行中ProxySQL的配置文件,然后到新的ProxySQL实例里面加载。 具体步骤如下: 1、使用sqlite3命令导出为sql文件 sqlite3 /var/lib/proxysql/proxysql.db .dump > /root/proxysql-dump.sql 3、到新的PorxySQL实例去导入 systemctl restart proxysql 使其生成一份初始化的proxysql.db文件 systemctl stop proxysql 停掉proxysql 进程,便于后面的导入操作 执行导入命令 sqlite3 /var/lib/proxysql/proxysql.db < /root/proxysql-dump.sql 4、启动proxySQL systemctl

    43130编辑于 2024-01-10
  • 来自专栏运维之美

    ProxySQL 入门教程

    安装 ProxySQL 安装非常简单。 ? 连接 ProxySQL ProxySQL 默认管理端口 6032,默认需要 127.0.0.1 来进入,进入方式和连接MySQL 方式一致: ? 启动过程 如果找到数据库文件(proxysql.db),ProxySQL 将从 proxysql.db 初始化其内存中配置。因此,磁盘被加载到 MEMORY 中,然后加载到 RUNTIME 中。 如果找不到数据库文件(proxysql.db)且存在配置文件(proxysql.cfg),则解析配置文件并将其内容加载到内存数据库中,然后将其保存在 proxysql.db 中并在加载到 RUNTIME 请务必注意,如果找到 proxysql.db,则不会解析配置文件。也就是说,在正常启动期间,ProxySQL 仅从持久存储的磁盘数据库初始化其内存配置。 ProxySQL 解析通过此接口发送的查询以查找特定于 ProxySQL 的任何命令,如果适当,则将它们发送到嵌入式 SQLite3 引擎以运行查询。

    4.2K30发布于 2019-07-10
  • 来自专栏MySQLBeginner

    ProxySQL Cluster 概述

    1:前言 在 ProxySQL 1.4.2 之前,ProxySQL 单点的解决方法有配合 keepalived 使用来实现 ProxySQL 的主备,但是需要在主备上配置两份完全相同的路由或规则,如果再没有自动运维平台 mysql_servers mysql_users proxysql _servers 2.1 Monitoring 为了监控 Cluster,ProxySQL Cluster 新加了部分表、命令和变量 2.1.2 :configuration table 2.1.2.1: proxysql_servers ProxySQL 集群有哪些实例,可以查看 proxysql_servers 表。 在新增 ProxySQL 实例时,也需要 insert 该表,或者修改 cnf 文件中的 proxysql_servers 部分的配置。 4:参考 https://github.com/sysown/proxysql/wiki/ProxySQL-Cluster http://www.proxysql.com/blog/proxysql-cluster

    1.1K30发布于 2019-02-27
  • 来自专栏zhangdd.com

    Proxysql 的基础知识Proxysql 的基础知识

    Proxysql 的基础知识 ProxySQL是一个可以实现MySQL读写分离的轻量级工具。 ProxySQL的特点 将所有配置保存写入到SQLit表中。 ProxySQL的管理配置 Proxysql中有四层配置: runtime:运行中使用的配置文件 memory:提供用户动态修改配置文件 disk:将修改的配置保存到磁盘SQLit表中(即:proxysql.db ) config:一般不使用它(即:proxysql.cnf) 四层配置图: ? 可以load到runtime,使配置在不用重启proxysql的情况下也可以生效,也可以save到disk,将对配置的修改持久化。

    1.1K30发布于 2018-08-01
  • 来自专栏数据库相关

    proxysql cluster 的搭建

    proxysql cluster 搭建笔记 官方文档:  https://proxysql.com/blog/proxysql-cluster https://proxysql.com/blog/proxysql-cluster-part2 '@'172.100.%.%' IDENTIFIED BY 'proxysql';        注意:这里的账号密码要和下面我们在proxysql里面的mysql_variables段的账号密码配置的一样 机器上,执行如下的操作:  修改 /etc/proxysql.cnf  (修改了admin_variables段、proxysql_servers段、mysql_variables段) datadir= | | 172.100.2.13 | 6032 | 0      | proxysql13 | | 172.100.2.11 | 6032 | 0      | proxysql11 | +----- 段)   【要和proxysql cluster里面的其他节点运行配置一样,集群名称、各种账号密码要一致】 datadir="/var/lib/proxysql" admin_variables = {

    1.7K40发布于 2019-09-17
  • 来自专栏开源部署

    ProxySQL实现MySQL读写分离

    https://proxysql.com/ 本文以ProxySQL为例来介绍读写分离的使用方法 ProxySQL简介 ProxySQL为MySQL的中间件,其有两个版本官方版和percona版,percona /proxysql/tools/proxysql_galera_checker.sh /usr/share/proxysql/tools/proxysql_galera_writer.pl ProxySQL 上配置读写分离 1.在ProxySQL主机上配置yum源 [root@ProxySQL ~]# vim /etc/yum.repos.d/proxysql.repo [proxysql_repo] name = ProxySQL YUM repository baseurl=http://repo.proxysql.com/ProxySQL/proxysql-1.4.x/centos/\$releasever ,所以需要有MySQL客户端连上去对其进行配置 [root@ProxySQL ~]# yum install proxysql mariadb -y 3.启动ProxySQL服务 [root@ProxySQL

    1.3K20编辑于 2022-08-17
  • 来自专栏Java帮帮-微信公众号-技术文章全总结

    MySQL读写分离(ProxySQL)

    https://proxysql.com/ 本文以ProxySQL为例来介绍读写分离的使用方法 ProxySQL简介 ProxySQL为MySQL的中间件,其有两个版本官方版和percona版,percona /proxysql/tools/proxysql_galera_checker.sh /usr/share/proxysql/tools/proxysql_galera_writer.pl ProxySQL 上配置读写分离 1.在ProxySQL主机上配置yum源 [root@ProxySQL ~]# vim /etc/yum.repos.d/proxysql.repo [proxysql_repo] name = ProxySQL YUM repository baseurl=http://repo.proxysql.com/ProxySQL/proxysql-1.4.x/centos/\$releasever ,所以需要有MySQL客户端连上去对其进行配置 [root@ProxySQL ~]# yum install proxysql mariadb -y 3.启动ProxySQL服务 [root@ProxySQL

    6.7K21发布于 2019-05-17
  • 来自专栏「3306 Pai」社区

    浅析ProxySQL用户管理

    本身的账户(通过6033端口接入ProxySQL) max_connections INT CHECK (max_connections >=0) NOT NULL DEFAULT 10000, /proxysql_stats.db | #统计信息历史库 +-----+---------------+-------------------------------------+ ProxySQL | #存储ProxySQL的信息,用于ProxySQL Cluster同步 | runtime_checksums_values 从上到下是SAVE XXX TO XXX; 从下到上是LOAD XXX FROM XXX; 3.明文密码的加密存储 ProxySQL支持明文和哈希加密两种密码保存方式,默认的方式一般都是明文。 # 原明文插入语句如下: # ProxySQL ProxySQL> insert into mysql_users(username,password,active,default_hostgroup)

    1.9K20发布于 2018-09-14
  • 来自专栏DBA 平台和工具

    ProxySQL 设置拦截危险SQL

    ,例如:UPDATE <表名> SET <字段名> = <值>禁止执行等同于更新全表数据的更新操作,例如:UPDATE <表名> SET <字段名> = <值> WHERE 1=1具体实施步骤1.访问ProxySQL TRUE、FALSE-- 加载和保存规则LOAD MYSQL QUERY RULES TO RUNTIME;SAVE MYSQL QUERY RULES TO DISK;使用2.DBA、运维或者研发直接访问ProxySQL 的6033端口mysql -u rd -p123456 -h 127.0.0.1 -P6033当设定好的规则被触发时,ProxySQL会将其拦截,如下图所示:

    41810编辑于 2024-08-02
  • 来自专栏MySQL修行 | 老叶茶馆

    GreatSQL MGR + ProxySQL集群搭建方案

    本文采用RPM方式安装,如果要用yum安装需要更换yum源 $ cat > /etc/yum.repos.d/proxysql.repo << EOF [proxysql] name=ProxySQL YUM repository baseurl=https://repo.proxysql.com/ProxySQL/proxysql-2.4.x/centos/\$releasever gpgcheck =1 gpgkey=https://repo.proxysql.com/ProxySQL/proxysql-2.4.x/repo_pub_key EOF Red Hat 系统要把 \$releasever yum install -y gnutls,再次systemctl start proxysql.service即可启动 启动ProxySQL $ systemctl start proxysql # ','Proxysql@666',10); 这个 SQL 代码的作用是将一个 MySQL 服务器节点添加到 ProxySQL 的管理中,以便 ProxySQL 可以根据定义的规则和策略来分发连接请求,

    59211编辑于 2023-12-25
  • 解析ProxySQL的故障转移机制

    以下是 ProxySQL 如何检测数据库节点故障的一般方式: 心跳检测(Health Check): ProxySQL 定期向数据库节点发送心跳检测请求,以确保节点的正常运行。 端口监测(Port Checking): ProxySQL 可以定期尝试连接数据库节点的端口,以确保节点的网络服务正常运行。如果连接失败,ProxySQL 将把节点标记为不可用。 故障转移流程 ProxySQL 故障转移的具体流程和步骤通常涉及以下几个方面: 检测故障: ProxySQL 会定期检测数据库节点的健康状况,包括查询响应时间、连接数、错误率等指标。 当某个节点出现故障或不可用时,ProxySQL 将会检测到并标记该节点为不可用状态。 标记节点不可用: 当 ProxySQL 检测到数据库节点故障时,会将该节点标记为不可用状态。 在 ProxySQL 故障转移过程中,可能会遇到以下一些常见问题和相应的解决方案: 误判故障: ProxySQL 可能会误将正常节点标记为不可用,或者误将故障节点标记为可用。

    30400编辑于 2025-05-30
  • 来自专栏数据和云

    万字详述 MySQL ProxySQL

    ProxySQL: 官方站点:https://www.proxysql.com/ 官方github:https://github.com/sysown/proxysql/wiki percona ProxySQL proxysql服务器上安装mysql客户端,用于在本机连接到ProxySQL的管理接口 1. tar.gz安装 [root@ss30 proxysql-2.0.10]# tar -xvf proxysql proxysql-2.0.10 install -m 0755 src/proxysql /usr/bin install -m 0600 etc/proxysql.cnf /etc if [ ! 00:00:00 /usr/bin/proxysql -c /etc/proxysql.cnf proxysql 3965 3964 7 21:01 ? =/usr/bin/chown -R proxysql: /var/run/proxysql/ ExecStart=/usr/bin/proxysql -c /etc/proxysql.cnf #PIDFile

    2.5K21发布于 2020-08-14
  • 来自专栏火丁笔记

    通过ProxySQL提升PHPMySQL的性能

    今天我要介绍一下 ProxySQL,通过它可以实现 MySQL 连接池,进而提升 PHP/MySQL 的性能,实际上原理是差不多的,本来没必要再写一篇文章赘述,不过我在配置使用 ProxySQL 的过程中 主要看配置文件 /etc/proxysql.cnf : datadir="/var/lib/proxysql" admin_variables= { admin_credentials="admin 更多信息可以参考:ProxySQL之安装及配置详解。 ,一定要记得提前在后端 MySQL 服务器上创建相应的帐号,我一开始就没创建监控帐号,结果 ProxySQL 运行一段时间就没响应了,这是因为当 ProxySQL 不断用配置里的监控帐号和密码尝试去访问后端服务器的时候 proxysql=1" 最终,我在一台普通服务器上,不通过 ProxySQL 得到了大约 1500 的 RPS,通过 ProxySQL 得到了大约 2000 的 RPS,也就是说,ProxySQL 带来了

    1.4K30编辑于 2021-12-14
  • 来自专栏爱可生开源社区

    技术分享 | ProxySQL 搭配 MySQL HA (上)

    在本机安装一个 ProxySQL 实例,六个 MySQL 实例;ProxySQL 和 MySQL 版本均是最新版。 ProxySQL: 管理端口6032,流量端口6033。 第二,ProxySQL 记录 MySQL 实例相关信息。 所需的两类用户 ProxySQL 与 MySQL 交互,需要两类用户,这两类用户需要同时在主从和组复制环境创建。 SQL: MySQL localhost:3343 ssl SQL > create user proxysql_monitor@'127.0.0.1' identified by 'proxysql_monitor ='proxysql_monitor'; Query OK, 1 row affected (0.00 sec) Admin> set mysql-monitor_password='proxysql_monitor

    1.2K20编辑于 2021-12-27
  • 来自专栏爱可生开源社区

    技术分享 | ProxySQL 搭配 MySQL HA (下)

    、故障转移等功能点,但没有涵盖ProxySQL 相关配置表的工作细节。 | | | 5 | stats_history | /var/lib/proxysql/proxysql_stats.db | frontend ,前端用户,针对 ProxySQL 实例。 backend ,后端用户,针对 MySQL 实例。 这两个字段默认都为1,通常定义一个后端 MySQL 实例用户,会自动映射到前端 ProxySQL 实例。 比如主从流量走端口 6401 ,组复制流量走 6402 ,那么可以直接这样适配: 先把 ProxySQL 要监听的端口添加到变量 mysql-interfaces 里,完了重启 ProxySQL 服务:

    1.2K30编辑于 2022-02-09
  • 来自专栏数据库相关

    proxysql 开启http监控页面的方法

    官方文档地址: https://proxysql.com/blog/proxysql-http-server-initial-release SET admin-web_enabled='true'; -----+----------------+ 11 rows in set (0.00 sec) http://x.x.x.x:6080/ 账号 密码都是 stats 这个页面只能供查看,不能修改proxysql

    1.4K10发布于 2019-09-17
  • 来自专栏DBA 平台和工具

    ProxySQL 实现 MySQL 的读写分离

    今天我带你用 ProxySQL 实现 MySQL 的读写分离。功能:将 "select ... for update" 语句和增删改(insert/update/delete)语句发送到主库。 如果从库的复制延迟超过10秒,ProxySQL会将查询路由到其他可用的从库,如果从库均不可用,会强制把查询请求路由到主库上。 这是我的架构图:ProxySQL: 端口6603MySQL主库:端口6666MySQL从库:端口6667部署-- 连接到MySQL主库创建ProxySQL的monitor监控账号mysql> CREATE 如果从服务器的复制延迟超过10秒,ProxySQL会将查询路由到其他可用的从服务器或主服务器。测试:1)现在我直接普通查询,你会发现,查询请求路由到了从库上。 Java代码搞不定的事情,ProxySQL 帮你搞定。

    45510编辑于 2024-07-30
领券