背景 TiDB 提供了很多种数据迁移的方式,但这些工具/方案普遍对MySQL比较友好,一旦涉及到异构数据迁移,就不得不另寻出路,借助各种开源或商业的数据同步工具.其实数据在不同系统的流转当中,有一种格式是比较通用的,那就是txt/csv这类文件,把数据用约定好的分隔符换行符等标记存放在一起,比如最常见的逗号分隔: aa,11,a1 bb,22,b2 这个文件可以保存为data.txt或者data.csv,一般主流的数据库都支持把这类文件直接导入到对应的表中. csv本身就是逗号分隔符文件,但是由…
背景 上一篇<记一次简单的Oracle离线数据迁移至TiDB过程>说到在使用Lightning导入csv文件到TiDB的时候发现了一个bug,是这样一个过程. Oracle源库中表名都是大写,经过前文所述的方法导入到TiDB后表名也是保持全大写,数据同步过程非常顺利. 第二天我把整套操作流程教给一位新手朋友,他就挑了一张表用来做实验,结果死活都不行.各种分析和重试都没有效果,就在快要懵逼的时候想到了这个大小写问题,把csv拉出来一看是个全小写的文件名,我尝试着把表名改成大写再导入一次,这次终于…
PostgreSQL pg_dump&psql 数据的备份与恢复   https://www.cnblogs.com/chjbbs/p/6480687.html 文章写的挺好 今天试了下 挺不错的. Usage:  pg_dump [OPTION]... [DBNAME] 数据库名放最后,不指定默认是系统变量PGDATABASE指定的数据库. General options:(一般选项)   -f, --file=FILENAME          output file or director…
一.小米 1.背景 小米关系型存储数据库首选 MySQL,单机 2.6T 磁盘.由于小米手机销量的快速上升和 MIUI 负一屏用户量的快速增加,导致负一屏快递业务数据的数据量增长非常快, 每天的读写量级均分别达到上亿级别,数据快速增长导致单机出现瓶颈,比如性能明显下降.可用存储空间不断降低.大表 DDL 无法执行等,不得不面临数据库扩展的问题. 对于 MySQL 来讲,最直接的方案就是采用分库分表的水平扩展方式,综合来看并不是最优的方案,比如对于业务来讲,对业务代码的侵入性较大:对于 DBA 来…
概述 定义 TiDB官网 https://pingcap.com/zh/ 最新版本为5.3.0 TiDB GitHub源码 https://github.com/pingcap/tidb TiDB是由国内PingCAP公司自主设计.研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP,混合事务和分析处理,在同一个数据库系统同时支持OLTP和OLAP) 的融合型分布式数据库…
背景 最近在给一个物流系统做TiDB POC测试,这个系统是基于MySQL开发的,本次投入测试的业务数据大概10个库约900张表,最大单表6千多万行. 这个规模不算大,测试数据以及库表结构是用Dumpling从MySQL导出,再用Lightning导入到TiDB中,整个过程非常顺利. 系统在TiDB上跑起来后,通过Dashboard观察到有一条SQL非常规律性地出现在慢查询页面中,打开SQL一看只是个单表查询并不复杂,感觉必有蹊跷. 问题现象 以下是从Dashboard中抓出来的原始SQL和执行…
转帖PG的简单使用 https://blog.csdn.net/lk_db/article/details/77971634 一: 纯文件格式的脚本: 示例:1. 只导出postgres数据库的数据,不包括模式 -s   pg_dump -U postgres -f /postgres.sql -s postgres(数据库名)2. 导出postgres数据库(包括数据)   pg_dump -U postgres -f /postgres.sql  postgres(数据库名)3. 导出pos…
TiDB集群安装主要操作 参考资料:https://www.cnblogs.com/plyx/archive/2018/12/21/10158615.html 一.TiDB数据简介 TiDB 是 PingCAP 公司设计的开源分布式 HTAP (Hybrid Transactional and Analytical Processing) 数据库,结合了传统的 RDBMS 和 NoSQL 的最佳特性. TiDB 兼容 MySQL,支持无限的水平扩展,具备强一致性和高可用性.TiDB 的目标是为…
背景 最近在支持一个从Oracle转TiDB的项目,为方便应用端兼容性测试需要把Oracle测试环境的库表结构和数据同步到TiDB中,由于数据量并不大,所以怎么方便怎么来,这里使用CSV导出导入的方式来实现. 整个过程可以分为三个步骤: 库表结构转换 源数据导出 导入目标库 库表结构转换 众所周知TiDB是兼容MySQL协议的,所以Oracle的表结构定义在TIDB不一定能完全使用,这时候就需要做一些转换,比如字段类型.关键字.系统函数等等.如果表比较少的话,手动转一下也不是不行,但本次测试的O…
背景 提高TiDB可用性,需要把多点已有上百T TiDB集群拆分出2套 挑战 1.现有需要拆分的12套TiDB集群的版本多(4.0.9.5.1.1.5.1.2都有),每个版本拆分方法存在不一样 2.其中5套TiDB,数据量均超过10T.最大的TiDB集群目前数据量62T.单TiDB集群备份集大,消耗大量磁盘空间和带宽资源 空间最大3套集群 3.tidb使用方式多样(每种方式拆分方法不同),有直接读写tidb,也有mysql->tidb汇总分析查询,也有tidb->cdc->下游hive…