精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在SpringBoot中通過Canal實現MySQL與Redis的數據同步

數據庫 MySQL
mysql-bin.000003 是首次配置的,如果master節點重啟了,這個文件會遞增變為mysql-bin.000004,這時我們的從節點會自動連上這mysql-bin.000004。

環境:Springboot2.7.12 + MySQL8

1 環境準備

master: 192.168.2.129

slave: 192.168.2.130

使用Docker安裝MySQL,這里Docker安裝省略,網上一堆教程。

Docker安裝完成后,安裝MySQL。

安裝MySQL

步驟1:

[root@node150 kafka]# mkdir -p /root/software/mysql/conf /root/software/mysql/data
 [root@node150 kafka]# chmod -R 777 /root/software/mysql/

步驟2:

進入/root/software/mysql/conf 創建my.cnf 內容如下:

[client]
 #socket = /usr/mysql/mysqld.sock
 default-character-set = utf8mb4
 [mysqld]
 #pid-file        = /var/run/mysqld/mysqld.pid
 #socket          = /var/run/mysqld/mysqld.sock
 #datadir         = /var/lib/mysql
 #socket = /usr/mysql/mysqld.sock
 #pid-file = /usr/mysql/mysqld.pid 
 datadir = /var/lib/mysql
 character_set_server = utf8mb4
 collation_server = utf8mb4_bin
 secure-file-priv= NULL
 # Disabling symbolic-links is recommended to prevent assorted security risks
 symbolic-links=0
 # Custom config should go here
 !includedir /etc/mysql/conf.d/

步驟3:

docker run --name mysql8 --restart=always --privileged=true -v /root/software/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /root/software/mysql/data:/var/lib/mysql -v /etc/localtime:/etc/localtime:ro -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123123 -d mysql --lower_case_table_names=1

完成分別在129,130上完成上面操作。

2 主從配置

129.168.2.129作為master節點,修改my.cnf配置,追加下面配置:

binlog_format=MIXED
log-bin=mysql-bin
server-id=1

129.168.2.130作為slave節點,修改my.cnf配置,追加下面配置:

log-bin=mysql-bin
server-id=2

修改完配置后分別重啟mysql

3 配置從節點

3.1 查看master狀態

mysql> show master status;
 +------------------+----------+--------------+------------------+-------------------+
 | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
 +------------------+----------+--------------+------------------+-------------------+
 | mysql-bin.000001 |      156 |              |                  |                   |
 +------------------+----------+--------------+------------------+-------------------+
 1 row in set (0.00 sec)

這里的File,Position列再配置從節點時需要用到。

3.2 配置從節點

CHANGE MASTER TO 
MASTER_HOST='192.168.2.129',
MASTER_PORT=3306,
MASTER_USER='root',
MASTER_PASSWORD='123123',
master_log_file='mysql-bin.000003',
master_log_pos=156,
master_connect_retry=60,
GET_MASTER_PUBLIC_KEY=1;

執行上面的命令如果報錯如下:

This operation cannot be performed with a running slave io thread; run STOP SLAVE IO_THREAD FOR CHANNEL '' first.

這時需要執行stop slave

注意:上面的mysql-bin.000003 是首次配置的,如果master節點重啟了,這個文件會遞增變為mysql-bin.000004,這時我們的從節點會自動連上這mysql-bin.000004

查看從節點狀態:

mysql> show slave status\G
 *************************** 1. row ***************************
                Slave_IO_State: Waiting for source to send event
                   Master_Host: 192.168.2.129
                   Master_User: root
                   Master_Port: 3306
                 Connect_Retry: 60
               Master_Log_File: mysql-bin.000005
           Read_Master_Log_Pos: 156
                Relay_Log_File: 85acaa370429-relay-bin.000014
                 Relay_Log_Pos: 371
              # 該文件會自動與master節點同步
         Relay_Master_Log_File: mysql-bin.000005
              # 主要看這里的兩個Running是否為Yes
              Slave_IO_Running: Yes
             Slave_SQL_Running: Yes
               Replicate_Do_DB: 
           Replicate_Ignore_DB: 
            Replicate_Do_Table: 
        Replicate_Ignore_Table: 
       Replicate_Wild_Do_Table: 
   Replicate_Wild_Ignore_Table: 
                    Last_Errno: 0
                    Last_Error: 
                  Skip_Counter: 0
           Exec_Master_Log_Pos: 156
               Relay_Log_Space: 755
               Until_Condition: None
                Until_Log_File: 
                 Until_Log_Pos: 0
            Master_SSL_Allowed: No
            Master_SSL_CA_File: 
            Master_SSL_CA_Path: 
               Master_SSL_Cert: 
             Master_SSL_Cipher: 
                Master_SSL_Key: 
         Seconds_Behind_Master: 0
 Master_SSL_Verify_Server_Cert: No
                 Last_IO_Errno: 0
                 Last_IO_Error: 
                Last_SQL_Errno: 0
                Last_SQL_Error: 
   Replicate_Ignore_Server_Ids: 
              Master_Server_Id: 1
                   Master_UUID: 71bb9106-a9a9-11ed-9031-0242ac110002
              Master_Info_File: mysql.slave_master_info
                     SQL_Delay: 0
           SQL_Remaining_Delay: NULL
       Slave_SQL_Running_State: Replica has read all relay log; waiting for more updates
            Master_Retry_Count: 86400
                   Master_Bind: 
       Last_IO_Error_Timestamp: 
      Last_SQL_Error_Timestamp: 
                Master_SSL_Crl: 
            Master_SSL_Crlpath: 
            Retrieved_Gtid_Set: 
             Executed_Gtid_Set: 
                 Auto_Position: 0
          Replicate_Rewrite_DB: 
                  Channel_Name: 
            Master_TLS_Version: 
        Master_public_key_path: 
         Get_master_public_key: 1
             Network_Namespace: 
 1 row in set, 1 warning (0.00 sec)

3.3 測試

在主節點上執行創建數據庫,建表等操作都會自動同步到slave節點上。

4 創建Canal

docker run --name canal -p 11111:11111 -v /opt/canal/conf:/home/admin/canal-server/conf -v /opt/canal/logs:/home/admin/canal-server/logs -d canal/canal-server

5 Springboot整合Canal

添加依賴

<dependencies>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
  </dependency>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
  </dependency>
  <dependency>
    <groupId>top.javatool</groupId>
    <artifactId>canal-spring-boot-starter</artifactId>
    <version>1.2.1-RELEASE</version>
  </dependency>
</dependencies>

配置文件

spring:
  redis:
    host: localhost
    port: 6379
    password: 123123
    database: 8
    lettuce:
      pool:
        maxActive: 8
        maxIdle: 100
        minIdle: 10
        maxWait: -1
---
canal:
  server: 192.168.2.130:11111
  destination: redis #可設置*個,逗號隔開,對應需要創建*文件夾,且文件夾下有instance.properties文件

數據模型

public class Users {


  private Integer id ;
  private String name ;
  private Integer age ;
  @Override
  public String toString() {
    return "Users [id=" + id + ", name=" + name + ", age=" + age + "]";
  }
  
}

具體服務組件

@Component
@CanalTable(value = "users")
public class UserServiceImpl implements EntryHandler<Users> {
  
  private static final Logger logger = LoggerFactory.getLogger(UserServiceImpl.class);
  
  private final StringRedisTemplate stringRedisTemplate ;
  
  public UserServiceImpl(StringRedisTemplate stringRedisTemplate) {
    this.stringRedisTemplate = stringRedisTemplate ;
  }


  @Override
  public void insert(Users user) {
    logger.info("新增數據為{}", user);
    try {
      this.stringRedisTemplate.opsForValue().set("users:" + user.getId(), new ObjectMapper().writeValueAsString(user)) ;
    } catch (JsonProcessingException e) {
      e.printStackTrace();
    }
  }


  @Override
  public void update(Users before, Users after) {
    logger.info("原來數據為{}", before);
    logger.info("更新數據為{}", after);
    try {
      this.stringRedisTemplate.opsForValue().set("users:" + after.getId(), new ObjectMapper().writeValueAsString(after)) ;
    } catch (JsonProcessingException e) {
      e.printStackTrace();
    }
  }


  @Override
  public void delete(Users user) {
    logger.info("刪除的數據為{}", user);
    this.stringRedisTemplate.delete("users:" + user.getId()) ;
  }


}

以上通過增,刪,改數據就能同步到Redis中了。

責任編輯:武曉燕 來源: Spring全家桶實戰案例源碼
相關推薦

2023-05-31 08:56:24

2020-09-21 11:30:28

CanalMySQL數據庫

2025-04-29 08:36:28

SpringCanal數據庫

2023-08-31 08:32:52

2011-06-24 17:23:18

主服務器從服務器同步

2024-09-02 09:14:36

SpringRabbitMQ數據

2010-06-02 16:57:50

MySQL數據庫同步

2010-06-09 14:04:34

MySQL數據庫

2022-12-27 08:56:28

2023-02-17 07:54:39

2021-12-27 09:59:57

SpringCanal 中間件

2023-11-03 13:41:16

數據技術

2025-04-25 08:34:52

2023-10-06 22:35:19

2025-04-01 08:38:41

2024-10-29 11:19:23

點贊系統同步

2024-06-11 00:00:06

Spring考試系統

2019-06-14 13:50:03

應用程序Windows 10 數據同步

2025-05-22 08:15:00

2025-03-20 09:54:47

點贊
收藏

51CTO技術棧公眾號

中文在线免费| www国产一区| 九九久久精品| 欧美日韩一区二区欧美激情| 在线成人性视频| 国产欧美一区二区三区视频在线观看| 欧美精品1区| 精品久久久三级丝袜| 国内外成人免费激情视频| 激情综合闲人网| 国内精品国产三级国产a久久| 欧美黄色www| www.色多多| 久久免费资源| 午夜不卡av免费| 亚洲不卡1区| 一级黄色大片免费观看| 亚洲日本黄色| 久久久精品国产| 亚洲一区二区三区无码久久| 婷婷丁香久久| 黑人与娇小精品av专区| 伊人久久大香线蕉成人综合网 | 日韩欧美国产成人| 中文字幕剧情在线观看一区| 欧美偷拍视频| 国产传媒欧美日韩成人| 国产精品99久久久久久白浆小说| 国产女人被狂躁到高潮小说| 国产精品亚洲人成在99www| 欧美一级在线观看| 丁香婷婷激情网| 草草在线视频| 亚洲美女精品一区| 性欧美大战久久久久久久免费观看 | www.中文字幕久久久| 成人福利视频网站| 成人精品网站在线观看| 男人的天堂av网站| 亚洲成人原创| 欧美黄色片视频| 毛片久久久久久| 亚洲人和日本人hd| 亚洲精品videossex少妇| 免费人成视频在线播放| 久久亚洲精品人成综合网| 色欧美88888久久久久久影院| 日本wwwcom| 伊人手机在线| 亚洲精品你懂的| 亚洲不卡1区| 欧美女优在线观看| 26uuu亚洲婷婷狠狠天堂| 国产欧美一区二区三区不卡高清| www.99视频| 国产精品一二三在| 91色视频在线观看| 国产精品美女一区| 久久99国产精品久久| 国产精品一区二区久久久久| 怡红院男人的天堂| 久久精品国产在热久久| 国产精品一区二区性色av| 男人的天堂av网站| 免费观看成人鲁鲁鲁鲁鲁视频| 日韩免费在线播放| 伊人久久中文字幕| 免费观看在线综合| 91久久精品日日躁夜夜躁国产| 888奇米影视| 国产美女精品人人做人人爽| 亚洲一区二区少妇| www.污视频| 91在线观看地址| 欧美精品一区二区三区在线看午夜| 五月婷婷久久久| 久久久久国色av免费看影院| 日本一区高清在线视频| 97在线观看免费观看高清| 中文字幕国产一区| 中文字幕一区二区三区四区五区人 | 久久久天堂国产精品| 人人澡人人添人人爽一区二区| 亚洲一区二区美女| 国产资源在线视频| 国产另类xxxxhd高清| 欧美日韩精品一区二区在线播放| 亚洲欧美日韩精品一区| 成人直播在线观看| 亚洲欧美日韩一区在线| 久久成人小视频| 黄色工厂这里只有精品| 国产999在线观看| 亚洲图片中文字幕| 成人性生交大片免费 | 精品成av人一区二区三区| 色婷婷综合久久久久| 91精品国产色综合| 乳色吐息在线观看| 欧美男男freegayvideosroom| 亚洲欧洲国产精品| 69av视频在线| 久久精品成人| 不卡视频一区| 六十路在线观看| 亚洲精品亚洲人成人网在线播放| 男人添女人下面高潮视频| 日本在线中文字幕一区二区三区| 日韩区在线观看| 亚洲综合色一区| 午夜亚洲福利| 国产精品嫩草影院久久久| 亚洲AV无码精品自拍| 国产日产亚洲精品系列| 国产片侵犯亲女视频播放| 日本成人片在线| 精品国产乱码久久| 小向美奈子av| 久久国产精品久久久久久电车 | 欧美一级视频免费看| 久久精品超碰| 亚洲精品自产拍| 国产在线拍揄自揄拍| 久久精品国产999大香线蕉| 国产一区二区三区黄| 大地资源网3页在线观看| 色婷婷激情久久| 影音先锋人妻啪啪av资源网站| 1024精品久久久久久久久| 国产精品678| 污污网站在线免费观看| 亚洲最大的成人av| 不卡的在线视频| 欧美中文字幕一区二区| 5566成人精品视频免费| 国产综合视频在线| 亚洲精品日日夜夜| 国产精品久久久久久9999| 菠萝蜜一区二区| 国产精品777| 欧美成熟毛茸茸| 精品久久久久久亚洲精品| 亚洲成人激情小说| 亚洲天堂免费| 91精品久久久久久久久久| eeuss影院在线观看| 在线亚洲人成电影网站色www| 中文成人无字幕乱码精品区| 亚洲乱码久久| 精品久久久久久中文字幕动漫| www在线看| 日韩精品综合一本久道在线视频| 久艹在线观看视频| 国产一区二区不卡| 国产精品一区在线免费观看| 精品中文字幕一区二区三区| 久久影院在线观看| www.成人免费视频| 一区二区免费视频| 亚洲美女在线播放| 亚洲美女一区| 麻豆一区区三区四区产品精品蜜桃| 51漫画成人app入口| 日韩av网址在线观看| 精品欧美一区二区三区免费观看| 91网站最新网址| 日日碰狠狠躁久久躁婷婷| 精品一区二区三| 国产精品电影一区| 黄网站在线播放| 日韩一区和二区| 国产精品30p| 久久久久久亚洲综合| 99视频在线视频| 欧美一区二区三区久久精品| 成人蜜桃视频| 免费福利视频一区二区三区| 中文字幕精品久久| 国产同性人妖ts口直男| 午夜久久久久久电影| 无码国产69精品久久久久同性| 日韩电影在线一区| 在线看成人av电影| 国产精品玖玖玖在线资源| 欧日韩不卡在线视频| 免费av在线网址| 欧美成人女星排名| 无码人妻一区二区三区免费| 中文字幕一区二区三区视频| 无码人妻精品一区二区三| 久久久久.com| 免费观看国产视频在线| 日韩极品在线| 亚洲a级在线观看| 涩涩av在线| 久久这里有精品视频| 欧美性猛交 xxxx| 欧美日韩一区在线| 国产在线观看你懂的| 国产精品污污网站在线观看| 国产精品成人免费一区久久羞羞| 久久精品毛片| 久久这里只有精品18| 欧美日韩中文一区二区| 国产日韩一区二区三区| 欧美性www| 欧美一级淫片播放口| 综合久久2019| 尤物yw午夜国产精品视频明星| 国内毛片毛片毛片毛片| 在线一区二区三区做爰视频网站| 日本免费在线播放| 国产精品久久久久久久久图文区| 久久精品女同亚洲女同13| 九一九一国产精品| av免费网站观看| 亚洲激情一区| 日本丰满少妇黄大片在线观看| 中文字幕精品影院| 国产伦理久久久| 美国十次综合久久| 国产精品亚洲片夜色在线| 日本免费一区二区三区四区| 欧美国产乱视频| 黄色片网站在线观看| 伊人久久久久久久久久| 香蕉视频911| 亚洲成人激情在线| xxxx国产精品| 91精品免费在线观看| 特级西西444www高清大视频| 色综合视频在线观看| 日本中文字幕免费观看| 亚洲综合久久av| 欧美成人三级视频| 亚洲人成影院在线观看| 在线观看天堂av| 国产精品欧美精品| 国产一区二区三区四区五区六区| 久久综合久久鬼色中文字| 日本黄色录像片| 99久久精品久久久久久清纯| 亚洲无人区码一码二码三码| 国产99久久久国产精品免费看| 一级淫片在线观看| 国内精品久久久久影院色| 天堂av手机在线| 国产伦精品一区二区三区免费迷| 亚洲午夜激情影院| 国内精品伊人久久久久av一坑 | 国产亚洲欧美日韩精品一区二区三区| 秋霞av国产精品一区| 韩国成人动漫| 日韩av第一页| 99久久婷婷国产综合精品首页| 国产精品激情自拍| 日韩欧美2区| 国产在线拍偷自揄拍精品| 五月天色综合| 成人在线精品视频| 精品国产亚洲一区二区三区在线| 亚洲综合精品一区二区| 成人av动漫| 久久久人人爽| 精品国产一区二区三区噜噜噜 | 成人福利片网站| 欧美xxxx14xxxxx性爽| 超碰在线资源| 欧日韩不卡在线视频| 国产精品第一| 7777奇米亚洲综合久久 | 亚洲精品乱码久久久久久金桔影视| 天堂在线视频免费观看| 亚洲美女性视频| 在线免费观看黄色网址| 九九精品视频在线观看| hd国产人妖ts另类视频| 国产成人av网址| 亚洲成人a级片| 国产精品午夜av在线| 伊人春色精品| 97超碰免费观看| 亚洲激情不卡| 国产精品一区二区羞羞答答| 国产一区二区免费视频| 妖精视频一区二区| 国产午夜精品一区二区三区嫩草| 中国一级片在线观看| 亚洲va欧美va天堂v国产综合| 精品视频一二三区| 日韩一级完整毛片| 可以在线观看的av| 欧美成人小视频| 亚洲欧美小说色综合小说一区| 国产三级精品网站| 久久a级毛片毛片免费观看| 午夜精品区一区二区三| 国产综合自拍| 亚洲最大成人在线观看| 菠萝蜜视频在线观看一区| 黄大色黄女片18免费| 亚洲成人av资源| 国产精品嫩草影院精东| 日韩成人黄色av| a毛片在线观看| 国产精品久久久久久久7电影| 中文字幕久久精品一区二区| 欧美日韩天天操| 亚洲国产99| 国产美女视频免费看| 国产校园另类小说区| 精品无码m3u8在线观看| 欧美日韩一区二区三区在线看| 日韩一级片免费看| 久久精品视频99| 日韩三区免费| 国产综合18久久久久久| 久久久国产精品| 精品久久久久久中文字幕2017| 不卡视频一二三四| 国产黄色片在线免费观看| 在线免费亚洲电影| 香蕉视频911| 国内精品伊人久久| 精品视频在线观看免费观看| 天堂精品视频| 久久国产日本精品| 50一60岁老妇女毛片| 亚洲精品视频观看| 国产精品无码免费播放| 在线观看亚洲视频| 欧美色999| 欧美国产视频在线观看| 亚洲综合99| 亚洲精品女人久久久| 午夜精品久久久久久久99水蜜桃| 国产视频第二页| 久久久精品网站| 欧美成人xxxx| 亚洲精品国产一区| 日本在线不卡视频| 欧美日韩高清丝袜| 在线精品亚洲一区二区不卡| 男人的天堂在线| 欧美性视频网站| 妖精视频一区二区三区免费观看 | 视频一区二区三区入口| 免费在线观看成年人视频| 午夜精品视频在线观看| 熟妇高潮一区二区三区| 久久免费高清视频| 成人av动漫| 免费无码av片在线观看| 91麻豆成人久久精品二区三区| 99热在线观看免费精品| 亚洲精品一区二区网址| 免费欧美电影| 视频一区视频二区视频三区高| 麻豆国产欧美日韩综合精品二区| 男人天堂资源网| 91精品国产黑色紧身裤美女| 伊人影院在线视频| 国产欧美一区二区视频| 美女日韩在线中文字幕| www.黄色在线| 7777精品伊人久久久大香线蕉经典版下载 | 久久久久久久久久久网站| 亚洲日本一区二区三区在线| 国产一线二线三线女| 97成人超碰视| 特级西西444www高清大视频| 久久天天躁夜夜躁狠狠躁2022| 亚洲啊v在线免费视频| 久激情内射婷内射蜜桃| 久久久久久久一区| 91麻豆国产在线| 欧美片一区二区三区| 日韩欧美ww| 国产九九热视频| 一区二区高清在线| 日韩二区三区| 国产日韩欧美中文| 极品尤物久久久av免费看| 久久久久久国产精品无码| 欧美日韩免费不卡视频一区二区三区| 成人免费网址| 欧美日韩国产综合视频在线| 麻豆精品在线看| 国产在线视频第一页| 国产亚洲精品久久| 日韩区一区二| 漂亮人妻被中出中文字幕| 亚洲欧洲av另类| 熟妇人妻系列aⅴ无码专区友真希| 国产成人免费91av在线| 综合久久亚洲| 69视频在线观看免费| 欧美成人一区二区三区 | 91久久久久久久久| 亚洲一区视频|