国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

網(wǎng)站的建設模式是指什么時候開始百度seo優(yōu)化服務項目

網(wǎng)站的建設模式是指什么時候開始,百度seo優(yōu)化服務項目,免費學設計的網(wǎng)站,網(wǎng)站建設策劃書的心得大數(shù)據(jù)技術之Maxwell基礎知識 文章目錄大數(shù)據(jù)技術之Maxwell基礎知識0、寫在前面1、Maxwell 概述1.1 Maxwell 定義1.2 Maxwell 工作原理1.2.1 MySQL 主從復制過程1.2.2 Maxwell 的工作原理1.2.3 MySQL 的 binlog1.3 Maxwell與Cannal對比2. Maxwell 使用2.1 Maxwell 安裝部署2.1.…

大數(shù)據(jù)技術之Maxwell基礎知識

文章目錄

  • 大數(shù)據(jù)技術之Maxwell基礎知識
    • 0、寫在前面
    • 1、Maxwell 概述
      • 1.1 Maxwell 定義
      • 1.2 Maxwell 工作原理
        • 1.2.1 MySQL 主從復制過程
        • 1.2.2 Maxwell 的工作原理
        • 1.2.3 MySQL 的 binlog
      • 1.3 Maxwell與Cannal對比
    • 2. Maxwell 使用
      • 2.1 Maxwell 安裝部署
        • 2.1.1 安裝地址
        • 2.1.2 安裝部署
        • 2.1.3 MySQL 環(huán)境準備
        • 2.1.4 初始化 Maxwell 元數(shù)據(jù)庫
        • 2.1.5 Maxwell 進程啟動


0、寫在前面

1.3.0版本開始不支持JDK8,本文是尚硅谷的教學文檔,并加以個人學習記錄

  • Maxwell版本:Maxwell1.2.9
  • Zookeeper版本:Zookeeper3.4.5
  • Kafka版本:Kafka2.4.1
  • MySQL版本:MySQL5.7

1、Maxwell 概述

1.1 Maxwell 定義

Maxwell 是由美國 Zendesk 開源,用 Java 編寫的 MySQL 實時抓取軟件。 實時讀取 MySQL 二進制日志 Binlog,并生成JSON格式的消息,作為生產者發(fā)送給 Kafka,Kinesis、 RabbitMQ、Redis、Google Cloud Pub/Sub、文件或其它平臺的應用程序

官網(wǎng)地址:http://maxwells-daemon.io/

1.2 Maxwell 工作原理

1.2.1 MySQL 主從復制過程

  • Master 主庫將改變記錄,寫到二進制日志(binary log)中

  • Slave 從庫向 mysql master 發(fā)送 dump 協(xié)議,將 master 主庫的 binary log events 拷貝到它的中繼日志(relay log);

  • Slave 從庫讀取并重做中繼日志中的事件,將改變的數(shù)據(jù)同步到自己的數(shù)據(jù)庫。

tp

1.2.2 Maxwell 的工作原理

Maxwell 的工作原理很簡單,就是把自己偽裝成 MySQL 的一個 slave,然后以 slave的身份假裝從 MySQL(master)復制數(shù)據(jù)。

1.2.3 MySQL 的 binlog

(1)什么是 binlog

MySQL 的二進制日志可以說 MySQL 最重要的日志了,它記錄了所有的 DDL 和DML(除了數(shù)據(jù)查詢語句)語句,以事件形式記錄,還包含語句所執(zhí)行的消耗的時間,MySQL 的二進制日志是事務安全型的。

一般來說開啟二進制日志大概會有 1%的性能損耗。二進制有兩個最重要的使用場景:

  • 其一:MySQL Replication 在 Master 端開啟binlog,Master 把它的二進制日志傳遞給 slaves 來達到 master-slave 數(shù)據(jù)一致的目的。

  • 其二:自然就是數(shù)據(jù)恢復了,通過使用 mysqlbinlog 工具來使恢復數(shù)據(jù)。

二進制日志包括兩類文件:二進制日志索引文件(文件名后綴為.index)用于記錄所有的二進制文件,二進制日志文件(文件名后綴為.00000*)記錄數(shù)據(jù)庫所有的 DDL 和DML(除了數(shù)據(jù)查詢語句)語句事件。

(2)binlog 的開啟

  • 找到 MySQL 配置文件的位置

  • Linux: /etc/my.cnf

如果/etc 目錄下沒有,可以通過 locate my.cnf 查找位置

  • Windows: MySQL安裝目錄下的\my.ini文件

    • 在 mysql 的配置文件下,修改配置

    • 在[mysqld] 區(qū)塊,設置/添加 log-bin=mysql-bin

這個表示binlog 日志的前綴是 mysql-bin,以后生成的日志文件就是 mysql-bin.000001的文件后面的數(shù)字按順序生成,每次 mysql 重啟或者到達單個文件大小的閾值時,新生一個文件,按順序編號。

(3)binlog 的分類設置

mysql的binlog 格式有三種,分別是 STATEMENTMIXEDROW。

在配置文件中可以選擇配置 binlog_format=statement|mixed|row

三種格式的區(qū)別:

  • statement

語句級,binlog 會記錄每次一執(zhí)行寫操作的語句

相對 row 模式節(jié)省空間,但是可能產生不一致性,比如

update test set create_date=now();

如果用 binlog 日志進行恢復,由于執(zhí)行時間不同可能產生的數(shù)據(jù)就不同。

優(yōu)點: 節(jié)省空間

缺點: 有可能造成數(shù)據(jù)不一致。

  • row

行級, binlog 會記錄每次操作后每行記錄的變化。

優(yōu)點:保持數(shù)據(jù)的絕對一致性。因為不管 sql 是什么,引用了什么函數(shù),他只記錄執(zhí)行后的效果。

缺點:占用較大空間。

  • mixed

混合級別,statement 的升級版,一定程度上解決了 statement 模式因為一些情況而造成的數(shù)據(jù)不一致問題。

默認還是statement,在某些情況下,譬如:

當函數(shù)中包含 UUID() 時;

包含 AUTO_INCREMENT 字段的表被更新時;

執(zhí)行 INSERT DELAYED 語句時;

用 UDF 時;

會按照 ROW 的方式進行處理。

優(yōu)點:節(jié)省空間,同時兼顧了一定的一致性。

缺點:還有些極個別情況依舊會造成不一致,另外 statement 和 mixed 對于需要對

三種方式,binlog 監(jiān)控的情況都不方便。

綜合上面對比,Maxwell 適合做監(jiān)控分析,選擇 row格式比較合適

1.3 Maxwell與Cannal對比

對比CanalMaxwell
語言javajava
數(shù)據(jù)格式格式自由json
采集數(shù)據(jù)模式增量全量/增量
數(shù)據(jù)落地定制支持 kafka 等多種平臺
HA支持支持

2. Maxwell 使用

2.1 Maxwell 安裝部署

2.1.1 安裝地址

(1) Maxwell 官網(wǎng)地址:http://maxwells-daemon.io/

(2) 文檔查看地址:http://maxwells-daemon.io/quickstart/

2.1.2 安裝部署

(1) 軟件基礎,讀者需要提前安裝好 kafka 和 MySQL,此文檔不再贅述。

(2) 上傳 maxwell-1.29.2.tar.gz 到/opt/software 下

(3) 解壓 maxwell-1.29.2.tar.gz 的安裝包到/opt/module 下

[whybigdata@node01 software]$ tar -zxvf maxwell-1.29.2.tar.gz - C /opt/module/

2.1.3 MySQL 環(huán)境準備

(1)修改 mysql 的配置文件,開啟 MySQL

[whybigdata@node01 software]$ sudo vim /etc/my.cnf
在[mysqld]模塊下添加以下內容
[mysqld] server_id=1
log-bin=mysql-bin binlog_format=row
#binlog-do-db=test_maxwell并重啟 Mysql 服務
[whybigdata@node01 software]$ sudo systemctl restart mysqld登錄 mysql 并查看是否修改完成
[whybigdata@node01 ~]$ mysql -uroot -p123456 mysql> show variables like '%binlog%';
查看下列屬性
binlog_format	| ROW

在這里插入圖片描述

binlog-do-db=test_maxwell表示只監(jiān)控test_maxwell這個庫,不加這個參數(shù)表示監(jiān)控所有庫;

監(jiān)控多個庫(例如:test_maxwell、my_test),不能寫成「binlog-do-db=test_maxwell,my_test」,必須寫成:

binlog-do-db=test_maxwell
binlog-do-db=my_test

如果想監(jiān)控上百個庫,上述方法過于繁瑣,可以直接設置不需要監(jiān)控的庫

binlog-ignore-db=test_maxwell_10000

(2)進入/var/lib/mysql 目錄,查看 MySQL 生成的 binlog 文件

[whybigdata@node01 ~]$ cd /var/lib/mysql 
[whybigdata@node01 mysql]$ sudo ls -l
總用量 188500
-rw-r-----. 1 mysql mysql 154 11 月 17 16:30 mysql-bin.000001	
-rw-r-----. 1 mysql mysql 154 11 月 17 16:30 mysql-bin.index

注:MySQL 生成的 binlog 文件初始大小一定是 154 字節(jié),然后前綴是 log-bin 參數(shù)配置的,后綴是默認從.000001,然后依次遞增。除了 binlog 文件文件以外,MySQL 還會額外生產一個.index 索引文件用來記錄當前使用的 binlog 文件。

tp

2.1.4 初始化 Maxwell 元數(shù)據(jù)庫

(1) 在 MySQL 中建立一個 maxwell 庫用于存儲 Maxwell 的元數(shù)據(jù)

[whybigdata@node01 module]$ mysql -uroot -p123456 
mysql> CREATE DATABASE maxwell;

(2) 設置 mysql 用戶密碼安全級別

mysql> set global validate_password_length=4; 
mysql> set global validate_password_policy=0;

此處,如果出現(xiàn)錯誤,請嘗試以下方式:

tp

install plugin validate_password soname 'validate_password.so';

(3) 分配一個賬號可以操作該數(shù)據(jù)庫

123456是指你自己設置的maxwell用戶的密碼

mysql> GRANT ALL ON maxwell.* TO 'maxwell'@'%' IDENTIFIED BY '123456'

(4)分配這個賬號可以監(jiān)控其他數(shù)據(jù)庫的權限

mysql> GRANT SELECT ,REPLICATION SLAVE , REPLICATION CLIENT ON *.* TO maxwell@'%';

(5)刷新權限

mysql> flush privileges;

mysql庫下的user表;

在這里插入圖片描述

2.1.5 Maxwell 進程啟動

Maxwell 進程啟動方式有如下兩種:

(1) 使用命令行參數(shù)啟動 Maxwell 進程

[whybigdata@node01 maxwell-1.29.2]$ bin/maxwell --user='maxwell' --password='123456' --host='node01'producer=stdout
  • user 連接 mysql 的用戶

  • password 連接 mysql 的用戶的密碼

  • host mysql 安裝的主機名

  • producer 生產者模式(stdout:控制臺 kafka:kafka 集群)

啟動結果

在這里插入圖片描述

監(jiān)控實例:新增數(shù)據(jù)

tp

(2)修改配置文件,定制化啟動 Maxwell 進程

[whybigdata@node01 maxwell-1.29.2]$ cp config.properties.example config.properties 
[whybigdata@node01 maxwell-1.29.2]$ vim config.properties
[whybigdata@node01	maxwell-1.29.2]$ bin/maxwell -- config ./config.properties

啟動結果

在這里插入圖片描述

監(jiān)控update的數(shù)據(jù)

在這里插入圖片描述

結束!

http://m.aloenet.com.cn/news/28618.html

相關文章:

  • 網(wǎng)站開發(fā)的一般步驟2023第二波疫情已經(jīng)到來了嗎
  • php網(wǎng)站的登陸注冊怎末做的整合營銷傳播工具有哪些
  • 做旅游網(wǎng)站賺錢嗎專業(yè)的網(wǎng)站建設公司
  • 生意網(wǎng)抖音seo查詢工具
  • 手機廣告設計與制作軟件南京seo建站
  • 在線做海報的網(wǎng)站廣州百度seo排名
  • rp如何做網(wǎng)站電商平臺有哪些
  • 網(wǎng)站推廣優(yōu)化平臺淘寶關鍵詞排名
  • 建筑網(wǎng)格布搭接seo經(jīng)典案例分析
  • 網(wǎng)站開發(fā)2019最近的新聞有哪些
  • 官方網(wǎng)站怎樣做網(wǎng)站快速優(yōu)化排名方法
  • php網(wǎng)站后臺管理系統(tǒng)源碼北京網(wǎng)絡營銷外包公司哪家好
  • 杭州網(wǎng)站建設怎么樣交換友情鏈接的意義是什么
  • 手把手做網(wǎng)站友情鏈接檢測659292
  • 拿品牌做網(wǎng)站算侵權嗎google海外推廣
  • 國外做化學申報的網(wǎng)站做推廣的公司
  • 鄭州哪些公司做網(wǎng)站建設全網(wǎng)推廣的方式
  • 花溪建設村鎮(zhèn)銀行官方網(wǎng)站百度提交入口的網(wǎng)址
  • 沒有后臺的網(wǎng)站怎么做排名搜索風云榜入口
  • flash怎么做網(wǎng)站抖音流量推廣神器軟件
  • 網(wǎng)站的風格有哪些什么是seo
  • 電子商務網(wǎng)站建設是什么重慶森林為什么叫這個名字
  • 自己做外貿網(wǎng)站能接到單嗎網(wǎng)店運營實訓報告
  • 大學招生網(wǎng)站建設關鍵信息基礎設施安全保護條例
  • 動態(tài)網(wǎng)站編程文明seo
  • 高校網(wǎng)站建設需求分析報告百度號注冊官網(wǎng)
  • 網(wǎng)站做詞seo服務是什么意思
  • 做靜態(tài)網(wǎng)站用什么軟件西安網(wǎng)絡推廣外包公司
  • html php網(wǎng)站開發(fā)網(wǎng)址如何被快速收錄
  • 基于bmob的網(wǎng)站開發(fā)廣州seo代理