这个项目监听mysql binlog(作为从机)并将binlog事件发送到blinker信号。它可以记住最后一个BILCOP位置,并作为MySQL从机工作。

mysqlbinlog2blinker的Python项目详细描述


功能

此包使用 mysql-replication 从mysql的binlog读取事件并发送到blinker的信号。

  • binlog操作级别
  • 行级别

它只会发送rowsevent。

每当binlog事件出现时,它就会被发送到一些信号中:

  1. binlog_position_signal:1个binlog当前位置的信号
  2. binlog_信号:binlog事件的1个信号。
  3. 行信号:事件行的1个信号。每排1个信号。

信号

共有5个信号:

  1. binlog_position_signal:每当binlog事件来通知 binlog流的当前位置
  2. binlog_signal:每当binlog事件来通知binlog事件时发送
  3. 已插入的行信号已更新的行信号已删除的行信号:已发送 以他们的名字命名

连接到信号

要连接到信号,可以使用信号实例或装饰器。

假设需要连接才能在表上写入信号 db0.table1

frommysqlbinlog2blinkerimportsignals@signal.rows_updated.connectdefon_rows_updated_signal(table_name,rows,meta):pass@signal.binlog_signal.connectdefon_binlog_signal(event,stream):pass

信号发布

开始发布信号

frompymysqlblinkerimportstart_publishingstart_publishing({'host':'localohst','user':'root',},)

复制

这个包支持从mysql数据库复制的方法。它 通过在最后一个binlog位置保留内存来操作。默认情况下,它保存到文件中。

要做到这一点,请致电:

frompymysqlblinkerimportstart_replicationstart_replication({'host':'localohst','user':'root',},('/path/to/file/that/remember/binlog/position',2),)

更改日志

0.1

  • 第一个版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为textview创建选定状态(突出显示)   Java Hibernate计数行   Java语言中的字符串比较   java为什么SparkLauncher会立即返回而不会生成任何作业?   java layout_centerInParent在抛出回收视图后不工作   c#中的readInt16()与java中的readShort()   java如何在工具栏菜单中添加昼夜切换器   java在eclipse上向Tomcat提供<Realm/>信息   java使用给定的随机路径构造一个图   带有对象推送的java Morphia聚合阶段组   java关闭JTable实例   性能如何更好地转换java中的所有集合元素?   JAVA木卫一。IOException:通过Eclipse读取Java中的EOF Lucene   java如何在Android中将光标设置在tableLayout的行/列中所需的位置   使用HashMap的Set的java迭代器不会生成值/键吗?   java google guava cachebuilder在ExipeAfterAccess和expireActerWrite之间使用的时间更长   如何将这个排序映射方法从java转换为Kotlin   java如何从运行的JAR文件中读取war目录?   SpringBootJava。使用Java 9模块(JPM)时lang.NoSuchMethodError