mysql数据迁移到ES
下载安装包时注意下载到指定文件夹 这里我放在OPT文件夹下
一:安装logstash
进入到opt文件夹打开终端 执行以下命令
wget -c https://artifacts.elastic.co/downloads/logstash/logstash-6.4.0.zip
加上-c支持断点续传
二:解压logstash
unzip logstash-6.4.0.zip
三:进入到logstash bin目录
cd logstash-6.4.0/bin
四:安装logstash-jdbc
./logstash-plugin install logstash-input-jdbc
五:编写配置文件(jdbc.sql和jdbc.conf,建议在bin目录下vim jdbc.conf)
六:首先在bin目录下新建一个mysql目录,里面包含jdbc.conf,jdbc.sql文件,加入mysql的驱动
jdbc.conf内容:
input {
stdin {
}
jdbc {
# 连接的数据库地址和哪一个数据库,指定编码格式,禁用SSL协议,设定自动重连
jdbc_connection_string => "jdbc:mysql://数据库地址:端口号/数据库名?characterEncoding=UTF-8&useSSL=false&autoReconnect=true"
# 你的账户密码
jdbc_user => "账号"
jdbc_password => "密码"
# 连接数据库的驱动包,建议使用绝对地址
jdbc_driver_library => "mysql/mysql-connector-java-5.1.45-bin.jar"
# 这是不用动就好
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
#处理中文乱码问题
codec => plain { charset => "UTF-8"}
#使用其它字段追踪,而不是用时间
use_column_value => true
#追踪的字段
tracking_column => testid
record_last_run => true
#上一个sql_last_value值的存放文件路径, 必须要在文件中指定字段的初始值
last_run_metadata_path => "mysql/station_parameter.txt"
jdbc_default_timezone => "Asia/Shanghai"
statement_filepath => "mysql/jdbc.sql"
#是否清除 last_run_metadata_path 的记录,如果为真那么每次都相当于从头开始查询所有的数据库记录
clean_run => false
# 这是控制定时的,重复执行导入任务的时间间隔,第一位是分钟
schedule => "*/5 * * * *"
type => "jdbc"
}
}
filter {
json {
source => "message"
remove_field => ["message"]
}
}
output {
elasticsearch {
# 要导入到的Elasticsearch所在的主机
hosts => "192.168.105.180:9200"
# 要导入到的Elasticsearch的索引的名称
index => "db_anytest"
# 类型名称(类似数据库表名)
document_type => "table_anytest"
# 主键名称(类似数据库主键)
document_id => "%{testid}"
# es 账号
user => elastic
password => changeme
}
stdout {
# JSON格式输出
codec => json_lines
}
}
jdbc.sql里面就直接写sql语句就行了
全量同步sql语句就不要写testid了 增量同步就加上where条件 where testid > :sql_last_value
七:开始导入(需要用root账户启动)
./logstash -f mysql/jdbc.conf
mysql数据迁移到ES相关推荐
- centos mysql数据迁移_Mysql 5.7.17 离线版安装和数据迁移(centos 7)
总结下离线版 MySQL 5.7.17 的安装步骤: 1.从官网下载mysql 离线版版安装包 mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz: 2.上传安装包my ...
- python做mysql数据迁移_Python中MySQL数据迁移到MongoDB脚本的方法
MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库 ...
- mysql数据迁移 脚本_PHP将数据从Oracle向Mysql数据迁移实例
为什么要迁移? 首先从运营成本考虑,用Mysql可以节约不少的费用.另一方面,Mysql的稳定性及功能不断地提高与增强,基本上可以满足客户的需求,如支持多 节点部署,数据分区等.还有就是Mysql使用 ...
- 在Linux中进行MySQL数据迁移
由于项目升级或者服务器更换,需要将数据从一个数据库服务转移到另一个数据库服务中.两个数据库所在的服务器的公网IP分别为x.x.x.x和y.y.y.y. 进行MySQL数据迁移之前,需要做一些准备工作, ...
- DM 数据迁移工具——DTS(MySQL数据迁移到DM8数据库 Windows环境)
DM 数据迁移工具--DTS MySQL数据迁移到DM8数据库 Windows环境 DM 数据迁移工具 DM DTS 提供了主流大型数据库迁移到 DM.DM 到 DM.文件迁移到 DM 以及 DM 迁 ...
- Python + Mysql数据迁移
导言:数据迁移对于软件开发过程中是必不可少的,有些公司会有专门的DBA,那数据迁移就归DBA搞定就好了,但大部分的公司不会单独去设立DBA这个职位,面对版本升级,数据库有所大改动的时候,测试人员可以利 ...
- Mysql数据迁移到SqlServer
Mysql数据迁移到SqlServer 我们想要将Mysql的数据库迁移到SqlServer中,怎么办呢? 首先安装mysql-connector-odbc 官网下载地址:https://dev.my ...
- MySQL数据迁移报错1067 - Invalid default value for ‘xxx‘
本文使用Navicat解决MySQL数据迁移时候的报错1067 - Invalid default value for 'xxx'. 现象描述: 源数据库版本:5.6.36 目标数据库版本:5.7.2 ...
- docker mysql数据迁移
docker mysql数据迁移 1.导出mysql数据 1.1 #导出对应数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名1.2 #示例mysqldump -u roo ...
最新文章
- 让列表只显示数据,不显示文件夹的方法
- 计算机硬件市场调查清单,微型计算机组装与维护实用教程王际川第8章节组装计算机.ppt...
- 鸟哥的Linux私房菜(服务器)- 架站文件習題解答篇
- 录取率查询和申请结果查询平台分享
- word公式插件_添加office小插件,让办公更高效
- [Android] TextView 分页功能的实现
- matplotlin 入门
- h5微信f分享链接给对方获取对方手机号_怎么加回微信删除的人?偷偷恢复,亲测有效!...
- Filenet公布第二批打包节点竞选名单
- 【马尔科夫链-蒙特卡罗】马尔科夫链-蒙特卡罗方法对先验分布进行抽样
- 10068---谈谈Runtime类中的freeMemory,totalMemory,maxMemory几个方法
- 计算机打字键盘怎么控制,电脑键盘打字技巧
- 设置Google文档离线同步,更好的高效离线工作
- eclipse git reset文件
- 纸飞机html,纸飞机.html
- IE下不显示自定义错误页面
- 什么是数字化?企业如何实现数字化?
- 导出Word的两种方式
- 大数据笔记--Spark(第四篇)
- Zabbix监控自定义模板,自定义监控项以及图标显示