最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于python的mysql復(fù)制工具詳解

 更新時間:2019年06月26日 10:10:01   作者:yangyidba  
python-mysql-replication 是基于python實(shí)現(xiàn)的 MySQL復(fù)制協(xié)議工具,我們可以用它來解析binlog 獲取日志的insert,update,delete等事件 ,并基于此做其他業(yè)務(wù)需求。這篇文章主要介紹了基于python的mysql復(fù)制工具,需要的朋友可以參考下

一 簡介

python-mysql-replication 是基于python實(shí)現(xiàn)的 MySQL復(fù)制協(xié)議工具,我們可以用它來解析binlog 獲取日志的insert,update,delete等事件 ,并基于此做其他業(yè)務(wù)需求。比如數(shù)據(jù)更改時失效緩存,監(jiān)聽dml事件通知下游業(yè)務(wù)方做對應(yīng)處理。

其項(xiàng)目信息

二 實(shí)踐

2.1 安裝配置

獲取源代碼

git clone http://www.github.com/noplay/python-mysql-replication

使用pip 安裝

pip install mysql-replication

權(quán)限: 可以直接使用復(fù)制賬號也可以使用其他賬號,但是該賬號必須 SELECT, REPLICATION SLAVE, REPLICATION CLIENT 權(quán)限

GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON . TO 'replicator'@'%' IDENTIFIED BY 'xxxxx';

數(shù)據(jù)庫日志相關(guān)的參數(shù)設(shè)置如下:

log_bin=on ,binlog_format=row,binlog_row_image=FULL

2.2 核心類介紹

python-mysql-replication 的入口是類BinLogStreamReader(),我們在使用該工具時需要實(shí)例化一個BinLogStreamReader()對象 stream, BinLogStreamReader 通過 ReportSlave 向主庫注冊作為一個slave角色,用于接受MySQL的binlog廣播 。有興趣的可以研究其代碼具體實(shí)現(xiàn)。

該實(shí)例提供解析 binlog 各種事件的集合,每個事件也是一個對象。

初始化BinLogStreamReader()實(shí)例需要使用的參數(shù)如下:

2.3 如何使用呢?

最簡單的用法 腳本名 pyreplica.py

開啟兩個窗口,一個窗口執(zhí)行,另外一個窗口操作mysql 寫入或者修改數(shù)據(jù)

python pyreplica.py

輸出如下:

2.3 拓展

基于該工具提供的日志事件解析我們可以做很多事情,比較有名的工具 binlog2sql 利用該工具解析binlog 做數(shù)據(jù)回滾 。

mysql-replication.py

執(zhí)行腳本結(jié)果 如下圖

除了解析binlog,我們還可以用python-mysql-replication 做數(shù)據(jù)全量加增量遷移。比如僅僅遷移某些大表而不是整個庫的時候,可以用到。有興趣的朋友可以想想大概的算法。

總結(jié)

以上所述是小編給大家介紹的基于python的mysql復(fù)制工具,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • MySql數(shù)據(jù)庫基礎(chǔ)知識點(diǎn)總結(jié)

    MySql數(shù)據(jù)庫基礎(chǔ)知識點(diǎn)總結(jié)

    這篇文章主要介紹了MySql數(shù)據(jù)庫基礎(chǔ)知識點(diǎn),總結(jié)整理了mysql數(shù)據(jù)庫基本創(chuàng)建、查看、選擇、刪除以及數(shù)據(jù)類型相關(guān)操作技巧,需要的朋友可以參考下
    2020-06-06
  • Mysql?sql?如何對行數(shù)據(jù)求和

    Mysql?sql?如何對行數(shù)據(jù)求和

    這篇文章主要介紹了Mysql使用sql實(shí)現(xiàn)對行數(shù)據(jù)求和問題,具有很好的參考價值,希望對大家有所幫助。
    2023-05-05
  • 通過HSODBC訪問mysql的實(shí)現(xiàn)步驟

    通過HSODBC訪問mysql的實(shí)現(xiàn)步驟

    通過HSODBC訪問mysql的實(shí)現(xiàn)方法,需要的朋友可以參考下。
    2009-10-10
  • MySQL忘記了root用戶密碼如何重置的解決方案

    MySQL忘記了root用戶密碼如何重置的解決方案

    MySQL是當(dāng)前被廣泛使用的關(guān)系型數(shù)據(jù)庫,MySQL需要設(shè)置root用戶的密碼,用于驗(yàn)證登錄數(shù)據(jù)庫服務(wù)器,但往往可能由于各種原因?qū)е峦浟嗽撁艽a,于是就有了本次分享的內(nèi)容,MySQL忘記root密碼的解決方案,需要的朋友可以參考下
    2024-05-05
  • MySQL索引概念及七種索引類型分享介紹

    MySQL索引概念及七種索引類型分享介紹

    這篇文章主要介紹了MySQL索引概念及七種索引類型分享介紹,索引是存儲引擎用于快速找到記錄的一種數(shù)據(jù)結(jié)構(gòu),這也是索引最基本的功能
    2022-08-08
  • CentOS6.4上使用yum安裝mysql

    CentOS6.4上使用yum安裝mysql

    這篇文章主要為大家詳細(xì)介紹了CentOS6.4上使用yum安裝mysql圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • MySQL中如何進(jìn)行SQL調(diào)優(yōu)舉例詳解

    MySQL中如何進(jìn)行SQL調(diào)優(yōu)舉例詳解

    這篇文章主要介紹了SQL調(diào)優(yōu)的幾種方法,包括合理設(shè)計(jì)索引,避免SELECT*,避免在SQL中進(jìn)行函數(shù)計(jì)算等操作,避免使用%LIKE,注意聯(lián)合索引需滿足最左匹配原則,不要對無索引字段進(jìn)行排序操作,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-01-01
  • MySQL中查詢JSON字段的實(shí)現(xiàn)示例

    MySQL中查詢JSON字段的實(shí)現(xiàn)示例

    MySQL自5.7版本起,對JSON數(shù)據(jù)類型提供了全面的支持,本文主要介紹了MySQL中查詢JSON字段的實(shí)現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • Mysql 5.7.18 解壓版下載安裝及啟動mysql服務(wù)的圖文詳解

    Mysql 5.7.18 解壓版下載安裝及啟動mysql服務(wù)的圖文詳解

    這篇文章主要介紹了Mysql 5.7.18 解壓版下載安裝及啟動mysql服務(wù)的圖文詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-05-05
  • SQL優(yōu)化老出錯,那是你沒弄明白MySQL解釋計(jì)劃用法

    SQL優(yōu)化老出錯,那是你沒弄明白MySQL解釋計(jì)劃用法

    本篇文章講的是SQL優(yōu)化老出錯,那是你沒弄明白MySQL解釋計(jì)劃用法,有興趣的小伙伴速度來看看吧,希望本篇文章能夠幫助到你
    2021-11-11

最新評論

沽源县| 东宁县| 济宁市| 乌审旗| 淮南市| 宝清县| 扬中市| 衡水市| 萨迦县| 育儿| 轮台县| 江山市| 上饶县| 亳州市| 白沙| 丹东市| 安康市| 蓬莱市| 泉州市| 保亭| 保靖县| 新河县| 德令哈市| 水城县| 顺昌县| 岫岩| 湟中县| 临颍县| 阿克陶县| 哈巴河县| 霍山县| 翁源县| 彩票| 临沭县| 漾濞| 庆元县| 陆川县| 平陆县| 遂溪县| 安龙县| 周至县|