国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

[大數(shù)據(jù) Flink,Java實(shí)現(xiàn)不同數(shù)據(jù)庫實(shí)時(shí)數(shù)據(jù)同步過程]

這篇具有很好參考價(jià)值的文章主要介紹了[大數(shù)據(jù) Flink,Java實(shí)現(xiàn)不同數(shù)據(jù)庫實(shí)時(shí)數(shù)據(jù)同步過程]。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

??前言:

??實(shí)現(xiàn)Mysql同步Es的過程包括以下步驟:

??配置Mysql數(shù)據(jù)庫連接

??在Flink的配置文件中,添加Mysql數(shù)據(jù)庫的連接信息??梢栽趂link-conf.yaml文件中添加如下配置:

??在Flink程序中,使用JDBCInputFormat來連接Mysql數(shù)據(jù)庫,并定義查詢語句,獲取需要同步的數(shù)據(jù)。具體代碼如下:

??最后,將步驟2中讀取到的數(shù)據(jù)封裝成一個(gè)Flink的DataStream程序,用于后續(xù)的數(shù)據(jù)處理和寫入Es中。

??配置Elasticsearch連接

??在Flink的配置文件中,添加Elasticsearch的連接信息。可以在flink-conf.yaml文件中添加如下配置:

??在Flink程序中,使用ElasticsearchSinkFunction將數(shù)據(jù)寫入Elasticsearch中。具體代碼如下:

??實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)換和處理

??實(shí)現(xiàn)數(shù)據(jù)的批量寫入:

??實(shí)現(xiàn)實(shí)時(shí)同步:

??依賴:


??前言:

? ? ???筆記

??實(shí)現(xiàn)Mysql同步Es的過程包括以下步驟:

  • 配置Mysql數(shù)據(jù)庫連接: 使用Flink的JDBC連接器來連接Mysql數(shù)據(jù)庫,并定義查詢語句,獲取需要同步的數(shù)據(jù)。同時(shí),需要在Flink的配置文件中配置Mysql數(shù)據(jù)庫的連接信息。

  • 配置Elasticsearch連接: 使用Flink的Elasticsearch連接器來連接Elasticsearch,并定義索引和類型,用于將同步的數(shù)據(jù)寫入到指定的索引中。同時(shí),需要在Flink的配置文件中配置Elasticsearch的連接信息。

  • 實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)換和處理: 通過Flink的DataStream API,將從Mysql中查詢到的數(shù)據(jù)轉(zhuǎn)換為Elasticsearch中的文檔格式,并進(jìn)行相應(yīng)的處理和處理,如去重、過濾等。

  • 實(shí)現(xiàn)數(shù)據(jù)的批量寫入: 使用Flink的Elasticsearch連接器提供的批量寫入接口,將轉(zhuǎn)換后的數(shù)據(jù)批量寫入到Elasticsearch中。

  • 實(shí)現(xiàn)實(shí)時(shí)同步: 將以上步驟組合成一個(gè)Flink Job,并通過Flink的DataStream API實(shí)現(xiàn)實(shí)時(shí)同步,即從Mysql數(shù)據(jù)庫中讀取到最新的數(shù)據(jù),經(jīng)過轉(zhuǎn)換和處理后,實(shí)時(shí)寫入到Elasticsearch中。

需要注意的是,在實(shí)現(xiàn)實(shí)時(shí)同步過程中,需要考慮到數(shù)據(jù)的冪等性和錯(cuò)誤處理機(jī)制,以保證同步過程的穩(wěn)定性和可靠性。同時(shí),也需要考慮到數(shù)據(jù)的增量同步和全量同步的情況,以便根據(jù)實(shí)際需求進(jìn)行調(diào)整和優(yōu)化。

??配置Mysql數(shù)據(jù)庫連接

需要使用Flink的JDBC連接器來連接Mysql數(shù)據(jù)庫,并定義查詢語句,獲取需要同步的數(shù)據(jù)。同時(shí),需要在Flink的配置文件中配置Mysql數(shù)據(jù)庫的連接信息。

??在Flink的配置文件中,添加Mysql數(shù)據(jù)庫的連接信息??梢栽趂link-conf.yaml文件中添加如下配置:

# Mysql數(shù)據(jù)庫連接信息
env.java.opts: "-Dmysql.url=jdbc:mysql://localhost:3306/test -Dmysql.username=root -Dmysql.password=123456"
?

mysql.url表示Mysql數(shù)據(jù)庫的連接地址,mysql.username表示Mysql數(shù)據(jù)庫的用戶名,mysql.password表示Mysql數(shù)據(jù)庫的密碼。

??在Flink程序中,使用JDBCInputFormat來連接Mysql數(shù)據(jù)庫,并定義查詢語句,獲取需要同步的數(shù)據(jù)。具體代碼如下:
// 定義Mysql數(shù)據(jù)庫連接信息
String mysqlUrl = System.getProperty("mysql.url");
String mysqlUsername = System.getProperty("mysql.username");
String mysqlPassword = System.getProperty("mysql.password");

// 定義查詢語句
String query = "SELECT * FROM user";

// 定義JDBC連接器
JDBCInputFormat jdbcInputFormat = JDBCInputFormat.buildJDBCInputFormat()
    .setDrivername("com.mysql.jdbc.Driver")
    .setDBUrl(mysqlUrl)
    .setUsername(mysqlUsername)
    .setPassword(mysqlPassword)
    .setQuery(query)
    .setRowTypeInfo(rowTypeInfo)
    .finish();

// 讀取Mysql數(shù)據(jù)庫中的數(shù)據(jù)
DataStream<Row> mysqlDataStream = env.createInput(jdbcInputFormat);

rowTypeInfo表示數(shù)據(jù)類型信息,需要根據(jù)Mysql數(shù)據(jù)庫中的表結(jié)構(gòu)來定義。

??最后,將步驟2中讀取到的數(shù)據(jù)封裝成一個(gè)Flink的DataStream程序,用于后續(xù)的數(shù)據(jù)處理和寫入Es中。
// 將讀取到的數(shù)據(jù)封裝成一個(gè)Flink的DataStream程序
DataStream<String> jsonDataStream = mysqlDataStream.map(new MapFunction<Row, String>() {
    @Override
    public String map(Row row) throws Exception {
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("id", row.getField(0));
        jsonObject.put("name", row.getField(1));
        jsonObject.put("age", row.getField(2));
        return jsonObject.toJSONString();
    }
});

??配置Elasticsearch連接

需要配置Elasticsearch連接,使用Flink的Elasticsearch連接器來連接Elasticsearch,并定義索引和類型,用于將同步的數(shù)據(jù)寫入到指定的索引中。同時(shí),需要在Flink的配置文件中配置Elasticsearch的連接信息。

??在Flink的配置文件中,添加Elasticsearch的連接信息??梢栽趂link-conf.yaml文件中添加如下配置:

# Elasticsearch連接信息
env.java.opts: "-Delasticsearch.hosts=http://localhost:9200"
?

??在Flink程序中,使用ElasticsearchSinkFunction將數(shù)據(jù)寫入Elasticsearch中。具體代碼如下:
// 定義Elasticsearch連接信息
List<HttpHost> httpHosts = new ArrayList<>();
httpHosts.add(new HttpHost("localhost", 9200, "http"));

// 定義ElasticsearchSinkFunction
ElasticsearchSink.Builder<String> esSinkBuilder = new ElasticsearchSink.Builder<>(httpHosts, new ElasticsearchSinkFunction<String>() {
    @Override
    public void process(String element, RuntimeContext ctx, RequestIndexer indexer) {
        IndexRequest indexRequest = Requests.indexRequest()
            .index("user")
            .type("_doc")
            .source(element, XContentType.JSON);
        indexer.add(indexRequest);
    }
});

// 將數(shù)據(jù)寫入Elasticsearch中
jsonDataStream.addSink(esSinkBuilder.build());

httpHosts表示Elasticsearch的連接地址,ElasticsearchSinkFunction用于將數(shù)據(jù)寫入Elasticsearch中。在ElasticsearchSinkFunction中,可以定義索引和類型,用于將數(shù)據(jù)寫入到指定的索引中。

以上代碼中,將數(shù)據(jù)寫入到名為"user"的索引中,類型為"_doc"。同時(shí),使用IndexRequest將數(shù)據(jù)寫入Elasticsearch中。

??實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)換和處理
  • 在第二步中,已經(jīng)將從Mysql中查詢到的數(shù)據(jù)轉(zhuǎn)換成了JSON格式。接下來,需要將JSON格式的數(shù)據(jù)轉(zhuǎn)換成Elasticsearch中的文檔格式。可以使用Elasticsearch的Bulk API來實(shí)現(xiàn)。

  • 在轉(zhuǎn)換成Elasticsearch中的文檔格式之前,需要進(jìn)行去重操作,避免重復(fù)寫入相同的數(shù)據(jù)??梢允褂肍link的KeyedStream API來實(shí)現(xiàn)。

// 將JSON格式的數(shù)據(jù)轉(zhuǎn)換成Elasticsearch中的文檔格式
DataStream<IndexRequest> esDataStream = jsonDataStream.map(new MapFunction<String, IndexRequest>() {
    @Override
    public IndexRequest map(String json) throws Exception {
        JSONObject jsonObject = JSON.parseObject(json);
        String id = jsonObject.getString("id");
        IndexRequest indexRequest = new IndexRequest("user", "_doc", id);
        indexRequest.source(json, XContentType.JSON);
        return indexRequest;
    }
});

// 進(jìn)行去重操作
KeyedStream<IndexRequest, String> keyedStream = esDataStream.keyBy(new KeySelector<IndexRequest, String>() {
    @Override
    public String getKey(IndexRequest indexRequest) throws Exception {
        return indexRequest.id();
    }
});

// 將去重后的數(shù)據(jù)寫入Elasticsearch中
keyedStream.addSink(esSinkBuilder.build());

使用MapFunction將JSON格式的數(shù)據(jù)轉(zhuǎn)換成Elasticsearch中的文檔格式。在轉(zhuǎn)換成Elasticsearch中的文檔格式之前,使用KeyedStream API進(jìn)行去重操作,避免重復(fù)寫入相同的數(shù)據(jù)。最后,將去重后的數(shù)據(jù)寫入Elasticsearch中。

??實(shí)現(xiàn)數(shù)據(jù)的批量寫入:

在第三步中已經(jīng)使用了Elasticsearch的Bulk API來實(shí)現(xiàn)將轉(zhuǎn)換后的數(shù)據(jù)批量寫入到Elasticsearch中。具體代碼如下:

// 將JSON格式的數(shù)據(jù)轉(zhuǎn)換成Elasticsearch中的文檔格式
DataStream<IndexRequest> esDataStream = jsonDataStream.map(new MapFunction<String, IndexRequest>() {
    @Override
    public IndexRequest map(String json) throws Exception {
        JSONObject jsonObject = JSON.parseObject(json);
        String id = jsonObject.getString("id");
        IndexRequest indexRequest = new IndexRequest("user", "_doc", id);
        indexRequest.source(json, XContentType.JSON);
        return indexRequest;
    }
});

// 進(jìn)行去重操作
KeyedStream<IndexRequest, String> keyedStream = esDataStream.keyBy(new KeySelector<IndexRequest, String>() {
    @Override
    public String getKey(IndexRequest indexRequest) throws Exception {
        return indexRequest.id();
    }
});

// 將去重后的數(shù)據(jù)寫入Elasticsearch中
ElasticsearchSink.Builder<IndexRequest> esSinkBuilder = new ElasticsearchSink.Builder<>(httpHosts, new ElasticsearchSinkFunction<IndexRequest>() {
    @Override
    public void process(IndexRequest indexRequest, RuntimeContext ctx, RequestIndexer indexer) {
        indexer.add(indexRequest);
    }
});

keyedStream.addSink(esSinkBuilder.build());

在ElasticsearchSinkFunction中,使用RequestIndexer將數(shù)據(jù)批量寫入到Elasticsearch中。需要注意的是,ElasticsearchSinkFunction的泛型類型需要與KeyedStream的泛型類型保持一致。

以上代碼中,使用KeyedStream API進(jìn)行去重操作,避免重復(fù)寫入相同的數(shù)據(jù)。最后,使用Elasticsearch的Bulk API將去重后的數(shù)據(jù)批量寫入到Elasticsearch中。

??實(shí)現(xiàn)實(shí)時(shí)同步:
// 定義Mysql數(shù)據(jù)庫連接信息
String mysqlUrl = System.getProperty("mysql.url");
String mysqlUsername = System.getProperty("mysql.username");
String mysqlPassword = System.getProperty("mysql.password");

// 定義查詢語句
String query = "SELECT * FROM user";

// 定義JDBC連接器
JDBCInputFormat jdbcInputFormat = JDBCInputFormat.buildJDBCInputFormat()
    .setDrivername("com.mysql.jdbc.Driver")
    .setDBUrl(mysqlUrl)
    .setUsername(mysqlUsername)
    .setPassword(mysqlPassword)
    .setQuery(query)
    .setRowTypeInfo(rowTypeInfo)
    .finish();

// 讀取Mysql數(shù)據(jù)庫中的數(shù)據(jù)
DataStream<Row> mysqlDataStream = env.createInput(jdbcInputFormat);

// 將讀取到的數(shù)據(jù)轉(zhuǎn)換成JSON格式
DataStream<String> jsonDataStream = mysqlDataStream.map(new MapFunction<Row, String>() {
    @Override
    public String map(Row row) throws Exception {
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("id", row.getField(0));
        jsonObject.put("name", row.getField(1));
        jsonObject.put("age", row.getField(2));
        return jsonObject.toJSONString();
    }
});

// 將JSON格式的數(shù)據(jù)轉(zhuǎn)換成Elasticsearch中的文檔格式
DataStream<IndexRequest> esDataStream = jsonDataStream.map(new MapFunction<String, IndexRequest>() {
    @Override
    public IndexRequest map(String json) throws Exception {
        JSONObject jsonObject = JSON.parseObject(json);
        String id = jsonObject.getString("id");
        IndexRequest indexRequest = new IndexRequest("user", "_doc", id);
        indexRequest.source(json, XContentType.JSON);
        return indexRequest;
    }
});

// 進(jìn)行去重操作
KeyedStream<IndexRequest, String> keyedStream = esDataStream.keyBy(new KeySelector<IndexRequest, String>() {
    @Override
    public String getKey(IndexRequest indexRequest) throws Exception {
        return indexRequest.id();
    }
});

// 將去重后的數(shù)據(jù)寫入Elasticsearch中
List<HttpHost> httpHosts = new ArrayList<>();
httpHosts.add(new HttpHost("localhost", 9200, "http"));

ElasticsearchSink.Builder<IndexRequest> esSinkBuilder = new ElasticsearchSink.Builder<>(httpHosts, new ElasticsearchSinkFunction<IndexRequest>() {
    @Override
    public void process(IndexRequest indexRequest, RuntimeContext ctx, RequestIndexer indexer) {
        indexer.add(indexRequest);
    }
});

keyedStream.addSink(esSinkBuilder.build());

// 執(zhí)行Flink程序
env.execute("Mysql to Es");

??依賴:

<dependencies>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-java</artifactId>
        <version>1.13.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-streaming-java_2.12</artifactId>
        <version>1.13.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-connector-jdbc_2.12</artifactId>
        <version>1.13.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-connector-elasticsearch7_2.12</artifactId>
        <version>1.13.2</version>
    </dependency>
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.76</version>
    </dependency>
    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-high-level-client</artifactId>
        <version>7.15.0</version>
    </dependency>
</dependencies>

flink-java、flink-streaming-java_2.12、flink-connector-jdbc_2.12、flink-connector-elasticsearch7_2.12是Flink的核心依賴;fastjson是用于將數(shù)據(jù)轉(zhuǎn)換成JSON格式的依賴;elasticsearch-rest-high-level-client是Elasticsearch的Java客戶端依賴。文章來源地址http://www.zghlxwxcb.cn/news/detail-689262.html

到了這里,關(guān)于[大數(shù)據(jù) Flink,Java實(shí)現(xiàn)不同數(shù)據(jù)庫實(shí)時(shí)數(shù)據(jù)同步過程]的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 實(shí)時(shí)Flink的數(shù)據(jù)庫與Kafka集成優(yōu)化案例

    在現(xiàn)代數(shù)據(jù)處理系統(tǒng)中,實(shí)時(shí)數(shù)據(jù)處理和分析是至關(guān)重要的。Apache Flink是一個(gè)流處理框架,可以用于實(shí)時(shí)數(shù)據(jù)處理和分析。在許多場(chǎng)景下,F(xiàn)link需要與數(shù)據(jù)庫和Kafka等消息系統(tǒng)進(jìn)行集成,以實(shí)現(xiàn)更高效的數(shù)據(jù)處理。本文將討論Flink與數(shù)據(jù)庫和Kafka集成的優(yōu)化案例,并提供實(shí)際示

    2024年02月20日
    瀏覽(27)
  • 【開發(fā)問題】flink-cdc不用數(shù)據(jù)庫之間的,不同類型的轉(zhuǎn)化

    【開發(fā)問題】flink-cdc不用數(shù)據(jù)庫之間的,不同類型的轉(zhuǎn)化

    我一開始是flink-cdc,oracle2Mysql,sql 我一開始直接用的oracle【date】類型,mysql【date】類型,sql的校驗(yàn)通過了,但是真正操作數(shù)據(jù)的時(shí)候報(bào)錯(cuò),告訴我oracle的數(shù)據(jù)格式的日期數(shù)據(jù),不可以直接插入到mysql格式的日期數(shù)據(jù),說白了就是數(shù)據(jù)格式不一致導(dǎo)致的 我想的是既然格式不對(duì)

    2024年02月12日
    瀏覽(25)
  • flink cdc同步Oracle數(shù)據(jù)庫資料到Doris問題集錦

    java.lang.NoClassDefFoundError: org/apache/flink/shaded/guava18/com/google/common/util/concurrent/ThreadFactoryBuilder at com.ververica.cdc.debezium.DebeziumSourceFunction.open(DebeziumSourceFunction.java:218) ~[flink-connector-debezium-2.2.0.jar:2.2.0] at org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:34) ~[flink-co

    2024年02月16日
    瀏覽(22)
  • 基于Canal與Flink實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)增量同步(一)

    基于Canal與Flink實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)增量同步(一)

    vi conf/application.yml server: port: 8089 spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 spring.datasource: address: kms-1:3306 database: canal_manager username: canal password: canal driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql:// s p r i n g . d a t a s o u r c e . a d d r e s s / {spring.datasource.address}/ s p r in g . d

    2024年04月13日
    瀏覽(98)
  • OceanBase X Flink 基于原生分布式數(shù)據(jù)庫構(gòu)建實(shí)時(shí)計(jì)算解決方案

    OceanBase X Flink 基于原生分布式數(shù)據(jù)庫構(gòu)建實(shí)時(shí)計(jì)算解決方案

    摘要:本文整理自 OceanBase 架構(gòu)師周躍躍,在 Flink Forward Asia 2022 實(shí)時(shí)湖倉專場(chǎng)的分享。本篇內(nèi)容主要分為四個(gè)部分: 分布式數(shù)據(jù)庫 OceanBase 關(guān)鍵技術(shù)解讀 生態(tài)對(duì)接以及典型應(yīng)用場(chǎng)景 OceanBase X Flink 在游戲行業(yè)實(shí)踐 未來展望 點(diǎn)擊查看原文視頻 演講PPT 作為一款歷經(jīng) 12 年的純自研

    2024年02月13日
    瀏覽(26)
  • 60、Flink CDC 入門介紹及Streaming ELT示例(同步Mysql數(shù)據(jù)庫數(shù)據(jù)到Elasticsearch)-CDC Connector介紹及示例 (1)

    60、Flink CDC 入門介紹及Streaming ELT示例(同步Mysql數(shù)據(jù)庫數(shù)據(jù)到Elasticsearch)-CDC Connector介紹及示例 (1)

    一、Flink 專欄 Flink 專欄系統(tǒng)介紹某一知識(shí)點(diǎn),并輔以具體的示例進(jìn)行說明。 1、Flink 部署系列 本部分介紹Flink的部署、配置相關(guān)基礎(chǔ)內(nèi)容。 2、Flink基礎(chǔ)系列 本部分介紹Flink 的基礎(chǔ)部分,比如術(shù)語、架構(gòu)、編程模型、編程指南、基本的datastream api用法、四大基石等內(nèi)容。 3、

    2024年02月19日
    瀏覽(21)
  • Spring Boot應(yīng)用中如何動(dòng)態(tài)指定數(shù)據(jù)庫,實(shí)現(xiàn)不同用戶不同數(shù)據(jù)庫的場(chǎng)景

    當(dāng)在 Spring Boot 應(yīng)用程序中使用Spring Data JPA 進(jìn)行數(shù)據(jù)庫操作時(shí),配置Schema名稱是一種常見的做法。然而,在某些情況下,模式名稱需要是動(dòng)態(tài)的,可能會(huì)在應(yīng)用程序運(yùn)行時(shí)發(fā)生變化。比如:需要做數(shù)據(jù)隔離的SaaS應(yīng)用。 所以,這篇博文將幫助您解決了在 Spring Boot 應(yīng)用程序中如

    2024年04月26日
    瀏覽(28)
  • 基于Canal與Flink實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)增量同步(一),計(jì)算機(jī)畢設(shè)源碼要提交嗎

    基于Canal與Flink實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)增量同步(一),計(jì)算機(jī)畢設(shè)源碼要提交嗎

    配置修改 修改conf/example/instance.properties,修改內(nèi)容如下: canal.instance.mysql.slaveId = 1234 #position info,需要改成自己的數(shù)據(jù)庫信息 canal.instance.master.address = kms-1.apache.com:3306 #username/password,需要改成自己的數(shù)據(jù)庫信息 canal.instance.dbUsername = canal canal.instance.dbPassword = canal canal.mq.topic

    2024年04月12日
    瀏覽(38)
  • Flink讀取mysql數(shù)據(jù)庫(java)

    Flink讀取mysql數(shù)據(jù)庫(java)

    代碼如下: 運(yùn)行結(jié)果如下:

    2024年02月12日
    瀏覽(22)
  • MySQL數(shù)據(jù)庫實(shí)現(xiàn)主從同步

    MySQL數(shù)據(jù)庫實(shí)現(xiàn)主從同步

    安裝MySQL數(shù)據(jù)庫8.0.32 今天來學(xué)習(xí)數(shù)據(jù)庫主從同步的原理及過程,數(shù)據(jù)庫主要是用來存儲(chǔ)WEB數(shù)據(jù),在企業(yè)當(dāng)中是極為重要的,下面一起來看下。 MySQL主從復(fù)制在中小企業(yè),大型企業(yè)中廣泛使用,MySQL主從復(fù)制的目的是實(shí)現(xiàn)數(shù)據(jù)庫冗余備份,將master數(shù)據(jù)庫數(shù)據(jù)定時(shí)同步到slave數(shù)據(jù)庫

    2024年02月02日
    瀏覽(85)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包