数据库中间件 Cetus 2.3.6 分库版

STM32f103--ADC配置 2.对于规则通道,选中EXTI线路11或TIM8_TRGO作为外部触发事件,可以分别通过设置ADC1和ADC2的ADC1_ETRGREG_REMAP位和ADC2_ETRGREG_REMAP位实现。注意: 在双ADC模式里,当转换配置成由外部事件触发时,用户必须将其设置成仅触发主ADC,从ADC设置成软件触发,这样可以防止意外的触发从转换。2.在某些双ADC模式中,在完整的ADC1数据寄存器(ADC1_DR)中包含了ADC1和ADC2的规则转换数据。通过设置ADC_CR2寄存器的ADON位可给ADC上电。 阅读详情

 

  • 数据库初始化

 

#cetus
192.168.10.243

#数据库节点

192.168.10.250
192.168.10.251
192.168.10.252
192.168.10.253

#四台数据库初始化数据库和表
create database if not exists proxy_heart_beat; use proxy_heart_beat; 
CREATE TABLE if not exists tb_heartbeat ( p_id varchar(128) NOT NULL , p_ts timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), PRIMARY KEY (p_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

create database employees;
use employees;
#hash
CREATE TABLE `dept_emp` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `emp_no` int(11) DEFAULT NULL,
  `datetime` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
delete * from dept_emp;

#range
CREATE TABLE `employees` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `emp_no` int(11) DEFAULT NULL,
  `datetime` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

#datetime range
CREATE TABLE `purchase` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `t_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8;


#只在250执行测试单点全局表
CREATE TABLE `regioncode` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `emp_no` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

  • 安装

 

yum install cmake gcc glib2-devel flex mysql-devel gperftools-libs zlib-devel -y
cd /tmp
wget https://github.com/cetus-tools/cetus/archive/v2.3.6.tar.gz
tar -xvf v2.3.6.tar.gz
cd  cetus-2.3.6
mkdir build/
cd build/
CFLAGS='-g -Wpointer-to-int-cast' cmake ../ -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr/local/cetus -DSIMPLE_PARSER=OFF
make install
cp /tmp/cetus-2.3.6/scripts/cetus.service  /etc/init.d/cetus
#修改配置文件
/etc/init.d/cetus
#注意CETUS_HOME,CETUS_CONF,CETUS_CONF配置的和配置文件中一样
#删除
cetus_pid=`sed '/^pid-file=/!d;s/.*=//' ${CETUS_CONF}`
if [ "$cetus_pid" != "" ];then
        CETUS_PID=$cetus_pid
fi

cetus_daemon=`sed '/^daemon=/!d;s/.*=//' ${CETUS_CONF}`
if [ "$cetus_daemon" != "" ];then
        CETUS_DAEMON=$cetus_daemon
fi

cetus_log=`sed '/^log-file=/!d;s/.*=//' ${CETUS_CONF}`
if [ "$cetus_log" != "" ];then
        CETUS_LOG=$cetus_log
fi

#
systemctl daemon-reload

 

  • 配置

 

#配置
cat >> /usr/local/cetus/conf/users.json << EOF
{
	"users":	[{
			"user":	"cetus_app",
			"client_pwd":	"cetus_app",
			"server_pwd":	"cetus_app"
		}, {
			"user":	"cetus_app1",
			"client_pwd":	"cetus_app1",
			"server_pwd":	"cetus_app1"
		}]
}
EOF
#使用默认
cat >> /usr/local/cetus/conf/variables.json << EOF
{
    "variables": [
        {
            "name": "profiling",
            "type": "int",
            "allowed_values": ["*"],
            "silent_values": ["*"]
        },
        {
            "name": "sql_mode",
            "type": "string-csv",
            "allowed_values":  ["STRICT_TRANS_TABLES",
                                "NO_AUTO_CREATE_USER",
                                "NO_ENGINE_SUBSTITUTION"]
        },
        {
            "name": "connect_timeout",
            "type": "string",
            "allowed_values": ["*"],
            "silent_values": ["10", "100"]
        }
    ]
}
EOF
cat >> /usr/local/cetus/conf/sharding.json << EOF
{
  "vdb": [
    {
      "id": 1,
      "type": "int",
      "method": "hash",
      "num": 8,
      "partitions": {"data1": [0,1], "data2": [2,3], "data3": [4,5], "data4": [6,7]}
    },
    {
      "id": 2,
      "type": "int",
      "method": "range",
      "num": 0,
      "partitions": {"data1": 100000, "data2": 200000, "data3": 300000,"data4": 400000}
    },
   {
     "id": 3,
     "type": "datetime",
     "method": "range",
     "num": 0,
    "partitions": {"data1": "2019-03-25 00:00:00", "data2": "2019-04-25 00:00:00", "data3": "2019-05-25 00:00:00","data4": "2019-06-25 00:00:00"}
   }
  ],
  "table": [
    {"vdb": 1, "db": "employees", "table": "dept_emp", "pkey": "emp_no"},
    {"vdb": 2, "db": "employees", "table": "employees", "pkey": "emp_no"},
    {"vdb": 3, "db": "employees", "table": "purchase", "pkey": "t_time"}
  ],
  "single_tables": [
    {"table": "regioncode", "db": "employees", "group": "data1"}
  ]
}
EOF

cat >> /usr/local/cetus/conf/shard.conf << EOF
[cetus]
# For mode
daemon=true
# Loaded Plugins
plugins=shard,admin
# Defines the number of worker processes. 
worker-processes=1
# Proxy Configuration, For eaxmlpe: MySQL master host ip is 192.0.0.1 and salve host ip is 192.0.0.2
proxy-address=0.0.0.0:6001
proxy-backend-addresses=192.168.10.250:3306@data1,192.168.10.251:3306@data2,192.168.10.252:3306@data3,192.168.10.253:3306@data4
proxy-read-only-backend-addresses=192.168.10.250:3306@data1,192.168.10.251:3306@data2,192.168.10.252:3306@data3,192.168.10.253:3306@data4
# Admin Configuration
admin-address=0.0.0.0:7001
admin-username=admin
admin-password=admin
# Backend Configuration, use test db and username created
default-db=testdb
default-username=cetus_app
default-pool-size=100
max-pool-size=400
max-resp-=10485760
long-query-time=100
# Log Configuration, put log in /data and marked by proxy port , /data/cetus needs to be created manually and has rw authority for cetus os user
plugin-dir=lib/cetus/plugins
max-open-files=65536
pid-file=cetus.pid
log-xa-file = /usr/local/cetus/logs/xa.log
log-file= /usr/local/cetus/logs/cetus_6001.log
log-level=debug
# Check salve delay
disable-threads=false
check-slave-delay=true
slave-delay-down=5
slave-delay-recover=1
# For trouble
keepalive=true
verbose-shutdown=true
log-backtrace-on-crash=true
# For performance
enable-tcp-stream=false
enable-fast-stream=false
#For MGR
group-replication-mode=0
EOF

 

  • 启动

 

chmod 660 /usr/local/cetus/conf/shard.conf
/etc/init.d/cetus start
#添加开机自启
chmod +x /etc/rc.d/init.d/cetus
chkconfig --add cetus
​chkconfig --level 2345 cetus on
chkconfig
#业务
mysql --prompt="admin> " --comments -h192.168.10.243  -P7001 -uadmin -padmin
#管理
mysql --prompt="proxy> " --comments -h192.168.10.243  -P6001 -ucetus_app  -pcetus_app

 

 

  • 测试

 

#测试
use employees;
# "partitions": {"data1": [0,1], "data2": [2,3], "data3": [4,5], "data4": [6,7]}
insert into dept_emp(emp_no,datetime) values(0,now()),(1,now()),(2,now()),(3,now()),(4,now()),(5,now()),(6,now()),(7,now());
#没有分配8的hash添加会被分配到第一个节点
insert into dept_emp(emp_no,datetime) values(8,now());

#测试range
#"partitions": {"data1": 100000, "data2": 200000, "data3": 300000,"data4": 400000}
insert into employees(emp_no,datetime) values(1,now()),(100000,now()),(100001,now()),(200000,now()),(200001,now()),(300000,now()),(300001,now()),(400000,now());
#添加越过边界的数据会提示ERROR 1046 (3D000): no group yet
insert into employees(emp_no,datetime) values(400001,now());

#datetime range
#"partitions": {"data1": "2019-03-25 00:00:00", "data2": "2019-04-25 00:00:00", "data3": "2019-05-25 00:00:00","data4": "2019-06-25 00:00:00"}
insert into purchase(t_time) values("2019-03-21"),("2019-03-26"),("2019-04-26"),("2019-05-26"),("2019-06-26");
#超过边界ERROR 1046 (3D000): no group yet
insert into purchase(t_time) values("2019-06-26")

#单点全局表 读写都在250一台数据库上
insert into regioncode(emp_no) values(1),(2),(3),(4);
select * from regioncode;

 

【AI Guide】AI面试攻略只用看这一篇就够了!力争做全网最全的AI面试攻略——大模型(五)Adapter 微调 Adapter 微调(Adapter Fine-tuning)是一种高效的参数高效微调(PEFT)方法。相较于全参数微调(Full Fine-tuning),Adapter 在预训练模型的特定层插入轻量级的可训练模块,而冻结原始模型参数,从而减少计算和存储开销。是缩放因子,控制 Adapter 输出的影响程度。设 Transformer 层的隐藏状态为。为 Adapter 层的可训练参数,为非线性激活函数,如 ReLU。为冻结的预训练模型参数, 阅读详情

相关推荐

学术版GPT安装教程——保姆版(附带原生GPT注册教程)

学术版GPT图文安装教程

DBenD的博客 2万+

数据库中间件 Cetus 2.3.6 读写分离版

搭建数据库主从集群并且初始化数据库 192.168.10.243 #cetus 192.168.10.250 #M 192.168.10.251 #S #开启延迟检测需要创建心跳表 create database if not exists proxy_heart_beat; use proxy_heart_beat; CREATE TABLE if not exists tb_h...

java_w的专栏 247

保姆级教程:从Salmon输出到DESeq2,搞定RNA-seq表达矩阵标准化与下游分析准备

本文提供从Salmon输出到DESeq2标准化的RNA-seq数据分析全流程指南,详细解析表达矩阵构建、标准化方法选择及下游分析准备。重点介绍如何将Salmon定量结果转换为DESeq2兼容格式,包括TPM与原始计数的处理技巧,以及常见问题排查方法,帮助研究人员高效完成RNA-seq数据分析。

weixin_42699679的博客 306

网易cetus数据库中间件安装-读写分离版本

1、数据库主从关系要做好;2、授权用户登录要做好;3、mysql最大连接数设置好,不然会报连接错误;4、版本最好是5.6以上。1、安装依赖 2、下载源码 3、编译安装 4、配置文件 vim users.json vim proxy.conf 5、主库创建心跳表 6、启动...

wd520521的博客 455

微信小程序marker 上的自定义气泡cover-view字体丢失以及max-width不生效问题

微信小程序marker 上的自定义气泡cover-view字体丢失以及max-width不生效问题

weixin_42028275的博客 1502

MaxEnt软件的下载与安装

1、下载网站:http://lucky-boy.ys168.com/ (这是之前在网上搜到的,里面有许多软件安装包,感谢网页主的资源共享,违权必删)

weixin_42191203的博客 2万+

如何成为全栈开发者:网络安全最佳实践完整指南

**Become-A-Full-Stack-Web-Developer** 是一个免费的全栈开发学习资源集合,涵盖从前端到后端的完整技术栈。在构建现代 web 应用时,网络安全是不可忽视的关键环节。本文将介绍全栈开发中的核心安全实践,帮助开发者在学习过程中建立安全意识,保护用户数据和应用系统。 ## 为什么全栈开发者需要关注网络安全? 全栈开发涉及前后端代码编写、数据库管理和服务器配置等多个环

gitblog_00032的博客 436

别再让电池充不满!用CN3791芯片设计太阳能充电电路,这几个调试坑我帮你踩了

本文详细解析了使用CN3791芯片设计太阳能充电电路时的常见调试问题及解决方案。从RCS电阻的选择到MPPT电压偏差的修正,再到线路损耗和温度补偿的优化,提供了全面的避坑指南。通过实测数据和优化方案,帮助工程师提升锂电池充电效率,确保太阳能充电电路的稳定性和可靠性。

weixin_42528191的博客 243

推荐开源项目:Cetus - MySQL的高效数据库访问代理

Cetus是一个专为MySQL设计的高性能数据库中间件,以C语言编写,旨在提供强大的数据库访问代理功能。它使应用程序能够轻松地实现数据库的水平扩展和高可用性,无需大规模修改现有代码。Cetus提供了两种版本——读写分离和分库,满足不同场景的需求,同时保持对MySQL原生协议的高度兼容性。 ## 项目技术分析 Cetus的核心亮点在于其多进程无锁架构,这使得它在高并发环境下能保持极高的效率。此外...

gitblog_00036的博客 829

【人工智能】向量数据库全生命周期数据安全防护体系:破解向量化与检索双环节泄露风险

大模型时代,向量数据库已成为RAG(检索增强生成)架构、语义检索、多模态应用的核心基础设施,解决了大模型幻觉、长上下文窗口限制、私有知识落地等核心痛点。但行业普遍存在认知误区:将Embedding向量等同于“无害的语义压缩乱码”,忽视了向量数据原生的泄露风险。

奶爸的编程之路,也就一周冷个三天 162

Linux7 挂载 nfs 远程目录

每天一个 DBA 小知识,助你更进一步!

LuciferLiu_DBA 1万+

MySQL开源中间件cetus

git地址:https://github.com/Lede-Inc/cetus/blob/master/doc/cetus-quick-try.md==介绍Cetus简介Cetus是由C语言开发的关系型数据库MySQL的中间件,主要提供了一个全面的数据库访问代理功能。Cetus连接方式与MySQL基本兼容,应用程序几乎不用修改即可通过Cetus访问数据库,实现了数据库层的水平扩展和高可用。主要功能...

weixin_34085658的博客 263

全球建筑物提取数据集(免费下载):微软/GlobalMLBuildingFootprints

这个是GitHub上的开源数据集: https://github.com/microsoft/GlobalMLBuildingFootprints 介绍 必应地图正在世界各地发布开放式建筑足迹。我们从 2014 年到 2021 年间的 Bing Maps 图像中检测到了 7.77 亿座建筑物,包括 Maxar 和 Airbus 的图像。数据可在 ODbL 下免费下载和使用。该数据集补充了我们的其他版本。 包括的地区 执照 此数据由 Microsoft 根据Open Dat..

此星光明博客 6290

Cetus架构深度剖析:中间件如何实现MySQL水平扩展与高可用

Cetus是一款高性能MySQL中间件,专为解决数据库水平扩展与高可用挑战设计。通过读写分离、分库分表和故障自动切换等核心功能,Cetus帮助企业轻松应对业务增长带来的数据库压力,是实现MySQL弹性扩展的终极解决方案。 ## 一、Cetus架构全景:从请求到存储的完整链路 Cetus采用分层架构设计,将整个数据处理流程清晰划分为客户端、代理层和数据库层。这种架构不仅确保了各组件职责明确,还为

gitblog_00919的博客 917

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Cetus分库分表实战:Hash与Range分片策略案例分析

Cetus是一款功能强大的数据库中间件,提供了高效的分库分表解决方案,支持Hash与Range两种核心分片策略,能够帮助用户轻松应对数据量增长带来的挑战。通过合理配置分片规则,Cetus可以将数据均匀分布到多个物理数据库中,提升系统的扩展性和性能。 ## 分库分表基础:什么是Sharding Key与分片规则? 在Cetus分库分表方案中,**Sharding Key(分片键)** 是决定数据

gitblog_00176的博客 669

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Cetus:高性能MySQL中间件终极指南——从入门到精通的完整攻略

Cetus是一款高性能MySQL中间件,它能够在应用程序与后端MySQL服务器之间提供透明的路由功能,帮助用户轻松实现数据库读写分离、分库分表等高级功能,是提升数据库性能和扩展性的理想选择。 ## 一、Cetus核心功能解析:为什么选择这款MySQL中间件? ### 1.1 透明化的数据库路由机制 🚀 Cetus最核心的价值在于其透明化的路由能力。传统数据库架构中,应用程序需要直接与多个数

gitblog_00038的博客 835

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

分布式数据库中间件对比汇总分析备战分表分库

https://www.toutiao.com/a6634106360151671309/?tt_from=mobile_qq&amp;utm_campaign=client_share&amp;timestamp=1549513962&amp;app=news_article&amp;utm_source=mobile_qq&amp;iid=59568063679&amp;utm_medium=...

azhuyangjun的博客 549

第26章:MySQL之Cetus sharding

第26章:MySQL之Cetus sharding 目录第26章:MySQL之Cetus sharding一、主机环境二、搭建环境1、准备环境三、Cetus安装1、下载包和安装依赖包2、Cetus安装1.安装说明2.安装实施四、Cetus配置1、创建和修改配置文件2、启动cetus3、导入数据4、验证cetus分库功能五、Cetus测试各种限制1、JOIN的使用限制2、DISTINCT的限制3、...

guanchang26的博客 88

mysql开源的数据库中间件_MySQL开源中间件cetus

读强一致性支持(待实现)==环境准备架构:主:192.168.1.222 从:192.168.1.223 cetus:192.168.1.221数据库对cetus用户授权CREATE database if not exists testdb;create user 'cetus_app'@'192.168.1.221' identified by 'cetus@123';GRANT ...

weixin_32808853的博客 381

Cetus配置文件详解:从基础参数到高级优化的全面教程

Cetus作为一款高性能MySQL中间件,其配置文件是实现透明路由和负载均衡的核心。本文将系统解析Cetus配置文件的结构与参数,帮助用户从基础设置到高级调优,构建稳定高效的数据库代理服务。 ## 配置文件基础结构与核心功能 Cetus配置文件采用INI格式,主要包含全局设置、插件配置、网络参数和性能优化等模块。通过合理配置这些参数,可以实现读写分离、分库分表、故障转移等核心功能。 [![C

gitblog_01180的博客 647

cetus mysql_MySQL开源中间件cetus

读强一致性支持(待实现)==环境准备架构:主:192.168.1.222 从:192.168.1.223 cetus:192.168.1.221数据库对cetus用户授权CREATE database if not exists testdb;create user [emailprotected] identified by [emailprotected];GRANT all ...

weixin_32024145的博客 312

mysql中间件培训_MySQL中间件Cetus

准备:读写分离版本1.配置好MySQL主从2.建立cetus访问数据库的账号GRANT USAGE ON *.* TO 'cetus_app'@'192.168.1.11' identified by 'cetus_app';GRANT all ON `testdb`.* TO 'cetus_app'@'192.168.1.11';3.创建心跳库和表(用于主从延迟检测)create databas...

weixin_30748871的博客 474

终极Cetus Protocol开源项目安装与使用指南:从入门到精通

Cetus Protocol是一款功能强大的开源数据库中间件,提供读写分离、分库分表等核心功能,帮助用户轻松构建高可用、高性能的数据库架构。本文将详细介绍Cetus的安装步骤、配置方法和实际应用场景,让你快速掌握这个强大工具的使用技巧。 ## 📋 准备工作:系统要求与依赖安装 在开始安装Cetus之前,确保你的系统满足以下要求: - 操作系统:Linux(推荐CentOS或SUSE) -

gitblog_00522的博客 594

Cetus常见问题排查:从连接失败到SQL路由错误的解决方法

Cetus作为一款高性能MySQL中间件,在实际应用中可能会遇到各种问题。本文将详细介绍从连接失败到SQL路由错误的常见故障排查方法,帮助新手用户快速定位并解决问题,确保Cetus服务稳定运行。 ## 一、Cetus连接失败问题排查 ### 1.1 网络连接问题排查 当客户端无法连接到Cetus时,首先需要检查网络连接是否正常。可以通过以下步骤进行排查: - 检查Cetus服务是否正常运行:`

gitblog_00608的博客 739

网易mysql中间件开源_MySQL开源中间件cetus

读强一致性支持(待实现)==环境准备架构:主:192.168.1.222 从:192.168.1.223 cetus:192.168.1.221数据库对cetus用户授权CREATE database if not exists testdb;create user ‘cetus_app‘@‘192.168.1.221‘ identified by ‘cetus@123‘;GRANT ...

weixin_39616367的博客 230

cetus权限连接主从mysql_cetus系列~安装和基本配置

cetus系列一 安装1 安装软件环境yum install cmake gcc glib2-devel flex mysql-devel gperftools-libs -y2 创建编译目录mkdir build/ && cd build3 编译安装读写分离版本:cmake ../ -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/...

weixin_34597791的博客 310
上一篇: elasticsearch-7.3.2 集群安装
下一篇: 数据库中间件 Cetus 2.3.6 读写分离版
取壳羊
博客等级 码龄15年 5粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值