mydumper

mydumper安装

微笑、不失礼 提交于 2021-02-08 14:50:15
CentOS6.6 x64位,MySQL5.7安装mydumper 第一步:下载安装包 下载链接: https://launchpad.net/mydumper/0.6/0.6.2/+download/mydumper-0.6.2.tar.gz 第二步:安装依赖包 Mydumper安装有很多依赖包,需要提前安装好 yum install cmake glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel 第三步:解压及安装 通常这一步会碰到很多问题,先说步骤: 1.解压到/usr/local/下并创建软连接 tar -zxvf mydumper-0.6.2.tar.gz -C /usr/local/ cd /usr/local ln -sv mydumper-0.6.2 mydumper 创建连接是为了更好地管理软件包,方便升级等操作 2.编辑及安装 cd /usr/local/mydumper cmake . make make install 通常问题都出在这里: (1)编译器错误: CMake Error: your C compiler: "CMAKE_C_COMPILER-NOTFOUND" was not found. Please set CMAKE_C_COMPILER to a valid

Go Dumpling!让导出数据更容易

你离开我真会死。 提交于 2020-09-24 06:02:41
作者介绍:李淳竹(lichunzhu),TiDB 研发工程师。 Tools SIG Community :主要涵盖 TiDB 数据处理工具,包含 TiDB 数据备份/导入导出,TiDB 数据变更捕获,其他数据库数据迁移至 TiDB 等。 Dumpling 是由 Go 语言编写的用于对数据库进行数据导出的工具。目前支持 MySQL 协议的数据库,并且针对 TiDB 的特性进行了优化。Dumpling 的主要特点包括: 1. 适配 Mydumper,轻松上手。 2. Go 语言编写,定制开发简单。 自定义导出过滤条件; 多种导出格式。目前支持 SQL、CSV 格式的导出; 多种目标源。目前支持本地盘,S3/GCS 正在开发中; 未来计划支持导出多种数据库源。 Go 语言支持 给 Mydumper 贡献代码没有那么容易。主要原因如下: Mydumper 由 C 编写,相比起来编译与准备环境要更为复杂。 Mydumper 调试不太方便,这也不利于在发现问题后查错。 C 语言更难做抽象化,定制化功能困难。 Mydumper repo 没有单元测试与集成测试,只能手动验证功能是否正确。 而 Dumpling 由 Go 语言实现,非常易于维护。 Go 生态有非常丰富的扩展包,这使得在 Dumpling 上实现添加新功能更加容易。同时 Go

分布式数据库的数据备份/恢复,这些你一定要了解

自闭症网瘾萝莉.ら 提交于 2020-08-14 05:29:00
一、概述 在数据作为生产资料的今天,数据早已成为各行各业的生命源泉,数据安全的重要性不言而喻。数据备份是数据安全的基础,完整的备份和有效的恢复手段是应对一切突发状况的重要保障。同时数据备份也对数据的重新利用,发挥数据更大价值,有着重大的作用。 而数据备份的重点是对数据库的备份。定期对数据库进行数据备份,以便能在未来发生系统故障、人为误操作等情况时,进行数据恢复,防范于未然。 巨杉数据库作为新一代分布式交易型数据库,采用“计算与存储分离”的架构;和同时期发展分布式数据库的灯塔厂商AWS在架构上不谋而合。能够在微服务时代更好支撑应用便捷开发的需求。 计算与存储分离的架构,也使得巨杉数据库拥有多种多样的备份恢复方法。在巨杉数据库的存储引擎层和SQL实例层都可以达到对数据库备份恢复的目的。 计算与存储分离架构图 二、存储引擎层的备份恢复 巨杉数据库采用自研的 SequoiaDB 分布式存储引擎,支持物理备份(db.backup)与逻辑备份(sdbexprt)。 物理备份是指转储数据库物理文件(如数据文件、日志文件等),一旦数据库发生故障,可以利用这些文件进行还原;通常可以分为全量备份与增量备份。巨杉数据库物理备份可以针对全库进行或者指定数据组进行; 巨杉数据库做物理备份和恢复工作时,要注意分布式数据库与关系型数据库的不同,即分布式数据库数据恢复会涉及到多台服务器的数据库物理文件

把数据从tidb中导出到mysql数据库中

ぃ、小莉子 提交于 2020-08-09 21:26:33
把数据从tidb中导出到mysql数据库中 # docker ps 找出容器id # 进入容器 # docker exec -it 44a9fa0f6c02 sh # 发现是4000端口映射到了主机的3306端口 # 访问tidb mysql -h192.168.11.222 -P 3306 -u root -p -D common # 导出数据 mydumper -h 192.168.11.222 -P 3306 -u root -p 'pass' -t 4 -F 256 -B common -T emails -o /opt/common/ # 把线上环境备份,并且rename,然后 mysqldump -uroot -p --default-character-set='utf8' common emails > /opt/emails20200514.sql use common; alter table emails rename to emails20200514; CREATE TABLE `emails` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `email` varchar(500) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `status`

分布式数据库的数据备份/恢复,这些你一定要了解

狂风中的少年 提交于 2020-07-27 09:01:52
一、概述 在数据作为生产资料的今天,数据早已成为各行各业的生命源泉,数据安全的重要性不言而喻。数据备份是数据安全的基础,完整的备份和有效的恢复手段是应对一切突发状况的重要保障。同时数据备份也对数据的重新利用,发挥数据更大价值,有着重大的作用。 而数据备份的重点是对数据库的备份。定期对数据库进行数据备份,以便能在未来发生系统故障、人为误操作等情况时,进行数据恢复,防范于未然。 巨杉数据库作为新一代分布式交易型数据库,采用“计算与存储分离”的架构;和同时期发展分布式数据库的灯塔厂商AWS在架构上不谋而合。能够在微服务时代更好支撑应用便捷开发的需求。 计算与存储分离的架构,也使得巨杉数据库拥有多种多样的备份恢复方法。在巨杉数据库的存储引擎层和SQL实例层都可以达到对数据库备份恢复的目的。 计算与存储分离架构图 二、存储引擎层的备份恢复 巨杉数据库采用自研的 SequoiaDB 分布式存储引擎,支持物理备份(db.backup)与逻辑备份(sdbexprt)。 物理备份是指转储数据库物理文件(如数据文件、日志文件等),一旦数据库发生故障,可以利用这些文件进行还原;通常可以分为全量备份与增量备份。巨杉数据库物理备份可以针对全库进行或者指定数据组进行; 巨杉数据库做物理备份和恢复工作时,要注意分布式数据库与关系型数据库的不同,即分布式数据库数据恢复会涉及到多台服务器的数据库物理文件

分布式数据库的数据备份/恢复,这些你一定要了解

北城余情 提交于 2020-07-27 06:11:56
一、概述 在数据作为生产资料的今天,数据早已成为各行各业的生命源泉,数据安全的重要性不言而喻。数据备份是数据安全的基础,完整的备份和有效的恢复手段是应对一切突发状况的重要保障。同时数据备份也对数据的重新利用,发挥数据更大价值,有着重大的作用。 而数据备份的重点是对数据库的备份。定期对数据库进行数据备份,以便能在未来发生系统故障、人为误操作等情况时,进行数据恢复,防范于未然。 巨杉数据库作为新一代分布式交易型数据库,采用“计算与存储分离”的架构;和同时期发展分布式数据库的灯塔厂商AWS在架构上不谋而合。能够在微服务时代更好支撑应用便捷开发的需求。 计算与存储分离的架构,也使得巨杉数据库拥有多种多样的备份恢复方法。在巨杉数据库的存储引擎层和SQL实例层都可以达到对数据库备份恢复的目的。 计算与存储分离架构图 二、存储引擎层的备份恢复 巨杉数据库采用自研的 SequoiaDB 分布式存储引擎,支持物理备份(db.backup)与逻辑备份(sdbexprt)。 物理备份是指转储数据库物理文件(如数据文件、日志文件等),一旦数据库发生故障,可以利用这些文件进行还原;通常可以分为全量备份与增量备份。巨杉数据库物理备份可以针对全库进行或者指定数据组进行; 巨杉数据库做物理备份和恢复工作时,要注意分布式数据库与关系型数据库的不同,即分布式数据库数据恢复会涉及到多台服务器的数据库物理文件

在MySQL和分布式TiDB之间迁移数据

只谈情不闲聊 提交于 2020-05-06 09:29:49
在MySQL和分布式TiDB之间迁移数据,这里用到mydumper工具。 迁移分为2步: 第1步:dump到本地,需要保证本地有足够的磁盘空间 import os import sys import datetime import subprocess src_db1 = ' test1 ' src_table1 = ' table1 ' dump_time1 = datetime.datetime.now().strftime( " %Y%m%d_%H%M " ) file_path1 = ' /home/coconut/backup/%s/%s/%s ' % (src_db1, src_table1, dump_time1) os.system( " mkdir -p %s " % (file_path1)) dict1 = { ' host ' : " mysql1.yourcompany1.com " , ' user ' : " reader1 " , ' password ' : ' 108749512d78aa131a8eeb8d1c067ba3 ' , ' database ' : src_db1, ' table ' : src_table1, ' outputdir ' : file_path1 } dump_command = """ mydumper -h

TiDB数据库 mydumper命令导出数据报错:(mydumper:1908): CRITICAL **: Couldn't acquire global lock, snapsho...

守給你的承諾、 提交于 2020-05-06 08:45:02
今天想使用Tidb官方提供的mydumper来备份AWS上的RDS集群中mysql数据库的某个表,发现报错了 [tidb@:xxx /usr/local/tidb-tools]$ sudo bin/mydumper -h xxx -u xxx -p xxx -P 3306 -t 4 -F 64 -B xxx -T xxx -o /data/test1/ ** (mydumper: 1908 ): CRITICAL **: Couldn ' t acquire global lock, snapshots will not be consistent: Access denied for user ' super ' @ ' % ' (using password: YES) 上网查了一下说是权限问题: 比如上面这位博主说的,mysql用户没有RELOAD权限,我查看了一下我这个用户。发现是有RELOAD权限的。 后来求助于tidb官方,官方给了这样的一个链接:https://stackoverflow.com/questions/20638012/backup-mysql-amazon-rds 发现也没有解决,后来就自己从mydumper官网下载一个源文件0.6.2版本的,并编译了mydumper二进制文件,成功了。 安装mydumper的步骤我的另外一个博客上写的有,可以参考一下

mysql客户端报错:libmysqlclient_16 not defined in file libmysqlclient.so.16

江枫思渺然 提交于 2020-05-06 08:44:16
报错情况: 安装完mydumper之后( 上一篇文章 ),登陆Mysql客户端报错:version libmysqlclient_16 not defined in file libmysqlclient.so.16 with link time reference 同样:mysql的其他客户端都出现了同样的问题,比如:mysqladmin,mysqldumper等,但是mydumper却能正常使用! 很明显,这是库文件的连接出了问题,第一想法,是mydumper安装后什么包修改了这个原本正常的链接,上一篇文章(链接在上面)中有关Mysql的包只有mysql-devel,检查一下是不是这个mysql-devel修改了原有的参数 ldd $(which mysql) | grep mysql rpm -qf /usr/lib64/libmysqlclient.so.16 发现这个libmysqlclient.so.16 并没有在任何包中。 我最近使用可能会牵扯mysql的还有一个percona toolkit,会不会是这个原因呢? rpm -qa | grep Percona Percona-Server-shared-51-5.1.73-rel14.12.624.rhel6.x86_64 果然是这个percona-server,安装toolkit时图便宜,使用了yum

linux安装mydumper软件包以及报错解决

时光总嘲笑我的痴心妄想 提交于 2020-05-06 07:16:11
今天使用mydumper命令从AWS上的RDS集群MYSQL数据库导出数据,发现Tidb官方提供的工具不太适合,所以就自己编译了一个来尝试一下,居然成功了。 首先我的系统是Centos7,并且已经安装过gcc等编译器。 1、需要安装依赖包: yum install -y glib2-devel* mysql-devel* zlib-devel* pcre-devel* openssl-devel* 2、下载安装包: wget https://launchpadlibrarian.net/185032423/mydumper-0.6.2.tar.gz 其他版本的安装包也可以去官网下载:只是我这里使用0.6版本编译成功了。官网连接:https://launchpad.net/mydumper 点击这一块找到0.6版本: 3、 开始cmake编译 [root@test mydumper- 0.6 . 2 ]# ls binlog.c cmake common.h docs g_unix_signal.h mydumper.h myloader.h server_detect.c binlog.h CMakeLists.txt config.h. in g_unix_signal.c mydumper.c myloader.c README server_detect.h [root