- 博客(196)
- 收藏
- 关注
原创 tidb-逻辑备份(6)-lightning导入工具的部署、使用
服务器宕机之类的,可以通过断点续传继续,但是如果数据因不可恢复的错误报错,重启时不会使用断点,会直接报错离开。# 2. 考虑到与旧版本的兼容性,依然可以在本配置项设置 `true` 和 `false` 两个布尔值,其效果与 `required` 和 `off` 相同。从 v4.0.8 开始,checksum 的默认值由此前的 "true" 改为 "required"。# 若 driver = "mysql",此参数为数据库连接参数 (DSN),格式为“用户:密码@tcp(地址:端口)/”。
2024-04-01 10:28:44
1049
原创 tidb-逻辑备份(4)-lightning工具导入的场景
读取dump,转成键值对,存在本地临时文件,排序好。连库,跑sql,可追加导入,允许表内有数据。只支持亚马逊的aurora parquet。刚装完,没建库,不跑业务,全力导入,快。速度慢,可追加导入,支持同时业务使用。专门tidb之间的逻辑导入导出。连库导入,就是直接执行sql。不连库,直接向tikv导入。不连库,直接向tikv导入。5.4之前不能导入gbk。检验完,统计信息收集、无法正常对外提供服务。
2024-04-01 10:24:30
302
原创 pg物理块的存储结构
行指针中表示行内容的偏移量是15bit,能表示的最大偏移量是 215=32768,因此在PostgreSQL中,块的最大大小是32768,即32KB。字段数,其中低11位表示这行有多少个列。其 他的位则是HOT(Heap Only Touples)技术及行可见性的标志位。用于标识行当前的状态,比如行是否具有OID,是否有空属性,共有16位,每位都代表不同的含义。行上的xmin、xmax、cmin、cmax和CLOG日志 一起用于控制行的可见性。是一个数组,用于标识该行上哪些字段(列)为空。
2024-03-29 16:52:01
730
原创 pg声明式分区(常规)(pg 10及以后支持)
product_id int not null, --产品编号。sale_date date not null,--销售日期。buyer_contact text --买家的联系方式。price numeric(12,2), --单价。amount int not null, --数量。buyer varchar(40),--买家名称。
2024-03-29 10:10:38
1406
原创 tidb-逻辑备份(3)-dumping导出的文件
文件包含起始时间,master binary log的位置 内容:创建schema的sql文件内容创建table 的sql文件内容数据源文件内容建表、建库、metadata 与上面一致,额外有个csv文件
2024-03-29 10:08:35
267
原创 tidb-逻辑备份(2)-dumping的使用
T empoyees.WorkOrder表示导出empoyees库下的WorkOrder表。过滤,eg1. "id < 100" eg2."dept_no='d009'"以上面为例,导出employees库下所有的表,所有库下的workorder表。-B empoyees表示导出empoyees库。写到xxx行,会另起一个文件。文件类型,sql/crs(没写的话默认是sql)写到256M,另起一个文件。
2024-03-29 10:07:35
411
原创 tidb-升级常见问题
tiup cluster audit根据上面报错的日志,把问题解决掉,然后从出问题的audit-id处重新开始tiup cluster replay 直接跳过驱逐leader,直接关闭(在不停机升级中已记录)tiup cluster upgrade --force升级后,更新pd-ctl等周边工具tiup install ctl:v6.1.0
2024-03-29 10:04:06
208
原创 oracle 19c添加磁盘报错 ORA-15137
添加asm磁盘的时候报错,ORA-15032 ORA-15137,主要的是后面的这个ORA-15137,asm在rolling状态。前面的可能性很多,但是结果都是asm状态的问题,可能为打补丁的时候有问题导致。刷了一下OCR补丁信息,可以添加磁盘了。
2024-03-27 09:03:35
436
原创 tidb cluster版本升级详解,小白必备
升级是滚动升级,如果升级到leader tikv时,leader节点会使用不了,默认300秒会把该节点上的所有leader驱逐到其他节点,时间一到,就会强制关tikv节点,而加了--force参数就是leader在那也直接重启。--transfer-timeout为默认时间,单位s。需要先升级到大于4.0版本,然后再升级至6.1。小于3.0 3.1不支持直接升级到6.1。修改老版本支持,新版本不支持的参数。兼容性变更,参数网站里有。
2024-03-27 09:01:35
487
原创 tidb-在线缩容(tidb、pd、tikv、tiflash)
输入ytiup cluster display tidb-hahatiup cluster prune tidb-hahaalter table . set tiflash replica 0;Eg.
2024-03-26 13:52:15
553
原创 tidb-在线扩容(tidb、pd、tikv、tiflash)
scale-out-tidb.yaml 配置文件名。tiup cluster scale-out 固定。tidb-haha 集群名。主机加入到集群网络中即可。
2024-03-26 13:50:59
557
原创 tidb监控-grafana、dashboard
查看网址:tiup cluster display tidb-hahaOverview,里面的几个大类(services port status/pd/tidb/tikv/system info)services port statusSystem-info指标PD指标Tidb server指标tikv指标dashboard内置在PD组件中,其他的普罗米修斯、grafana、告警这些都是单独组件
2024-03-26 13:46:11
380
原创 sql server-故障转移群集(HA)
第二个主机也一样的方法 挂在上盘,然后同样来到磁盘管理界面,将该磁盘联机(注意:这个磁盘已经在第一个节点上初始化过了,不需要再初始化,只需要联机即可)2008r2,用域账号连一下,再选用户(我用的 域名\aadministrator,但我觉得用dcadmin也可以,建议试下)配置各个服务器的网卡,一张public网卡,一张心跳网卡,并调整网卡优先级,心跳网卡要取消NETBIOS和DNS的注册。查看磁盘管理,发现虚拟磁盘出现了,对连接的磁盘进行联机/初始化,创建磁盘组操作,如图。
2024-03-25 09:34:44
1104
原创 tidb-用户
如果是给的角色的权限,需要set role all开启角色权限才能体现。用户、用户来自哪个主机(%代表任意)、密码(加密的)、是否锁定。
2024-03-25 09:24:07
446
原创 library cache lock排查方向(P3)
22222322222(会堵塞,因为3要独占,得等前面的2跑完,再3)然后具体有问题的语句去生成的dump文件里看看。大体一样,多了一点,申请对象,在11里是P1。3必须独占,2可共享,1特殊(不知道干嘛)2222222222(不堵塞)
2024-03-25 09:05:36
599
原创 tidb连接方式(连接串)
tiup cluster display tidb-haha2.1mysql客户端登陆mysql -h127.0.0.1 -P4000 -uroot -p'-C64r^Rpe*Mw5Y93+7'2.2mysql workbench登陆Ctrl+回车执行选择的语句
2024-03-22 08:59:55
592
原创 tidb数据文件与日志
数据文件:region元数据(在哪个tikv上)根据拓扑文件查看文件安装路径。根据拓扑文件查看文件安装路径。根据拓扑文件查看文件安装路径。sst文件默认都在db下。数据文件:sst存数据。
2024-03-22 08:58:41
616
原创 tidb-TiFlash介绍
a去读tiflash,发现读不了,数据不一致,tiflash访问tikv当前读到哪里,并做标记。可以自动判断去tiflash还是tikv读,甚至混合读,需要2个表的内容,一个tikv,另一个要大量扫描用tiflash。参与复制,在1节点的tikv(行存)中的修改会在tiflash(列存)中复制。tiflash(列存),更多承载OLAP业务。tiflash不参与投票,无法直接写入,只能读和接收raft log。扫描大量的表,显示出一个报表,得出一个趋势。tikv(行存),更多承载OLTP业务。
2024-03-21 13:40:38
593
原创 TiDB的HTAP特性
tidb server作为协调者,会把tiflash每个列存region在tiflash之间做交换,让表连接发生在一个tiflash,做到不会垮tiflash做表连接。where里a.pid=b.pid,所以在上面过滤完后,对pid进行hash函数算法,hash值相同的a表和b表放在同一个tiflash,让表连接只在一个节点进行。首先并行所有tiflash中的表进行sql的过滤条件,并行操作,内存中。每个节点得出值,传到tidb server中,聚合。2张表都分布在3个tiflash中。
2024-03-21 13:39:39
356
原创 tidb-v6版本部署
Eg.(集群名tidb-haha)(如果配了互信机不用输密码了)当前目录下生成topology.yaml(初始化拓扑文件)安装完成,默认密码-C64r^Rpe*Mw5Y93+7。4.启动tidb server。5.启动tiflash。
2024-03-20 15:42:39
895
原创 weblogic单机搭建
cd /weblogic/Middleware/user_projects/domains//servers/AdminServer。通过cd /weblogic/Middleware/user_projects/domains//bin。cd /weblogic/Middleware/user_projects/domains//bin。passwd weblogic ----修改oracle用户密码。下载jdk-6u45-linux-x64.bin。
2024-03-20 15:33:08
960
原创 sql server-双域控搭建
在DC2上打开Active Directory 用户和计算机,会发现内容和DC1上的完全一致,在Domain Controller中可以看到,DC1、DC2、类型都是全局编录GC,表示两个域控制器是平等互为冗余的(记得在把域中的计算机对象DNS同时指向192.168.100.11和192.168.100.12,这样在当某台域控制器宕机时,不会影响域的正常使用哦)。2.在第二服务器系统中,打开计算机属性,修改计算机名为DC2,加入域为contoso.com,DNS后缀为contoso.com,如图;
2024-03-20 10:04:01
476
原创 SQL Server高可用性——AlwaysOn搭建
、Domain Controllers(域控制器)、Domain Users(域使用者),步骤,右键账号,属性,隶属于,高级,立即查找,添加。6. 进入SQL Server Management Studio,实例,安全性,右键登录名,新建登录名,常规,搜索,高级,,立即查询,选择域用户,确定。22.重启SQL Server服务,在SSMS中,右键实例,属性,可看到,启用HADR为True----------17.安全性,登录名,新建登录名,搜索,位置改为域,再高级,立即查询,添加dcadmin账号。
2024-03-20 10:00:00
4241
原创 tidb DDL的执行流程
2.owner角色的tidb server定期查看job queue,负责执行ddl,它的workers模块从schema load模块中获取最新的结构信息,然后去job queue中按顺序(先进先出)抓取执行,执行后将job放入history queue中。----------1.2ddl(加索引的ddl)语句转化成job放在add index queue中。----------1.1ddl(非加索引的ddl)语句转化成job放在job queue中。owner由pd负责轮循。
2024-03-18 09:15:00
947
原创 tidb DML的读写流程
用户发出sql,语句会被tidb server的Protocol layer(协议层)接收,去pd获取tso时间戳,到parse(解析模块)将sql解析为ast语法树,传给compile模块(区分点查和非点查),再到execute模块(执行器),去tikv中读取数据。--------查某个表的行数,这个表在5个tikv上,每个tikv自己算好行数,汇总到tikv server的缓存里整合,cop task(协同处理)(多数节点都收到了)-------2.5清理锁信息,等于再向tikv写入清理锁的信息。
2024-03-18 08:30:00
2239
原创 tidb的sql的解析和编译
点查:唯一索引、主键索引为条件的增删改查,等于拿着key直接找数据,所以点查直接执行,不需要后面的优化。3.同时继续语句给到parse模块(解析),将sql转化为ast语法树,语法树给到compile模块。:根据前面的结果,结合统计信息,去看走全表扫描还是走索引,走索引看走哪个索引。:不需要的列消除(类似去重distinct)、外连接变内连接、等等。2.到pd client(与pd交互的模块)异步获取pd的tso。:合法性验证,表是否在数据库中存在、判断是否为点查 等等。
2024-03-17 09:30:00
562
原创 tikv总结(个人)
> ,2是key,W是写锁 ,@1表示锁的指向,指向key1,2表示key,100是事务开始时间start_ts,后面的不加锁,依附于第一行。拿着开始时间(100)和key(1)去lock的cf找到锁,1是key,W是写锁 ,pk表示主锁,key,100是事务开始时间start_ts,后面的不加锁,依附于第一行。(多数节点都收到了)的行,获取到了start_ts(100),拿着开始时间(100)和key(1)去default的cf找value(jack),成功获取值。
2024-03-17 09:00:00
1017
原创 PD的架构与功能
pd集成了etcd,支持自动故障转移,不用担心单点故障。也通过etcd的raft保证了数据强一致性,不用担心数据丢失。一般3个节点,有个leader。
2024-03-16 10:00:00
2107
原创 TiKV数据读取和coprocessor
rafstore pool把raft log读出来,写给apply pool,apply pool拿着raft log,写到rocksdb kv中。Tidb server将sql语句要修改的数据载入到缓存中,用户发起commit,开始两阶段提交,会将缓存中修改的数据写入到tikv中。在10:05时想读1-95,但是1-95还在raft中,kv只到1-93,并记录下了挡球写进raft的1-97为readindex。在10:09时,readindex 97也写进kv了,此时1-95必定写进kv了,所以可读。
2024-03-16 08:15:00
1758
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅