tidb 架构 ~Tidb学习系列(4)
一 简介:今天我们继续学习tidb
二 集群管理
0 集群配置
验证 4台一组 3个kv 一个pd+server
上线 6台一组
1 动态添加kv服务
nohup tikv-server --pd="IP1:2379" --addr="IP2:20160" --data-dir=/usr/local/tidb/tikv --log-file=/usr/local/tidb/tikv.log & pd指向已存在的pd服务
验证方式
1 查看tivk大小,会发现在慢慢变大
2 观察日志,region在一直迁移
3 通过pd-ctl能观察到存储状态
2 动态添加server服务
nohup tidb-server --store=tikv --path=IP1:2379 --log-file=/usr/local/tidb/tidb.log & pd指向已存在的pd服务
验证方式
通过mysql -hIP:PORT 方式能访问代表正确
3 动态添加pd服务
nohup pd-server --name=pd4 --data-dir=/usr/local/tidb/pd --log-file=/usr/local/tidb/pd.log --client-urls="http://ip2:2379" --peer-urls="http://ip2:2380" --join="http://ip1:2379" &
验证方式
pd-ctl -u http://IP:2379 能查询到所有存储节点
4 loader导入数据注意事项
1 极有可能 导致tidb_server OOM被kill,对于大文件,所以选择一定要cpu和内存配置比较高的服务器
2 对于 insert 和 select,可以开启 set @@session.tidb_batch_insert=1; 隐藏参数,insert 会把大事务分批执行。这样不会因为事务太大而超时,但是可能会导致事务原子性的丢失。如果事务执行过程中报错,会导致只完成一部分事务的插入。所以建议只有在需要的时候,在 session 中使用,这样不会影响其他语句。事务完成以后,可以用 set @@session.tidb_batch_insert=0 关闭。
对 delete 和 update 语句,可以使用 limit 加循环的方式进行操作
tidb 架构 ~Tidb学习系列(4)的更多相关文章
- tidb 架构~tidb 理论学习(1)
一 简介:介绍新型NEW SQL数据库tidb 二 目的: tidb出现的目的,就是代替mysql+中间件,实现横向水平扩展 三 核心理论观点 1 MySQL 是单机数据库,只能通过 XA 来满足跨数 ...
- tidb 架构 ~Tidb学习系列(5)
一 简介:今天我们继续学习tidb的增量传输 二 说明: tidb高度兼容mysql,可以仿照mysql的主从同步复制机制实现mysql->tidb的增量传输 三 实验: 1 下载tidb官方工 ...
- tidb 架构 ~Tidb学习系列(2)
一 简介:咱们今天来学习导入数据篇 二 导入数据测试 1 工具 mysqldumper loader 2 下载tidb企业版工具 wget http://download.ping ...
- tidb 架构 ~Tidb学习系列(3)
tidb集群安装测试1 环境 3台机器2 配置 server1 pd服务+tidb-server server2 tidb-kv server3 tidb-kv3 环境配置命令 ser ...
- tidb 架构 ~Tidb学习系列(1)
一 简介:今天来研究Tidb 二 安装测试: 0 下载Tidb wget http://download.pingcap.org/tidb-latest-linux-amd64.tar.gz 按如 ...
- ABP架构学习系列一 整体项目结构及目录
本系列是基于aspnetboilerplate-0.8.4.0版本写的,其中原因是由于较高的版本太抽象难以理解和分析,对于还菜菜的我要花更多的时间去学习. abp的源码分析学习主要来源于 HK Zha ...
- ABP架构学习系列
ABP实践学习系列 ABP Zero 本地化语言的初始化和扩展 ABP Zero 导航菜单之角色权限 ABP Zero示例项目问题总结 ABP后台服务之作业调度Quartz.NET ABP架构学 ...
- TiDB 架构及设计实现
一. TiDB的核心特性 高度兼容 MySQL 大多数情况下,无需修改代码即可从 MySQL 轻松迁移至 TiDB,分库分表后的 MySQL 集群亦可通过 TiDB 工具进行实时迁移. 水平弹性扩展 ...
- 【合集】TiDB 源码阅读系列文章
[合集]TiDB 源码阅读系列文章 (一)序 (二)初识 TiDB 源码 (三)SQL 的一生 (四)INSERT 语句概览 (五)TiDB SQL Parser 的实现 (六)Select 语句概览 ...
随机推荐
- Go语言之unsafe包介绍及使用
unsafe内容介绍 type ArbitraryType int type Pointer *ArbitraryType func Sizeof(x ArbitraryType) uintptr f ...
- Code First NotMapped
转载:http://www.cnblogs.com/libingql/p/3352058.html 不需要映射的字段,添加 NotMapped 6.非数据库字段属性 在类中,如果有一些属性不需要映射到 ...
- Codeforces Round #382 (Div. 2) C. Tennis Championship
C. Tennis Championship time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- Leetcode 283.移动零 By Python
思路 我们可以用python的list comprehension来取出所以非0的元素,而且这样取出来会保持原有的相对顺序,再统计先后变化的长度,补上相应的0即可 代码 class Solution( ...
- BZOJ 2929: [Poi1999]洞穴攀行
2929: [Poi1999]洞穴攀行 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 351 Solved: 195[Submit][Status][ ...
- luogu3380/bzoj3196 二逼平衡树 (树状数组套权值线段树)
带修改区间K大值 这题有很多做法,我的做法是树状数组套权值线段树,修改查询的时候都是按着树状数组的规则找出那log(n)个线段树根,然后一起往下做 时空都是$O(nlog^2n)$的(如果离散化了的话 ...
- 单片机如何产生PWM信号
用89C52产生控制二相步进电机的程序,用PWM信号控制步进电机 用普通I/O口采用软件定时器中断可以模拟PWM输出 /*采用6MHz晶振,在P1.0脚上输出周期为2.5s,占空比为20%的脉冲信号* ...
- 搭建gulp脚手架
前段时间刚好在开发公司的首页,使用的是gulp工作流,gulp相对于webpack而言,配置简单,也更加直观(很符合直觉),日常开发一些静态页面.html5专题也足够,这里把遇到的坑与实践经验记录一下 ...
- maven项目检出后报错(包括编译报错和运行报错)的常见检查处理方式
maven项目检出后报错(包括编译报错和运行报错)的常见检查处理方式: 1.更改项目的jdk为我们安装的jdk2.更改build配置里的 output folder 目录为 xxx项目名/target ...
- PrintNumber.java
/****************************************************************************** * Compilation: javac ...