乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Otter雙A同步搭建入門教程

       feimishiwo 2018-08-06

      1.準(zhǔn)備階段

      1.1 環(huán)境

      虛擬機(jī)A :192.168.0.130

      虛擬機(jī)B :192.168.0.131

      系統(tǒng):Ubuntu 16.04 LTS

      JRE:OpenJDK 1.8.0_151(A、B都要安裝)

      DB:MySQL 5.7.20(A、B都要安裝)

      ZooKeeper:3.4.11(只裝A機(jī))

      Otter Manager:4.2.14 (只裝A機(jī))(4.2.15啟動(dòng)Node時(shí)感覺(jué)有Bug,沒(méi)有使用)

      Otter Node:4.2.14(A、B都要安裝)

      1.2 安裝環(huán)境

      1.2.1 JRE安裝

      sudo apt-get install default-jre

       

      1.2.2 MySQL安裝

      sudo apt-get install mysql-server

      sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

      1
      2
      3
      4
      5
      character-set-server=utf8
      log-bin=mysql-bin  
      binlog-format=ROW  
      server-id=1 #A,B需要設(shè)置成不一樣的id
      #bind-address=127.0.0.1 #注釋該行

      service mysql restart 

      進(jìn)入mysql,設(shè)置單獨(dú)賬號(hào)密碼

      1
      grant all on *.* to 'root'@'%' identified by 'password';

       

      1.2.3 ZooKeeper安裝

      安裝包地址 http://mirrors./apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz

      解壓可見(jiàn)conf文件夾下有一個(gè)zoo_sample.cfg的文件,重命名為zoo.cfg并修改以下配置

      1
      2
      dataDir=../datas
      dataLogDir=../logs

       

      1.2.4 Otter Manager安裝

      安裝包地址 https://github.com/alibaba/otter/releases 請(qǐng)自己選擇版本

      解壓可見(jiàn)conf文件夾下otter.properties文件,修改以下配置

      1
      2
      3
      4
      5
      6
      7
      #以下配置為最基本需要改的配置,其他配置可根據(jù)實(shí)際要用的功能進(jìn)行修改
      otter.domainName = 192.168.0.130 #一定要改,不要用127.0.0.1
      otter.port = 9000 #manager 站點(diǎn)端口號(hào)
      otter.database.driver.url = jdbc:mysql://192.168.0.130:3306/otter
      otter.database.driver.username = root
      otter.database.driver.password = password
      otter.zookeeper.cluster.default = 192.168.0.130:2181

       

      1.2.5 Otter Node 安裝

      安裝包地址 https://github.com/alibaba/otter/releases 請(qǐng)自己選擇版本

      解壓可見(jiàn)conf文件夾下otter.properties文件,修改以下配置

      1
      2
      3
      #以下配置為最基本需要改的配置,其他配置可根據(jù)實(shí)際要用的功能進(jìn)行修改
      otter.nodeHome = ../
      otter.manager.address = 192.168.0.130:1099 

      conf文件夾下創(chuàng)建一個(gè)新的配置文件,命名為nid,寫入node id,A機(jī)為1,B機(jī)為2。該id后面會(huì)介紹。

      1
      1  

       

      2.啟動(dòng)

      2.1 啟動(dòng)ZooKeeper

      進(jìn)入ZooKeeper目錄下的bin文件夾,執(zhí)行以下命令(不要使用sh,一定要用bash)

      1
      bash zkServer.sh start

       

      2.2 啟動(dòng)Otter Manager

      在A機(jī)中執(zhí)行以下數(shù)據(jù)庫(kù)語(yǔ)句,創(chuàng)建Otter庫(kù)

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      83
      84
      85
      86
      87
      88
      89
      90
      91
      92
      93
      94
      95
      96
      97
      98
      99
      100
      101
      102
      103
      104
      105
      106
      107
      108
      109
      110
      111
      112
      113
      114
      115
      116
      117
      118
      119
      120
      121
      122
      123
      124
      125
      126
      127
      128
      129
      130
      131
      132
      133
      134
      135
      136
      137
      138
      139
      140
      141
      142
      143
      144
      145
      146
      147
      148
      149
      150
      151
      152
      153
      154
      155
      156
      157
      158
      159
      160
      161
      162
      163
      164
      165
      166
      167
      168
      169
      170
      171
      172
      173
      174
      175
      176
      177
      178
      179
      180
      181
      182
      183
      184
      185
      186
      187
      188
      189
      190
      191
      192
      193
      194
      195
      196
      197
      198
      199
      200
      201
      202
      203
      204
      205
      206
      207
      208
      209
      210
      211
      212
      213
      214
      215
      216
      217
      218
      219
      220
      221
      222
      223
      224
      225
      226
      227
      228
      229
      230
      231
      232
      233
      234
      235
      236
      237
      238
      239
      240
      241
      242
      243
      244
      245
      246
      247
      248
      249
      250
      251
      252
      253
      254
      255
      256
      257
      258
      CREATE DATABASE /*!32312 IF NOT EXISTS*/ `otter` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */;
      USE `otter`;
      CREATE TABLE `ALARM_RULE` (
        `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
        `MONITOR_NAME` varchar(1024) DEFAULT NULL,
        `RECEIVER_KEY` varchar(1024) DEFAULT NULL,
        `STATUS` varchar(32) DEFAULT NULL,
        `PIPELINE_ID` bigint(20) NOT NULL,
        `DESCRIPTION` varchar(256) DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        `MATCH_VALUE` varchar(1024) DEFAULT NULL,
        `PARAMETERS` text DEFAULT NULL,
        PRIMARY KEY (`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `AUTOKEEPER_CLUSTER` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `CLUSTER_NAME` varchar(200) NOT NULL,
        `SERVER_LIST` varchar(1024) NOT NULL,
        `DESCRIPTION` varchar(200) DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `CANAL` (
        `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
        `NAME` varchar(200) DEFAULT NULL,
        `DESCRIPTION` varchar(200) DEFAULT NULL,
        `PARAMETERS` text DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `CANALUNIQUE` (`NAME`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `CHANNEL` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NAME` varchar(200) NOT NULL,
        `DESCRIPTION` varchar(200) DEFAULT NULL,
        `PARAMETERS` text DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `CHANNELUNIQUE` (`NAME`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `COLUMN_PAIR` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `SOURCE_COLUMN` varchar(200) DEFAULT NULL,
        `TARGET_COLUMN` varchar(200) DEFAULT NULL,
        `DATA_MEDIA_PAIR_ID` bigint(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_DATA_MEDIA_PAIR_ID` (`DATA_MEDIA_PAIR_ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `COLUMN_PAIR_GROUP` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `DATA_MEDIA_PAIR_ID` bigint(20) NOT NULL,
        `COLUMN_PAIR_CONTENT` text DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_DATA_MEDIA_PAIR_ID` (`DATA_MEDIA_PAIR_ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `DATA_MEDIA` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NAME` varchar(200) NOT NULL,
        `NAMESPACE` varchar(200) NOT NULL,
        `PROPERTIES` varchar(1000) NOT NULL,
        `DATA_MEDIA_SOURCE_ID` bigint(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `DATAMEDIAUNIQUE` (`NAME`,`NAMESPACE`,`DATA_MEDIA_SOURCE_ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `DATA_MEDIA_PAIR` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `PULLWEIGHT` bigint(20) DEFAULT NULL,
        `PUSHWEIGHT` bigint(20) DEFAULT NULL,
        `RESOLVER` text DEFAULT NULL,
        `FILTER` text DEFAULT NULL,
        `SOURCE_DATA_MEDIA_ID` bigint(20) DEFAULT NULL,
        `TARGET_DATA_MEDIA_ID` bigint(20) DEFAULT NULL,
        `PIPELINE_ID` bigint(20) NOT NULL,
        `COLUMN_PAIR_MODE` varchar(20) DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_PipelineID` (`PIPELINE_ID`,`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `DATA_MEDIA_SOURCE` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NAME` varchar(200) NOT NULL,
        `TYPE` varchar(20) NOT NULL,
        `PROPERTIES` varchar(1000) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `DATAMEDIASOURCEUNIQUE` (`NAME`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `DELAY_STAT` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `DELAY_TIME` int(21) NOT NULL,
        `DELAY_NUMBER` bigint(20) NOT NULL,
        `PIPELINE_ID` bigint(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_PipelineID_GmtModified_ID` (`PIPELINE_ID`,`GMT_MODIFIED`,`ID`),
        KEY `idx_Pipeline_GmtCreate` (`PIPELINE_ID`,`GMT_CREATE`),
        KEY `idx_GmtCreate_id` (`GMT_CREATE`,`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `LOG_RECORD` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NID` varchar(200) DEFAULT NULL,
        `CHANNEL_ID` varchar(200) NOT NULL,
        `PIPELINE_ID` varchar(200) NOT NULL,
        `TITLE` varchar(1000) DEFAULT NULL,
        `MESSAGE` text DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `logRecord_pipelineId` (`PIPELINE_ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `NODE` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NAME` varchar(200) NOT NULL,
        `IP` varchar(200) NOT NULL,
        `PORT` bigint(20) NOT NULL,
        `DESCRIPTION` varchar(200) DEFAULT NULL,
        `PARAMETERS` text DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `NODEUNIQUE` (`NAME`,`IP`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `PIPELINE` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NAME` varchar(200) NOT NULL,
        `DESCRIPTION` varchar(200) DEFAULT NULL,
        `PARAMETERS` text DEFAULT NULL,
        `CHANNEL_ID` bigint(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `PIPELINEUNIQUE` (`NAME`,`CHANNEL_ID`),
        KEY `idx_ChannelID` (`CHANNEL_ID`,`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `PIPELINE_NODE_RELATION` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `NODE_ID` bigint(20) NOT NULL,
        `PIPELINE_ID` bigint(20) NOT NULL,
        `LOCATION` varchar(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_PipelineID` (`PIPELINE_ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `SYSTEM_PARAMETER` (
        `ID` bigint(20) unsigned NOT NULL,
        `VALUE` text DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
      CREATE TABLE `TABLE_HISTORY_STAT` (
        `ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
        `FILE_SIZE` bigint(20) DEFAULT NULL,
        `FILE_COUNT` bigint(20) DEFAULT NULL,
        `INSERT_COUNT` bigint(20) DEFAULT NULL,
        `UPDATE_COUNT` bigint(20) DEFAULT NULL,
        `DELETE_COUNT` bigint(20) DEFAULT NULL,
        `DATA_MEDIA_PAIR_ID` bigint(20) DEFAULT NULL,
        `PIPELINE_ID` bigint(20) DEFAULT NULL,
        `START_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `END_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_DATA_MEDIA_PAIR_ID_END_TIME` (`DATA_MEDIA_PAIR_ID`,`END_TIME`),
        KEY `idx_GmtCreate_id` (`GMT_CREATE`,`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `TABLE_STAT` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `FILE_SIZE` bigint(20) NOT NULL,
        `FILE_COUNT` bigint(20) NOT NULL,
        `INSERT_COUNT` bigint(20) NOT NULL,
        `UPDATE_COUNT` bigint(20) NOT NULL,
        `DELETE_COUNT` bigint(20) NOT NULL,
        `DATA_MEDIA_PAIR_ID` bigint(20) NOT NULL,
        `PIPELINE_ID` bigint(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_PipelineID_DataMediaPairID` (`PIPELINE_ID`,`DATA_MEDIA_PAIR_ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `THROUGHPUT_STAT` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `TYPE` varchar(20) NOT NULL,
        `NUMBER` bigint(20) NOT NULL,
        `SIZE` bigint(20) NOT NULL,
        `PIPELINE_ID` bigint(20) NOT NULL,
        `START_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `END_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `idx_PipelineID_Type_GmtCreate_ID` (`PIPELINE_ID`,`TYPE`,`GMT_CREATE`,`ID`),
        KEY `idx_PipelineID_Type_EndTime_ID` (`PIPELINE_ID`,`TYPE`,`END_TIME`,`ID`),
        KEY `idx_GmtCreate_id` (`GMT_CREATE`,`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE `USER` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `USERNAME` varchar(20) NOT NULL,
        `PASSWORD` varchar(20) NOT NULL,
        `AUTHORIZETYPE` varchar(20) NOT NULL,
        `DEPARTMENT` varchar(20) NOT NULL,
        `REALNAME` varchar(20) NOT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        UNIQUE KEY `USERUNIQUE` (`USERNAME`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE  `DATA_MATRIX` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT,
        `GROUP_KEY` varchar(200) DEFAULT NULL,
        `MASTER` varchar(200) DEFAULT NULL,
        `SLAVE` varchar(200) DEFAULT NULL,
        `DESCRIPTION` varchar(200) DEFAULT NULL,
        `GMT_CREATE` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `GMT_MODIFIED` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
        PRIMARY KEY (`ID`),
        KEY `GROUPKEY` (`GROUP_KEY`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      insert into USER(ID,USERNAME,PASSWORD,AUTHORIZETYPE,DEPARTMENT,REALNAME,GMT_CREATE,GMT_MODIFIED) values(null,'admin','801fc357a5a74743894a','ADMIN','admin','admin',now(),now());
      insert into USER(ID,USERNAME,PASSWORD,AUTHORIZETYPE,DEPARTMENT,REALNAME,GMT_CREATE,GMT_MODIFIED) values(null,'guest','471e02a154a2121dc577','OPERATOR','guest','guest',now(),now());

      在A,B機(jī)中都要執(zhí)行以下數(shù)據(jù)庫(kù)語(yǔ)句,創(chuàng)建retl庫(kù)(若只是單向同步,則不需要執(zhí)行該語(yǔ)句。該語(yǔ)句用作雙A同步時(shí)的算法)

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      /*
      供 otter 使用, otter 需要對(duì) retl.* 的讀寫權(quán)限,以及對(duì)業(yè)務(wù)表的讀寫權(quán)限
      1. 創(chuàng)建database retl
      */
      CREATE DATABASE retl;
      /* 2. 用戶授權(quán) 給同步用戶授權(quán) */
      CREATE USER retl@'%' IDENTIFIED BY 'retl';
      GRANT USAGE ON *.* TO `retl`@'%';
      GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO `retl`@'%';
      GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE ON `retl`.* TO `retl`@'%';
      /* 業(yè)務(wù)表授權(quán),這里可以限定只授權(quán)同步業(yè)務(wù)的表 */
      GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO `retl`@'%'
      /* 3. 創(chuàng)建系統(tǒng)表 */
      USE retl;
      DROP TABLE IF EXISTS retl.retl_buffer;
      DROP TABLE IF EXISTS retl.retl_mark;
      DROP TABLE IF EXISTS retl.xdual;
      CREATE TABLE retl_buffer
      (  
          ID BIGINT(20) AUTO_INCREMENT,
          TABLE_ID INT(11) NOT NULL,
          FULL_NAME varchar(512),
          TYPE CHAR(1) NOT NULL,
          PK_DATA VARCHAR(256) NOT NULL,
          GMT_CREATE TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
          GMT_MODIFIED TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
          CONSTRAINT RETL_BUFFER_ID PRIMARY KEY (ID)
      )  ENGINE=InnoDB DEFAULT CHARSET=utf8;
      CREATE TABLE retl_mark
      (  
          ID BIGINT AUTO_INCREMENT,
          CHANNEL_ID INT(11),
          CHANNEL_INFO varchar(128),
          CONSTRAINT RETL_MARK_ID PRIMARY KEY (ID)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      CREATE TABLE xdual (
        ID BIGINT(20) NOT NULL AUTO_INCREMENT,
        X timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
        PRIMARY KEY (ID)
      ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
      /* 4. 插入初始化數(shù)據(jù) */
      INSERT INTO retl.xdual(id, x) VALUES (1,now()) ON DUPLICATE KEY UPDATE x = now();

      進(jìn)入Otter Manager 下的bin目錄

      1
      bash startup.sh

      這時(shí)等待數(shù)秒,Otter Manager站點(diǎn)已啟動(dòng),可以訪問(wèn)http://192.168.0.130:9000配置Otter Node 的信息了。

       

      2.3 啟動(dòng)Otter Node

      如果你未在Otter Manager站點(diǎn)配置Otter Node的信息,則請(qǐng)暫時(shí)跳過(guò)該節(jié),直接查看下面配置章節(jié),配置完成后再回來(lái)該節(jié)啟動(dòng)Otter Node

      進(jìn)入Otter Node下的bin目錄

      1
      bash startup.sh

          

      3.配置

      進(jìn)入Otter Manager站點(diǎn)后,使用賬號(hào):admin,密碼:admin(默認(rèn)),獲得超級(jí)管理員權(quán)限。

      3.1 ZooKeeper配置

      機(jī)器管理  -->  ZooKeeper管理 ,添加,保存,如下圖

       

       3.2 Node配置

      機(jī)器管理  -->  Node管理 ,添加,保存(2次,A機(jī)一個(gè)Node,B機(jī)一個(gè)Node),如下圖(名稱和IP需要根據(jù)不同機(jī)器修改,這里只列出A機(jī)圖片)

      最后可在Node管理列表中看見(jiàn),其中序號(hào)即我們上面安裝過(guò)程中寫入的nid文件的id號(hào),配置好之后,即可啟動(dòng)Otter Node

      啟動(dòng)后可見(jiàn)配置列表

      3.3 數(shù)據(jù)源配置

      配置管理  -->  數(shù)據(jù)源配置,配置A機(jī)、B機(jī)兩個(gè)MySQL 數(shù)據(jù)源

      配置完成后可見(jiàn)配置列表

      3.4 數(shù)據(jù)表配置

      配置管理  -->  數(shù)據(jù)表配置,配置A機(jī)、B機(jī)兩個(gè)MySQL 數(shù)據(jù)源所需要同步的數(shù)據(jù)表(自己的數(shù)據(jù)庫(kù),我這里新建test庫(kù)),其中table name配置如果想同步所有表則配置為.*,否則則配置對(duì)應(yīng)表名即可

      配置完成后可見(jiàn)配置列表

       

      3.5 Canal配置

      將canal看作是A、B兩機(jī)的從庫(kù)即可,github上解釋道,canal模擬mysql slave的交互協(xié)議,偽裝自己為mysql slave,向mysql master發(fā)送dump協(xié)議。

      配置管理  -->  canal配置,配置A機(jī)、B機(jī)兩個(gè)canal。實(shí)質(zhì)上兩個(gè)canal分別運(yùn)行在A、B兩機(jī)上的Node節(jié)點(diǎn)上。配置如下,其他使用默認(rèn)配置。

      位點(diǎn)信息分別在A、B兩個(gè)MySQL執(zhí)行以下語(yǔ)句獲取

      1
      2
      show master status;
      select unix_timestamp(now());

      配置完成后可見(jiàn)配置列表

       

      3.6 同步任務(wù)配置

      同步管理 -->  Channel管理 ,添加一個(gè)Channel

       

      添加后,點(diǎn)擊進(jìn)入Pipeline管理

      添加兩個(gè)Pipeline,如圖是其中一個(gè)方向,另外一個(gè)方向Select、Load機(jī)器相反。canal選擇與Node機(jī)器選擇一致方向,即要與Select機(jī)器一樣。選擇其中一個(gè)Pipeline作為主站點(diǎn),并在高級(jí)設(shè)置中勾選支持ddl同步,另外一個(gè)主站點(diǎn)勾選否,支持ddl同步選擇否。

       

      添加后,點(diǎn)擊進(jìn)入映射關(guān)系列表,選擇好同步表的方向

      至此。配置完成。到Channel管理中開啟同步任務(wù),Otter將為我們自動(dòng)雙A同步數(shù)據(jù)啦!

       

       

       4. 參考資料

      https://github.com/alibaba/otter

      https://github.com/alibaba/canal

      https:///2017/01/mysql-two-way-synchronization-use-otter.html

      https://yq.aliyun.com/articles/58388?spm=5176.100239.blogcont58420.15.ZyRocX

      http://download.csdn.net/download/yjx19930417/10170913

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多