快速構建 Debezium MySQL Example 數據庫

《大數據平臺架構與原型實現:數據中臺建設實戰》博主歷時三年精心創作的《大數據平臺架構與原型實現:數據中臺建設實戰》一書現已由知名IT圖書品牌電子工業出版社博文視點出版發行,點擊《重磅推薦:建大數據平臺太難了!給我發個工程原型吧!》了解圖書詳情,京東購書鏈接:https://item.jd.com/12677623.html,掃描左側二維碼進入京東手機購書頁面。

Debezium 官方提供的 MySQL Example 數據庫是一個很好的工具,它內置了一個名為 inventory 的數據庫,且已經配置好了 binlog,在測試 CDC 方案時非常有用,同時,它又可以基于 Docker 快速部署,所以使用起來就更方便了。本文專門介紹一下這個數據庫的使用的方法。

本文操作預設本地已安裝并配置好了 docker,如需先行安裝 docker,請參考 《Apache Kafka 基于 S3 的數據導出、導入、備份、還原、遷移方案》一文第4節提供的 Shell 腳本。

1. 啟動 MySQL Server 端


# stop container if running
docker container stop $(docker ps -aqf "name=mysql")
# remove container
docker container rm $(docker ps -aqf "name=mysql")
# start container
docker run -d --rm \--name mysql \-p 3307:3306 \-e MYSQL_ROOT_PASSWORD=Admin1234! \-e MYSQL_USER=mysqluser \-e MYSQL_PASSWORD=Admin1234! \debezium/example-mysql:1.0

備注:為避免和本地安裝的 MySQL Server 沖突,此處特意將端口改為了3307

2. 啟動 MySQL Client 端


docker run -it --rm \--name mysqlterm \--link mysql \mysql:5.7 \sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'

備注:--link可以通過 “容器名” 互相通信,容器間共享環境變量,該參數用來解決:兩個容器通過ip地址連接時容器 IP 地址會變動的問題,mysql 命令行中使用的環境MYSQL_PORT_3306_TCP_ADDRMYSQL_PORT_3306_TCP_PORT均為 link 了 name 為 mysql 的這個容器(就是上面啟動的 Server 端容器)后,從該容器傳遞過來的環境變量,也就是 Server端容器的 IP 地址和 Port。

附錄:Docker 知識點


啟動 MySQL Server 端和 Client 端的 docker 命令是 -d-it 兩個參數特別好的示例!因為兩者的啟動模式恰好就是這兩種參數各自典型的應用場景!簡單地說:

  • -d 用來運行那些**”服務“型的程序**,啟動之后在后臺運行,當前命令行應就地退出,MySQL Server 端進程就是此類典型的案例
  • -it 用來運行那些**”交互“式的命令行**,啟動之后不但要分配命令行終端,且不會主動退出,除非用戶在終端主動退出,MySQL Client 端進程就是此類典型的案例

以下是 Docker 官方文檔 對 -d-i-t 三個參數的解釋:

參數說明解釋
–detach , -dRun container in background and print container ID后臺運行模式,d 意為 detach
–interactive , -iKeep STDIN open even if not attached交互模式,i 意為 interactive
–tty , -tAllocate a pseudo-TTY分配終端,t 意為 tty

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/697186.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/697186.shtml
英文地址,請注明出處:http://en.pswp.cn/news/697186.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

突破編程_C++_面試(指針(1))

面試題 1 :什么是空指針? 在 C 中,空指針是一個特殊的指針值,它不指向任何有效的內存地址。空指針通常用于表示指針不指向任何對象或函數。在C11及以后的版本中, nullptr 是表示空指針的推薦方式。 nullptr 是一個指針…

AI繪畫與修圖:重塑數字藝術的新紀元

文章目錄 一、AI繪畫與修圖的原理二、AI繪畫的應用三、AI修圖的優勢四、面臨的挑戰五、未來發展趨勢《AI繪畫與修圖實戰:PhotoshopFirefly從入門到精通 輕松玩轉AI繪畫與修圖實戰》亮點內容簡介作者簡介 隨著人工智能技術的飛速發展,AI繪畫與修圖已經成為…

如何理解和區分訓練集、測試集和驗證集

如何理解和區分訓練集、測試集和驗證集 🌈 個人主頁:高斯小哥 🔥 高質量專欄:Matplotlib之旅:零基礎精通數據可視化、Python基礎【高質量合集】 💡 創作高質量博文,分享更多關于深度學習、PyTor…

靡語IT:Vue精講(一)

Vue簡介 發端于2013年的個人項目,已然成為全世界三大前端框架之一,在中國大陸更是前端首選。 它的設計思想、編碼技巧也被眾多的框架借鑒、模仿。 紀略 2013年,在Google工作的尤雨溪,受到Angular的啟發,從中提取自…

soc(十七) SOC市場分類

桌面服務器集中式服務器架構和基于ARM微服務器架構的存儲差別在哪? http://www.dostor.com/p/54167.html 手機飛行器汽車家庭監控安防路由器

【前端素材】推薦優質后臺管理系統Protable平臺模板(附源碼)

一、需求分析 后臺管理系統是一種用于管理和監控網站、應用程序或系統的在線工具。它通常是通過網頁界面進行訪問和操作,用于管理網站內容、用戶權限、數據分析等。當我們從多個層次來詳細分析后臺管理系統時,可以將其功能和定義進一步細分,…

華為配置CAPWAP雙棧覆蓋業務示例

配置CAPWAP雙棧覆蓋業務示例 組網圖形 圖1 配置CAPWAP雙棧覆蓋業務示例組網圖 業務需求組網需求數據規劃配置思路配置注意事項操作步驟配置文件 業務需求 企業用戶接入WLAN網絡,以滿足移動辦公的最基本需求。且在覆蓋區域內移動發生漫游時,不影響用戶的業…

解決 PLC QModbusTcpClient 通信自動斷開

項目場景: 提示:這里簡述項目相關背景: 例如:項目場景:QModbusTcpClient 通信 問題描述 提示:這里描述項目中遇到的問題: QModbusTcpClient 連接后,稍微停一段時間,就…

LeetCode10. Regular Expression Matching——完全背包

文章目錄 一、題目二、題解 一、題目 Given an input string s and a pattern p, implement regular expression matching with support for ‘.’ and ‘*’ where: ‘.’ Matches any single character.???? ‘*’ Matches zero or more of the preceding element. The…

【selenium】三大切換 iframe 彈窗alert 句柄window 和 鼠標操作

目錄 一、iframe 1、切換方式: 1、第一種情況: 2、第二種情況: 方式1: 先找到iframe,定位iframe元素(可以通過元素定位的各種方式:xpath,css等等),用對象接收&…

MyBatis Plus中的動態表名實踐

隨著數據庫應用的不斷發展,面對復雜多變的業務需求,動態表名的處理變得愈發重要。在 MyBatis Plus(以下簡稱 MP)這一優秀的基于 MyBatis 的增強工具的支持下,我們可以更便捷地應對動態表名的挑戰。本文將深入研究如何在…

美創新一代數據安全管理平臺宣傳片「龍」重登場

美創新一代數據安全管理平臺(DSM Cloud)產品宣傳片 國產化、混合多云環境催生愈加復雜的數據安全防護、管理及可持續運營挑戰。 美創新一代數據安全管理平臺(DSM Cloud),圍繞韌性數據安全體系,聚焦全域數據…

[HTML]Web前端開發技術27(HTML5、CSS3、JavaScript )JavaScript基礎——喵喵畫網頁

希望你開心,希望你健康,希望你幸福,希望你點贊! 最后的最后,關注喵,關注喵,關注喵,佬佬會看到更多有趣的博客哦!!! 喵喵喵,你對我真的…

activeMq將mqtt發布訂閱轉成消息隊列

1、activemq.xml置文件新增如下內容 2、mqttx測試發送: 主題(配置的模糊匹配,為了并發):VirtualTopic/device/sendData/12312 3、mqtt接收的結果 4、程序處理 package comimport cn.hutool.core.date.DateUtil; imp…

ReactNative進階(二十三)error: no type or protocol named ‘RCTBridgeModule’問題修復

文章目錄 一、前言三、拓展閱讀 一、前言 Jenkins組包RN技術棧實現的iOS應用時&#xff0c;遇到以下錯誤提示信息&#xff1a; error: no type or protocol named ‘RCTBridgeModule’ interface RCTEventDispatcher : NSObject <RCTBridgeModule>error: cannot find i…

【AIGC】基于深度學習的圖像生成與增強技術

摘要&#xff1a; 本論文探討基于深度學習的圖像生成與增強技術在圖像處理和計算機視覺領域的應用。我們綜合分析了主流的深度學習模型&#xff0c;特別是生成對抗網絡&#xff08;GAN&#xff09;和變分自編碼器&#xff08;VAE&#xff09;等&#xff0c;并就它們在實際應用中…

嵌入式linux開發 (三十四) 內存管理2.0(6) 各種段(.code .rodata .data .bss .stack .heap)的含義

我們知道, 邏輯程序在連接的時候在elf 文件中會有 .code .rodata .data 然后在內存中才會有 .code .rodata .data那么為什么鏈接器在鏈接生成的elf文件中會有這些段呢?這涉及到鏈接器的歷史問題

小程序性能優化

背景 在開發小程序的過程中我們發現&#xff0c;小程序的經常會遇到性能問題&#xff0c;尤其是在微信開發者工具的時候更是格外的卡&#xff0c;經過排查發現&#xff0c;卡頓的頁面有這么多的js代碼需要加載&#xff0c;而且都是在進入這個頁面的時候加載&#xff0c;這就會…

Java架構師之路九、設計模式:常見的設計模式,如單例模式、工廠模式、策略模式、橋接模式等

目錄 常見的設計模式&#xff1a; 單例模式&#xff1a; 工廠模式&#xff1a; 策略模式&#xff1a; 橋接模式&#xff1a; 責任鏈模式&#xff1a; Java架構師之路八、安全技術&#xff1a;Web安全、網絡安全、系統安全、數據安全等-CSDN博客Java架構師之路十、框架和工…

Android 仿信號格子強度動畫效果實現

效果圖 在 Android 中&#xff0c;如果你想要繪制一個圓角矩形并使其居中顯示&#xff0c;你可以使用 Canvas 類 drawRoundRect 方法。要使圓角矩形居中&#xff0c;你需要計算矩形的位置&#xff0c;這通常涉及到確定矩形左上角的位置&#xff08;x, y&#xff09;&#xff0…