introduction to mysql innodb cluster

mysql-innodb集群简介

展开查看详情

1.1 / 143

2.2 / 143

3. 3 / 143 MySQL InnoDB Cluster MySQL High Availability made easy Percona University, Ghent, Belgium June 2017 Frédéric Descamps - MySQL Community Manager - Oracle

4. 4 / 143 Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purpose only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied up in making purchasing decisions. The development, release and timing of any features or functionality described for Oracle´s product remains at the sole discretion of Oracle. Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

5. 5 / 143 about.me/lefred Who am I ? Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

6. 6 / 143 Frédéric Descamps @lefred MySQL Evangelist Hacking MySQL since 3.23 devops believer MySQL Community Manager since May 2016 living in Belgium 🇧🇪 Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

7. 7 / 143 MySQL InnoDB Cluster Easy MySQL High Availability Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

8. 8 / 143 Ease-of-Use Built-in HA InnoDB Out-of-Box Solution Everything Integrated cluster Extreme Scale-Out High Performance Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

9. 9 / 143 Our vision in 4 steps MySQL Document Store Relational & Document Models E1 Read Scale-Out Async Replication + Auto Failover E3 MySQL HA Out-Of-Box HA E2 Write Scale-Out Sharding E4 Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

10. 10 / 143 Step 2´s Architecture Applicat Applicat ion ion MySQL C MySQL C onnector onnector MySQL R MySQL R outer outer Mp M MySQL S no DB M Inclus r hell te Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

11. 11 / 143 Step 3´s Architecture App App lica lica tion tion My My SQL SQL Con Con nec nec tor tor My My SQL SQL Rou Rou ter ter Mp M M DB r My SQL She e ll no st In clu S1 S2 S3 S4 S... Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

12. 12 / 143 Step 4´s Architecture App App App App App licat licat licat licat licat ion ion ion ion ion MyS MyS MyS MyS MyS QL QL QL QL QL Conn Conn Conn Conn Conn ecto ecto ecto ecto ecto r r r r r MyS MyS MyS MyS MyS QL QL QL QL QL Rout Rout Rout Rout Rout er er er er er Mp Mp Mp M M M 1 tesacilper 2 tesacilper 3 tesacilper M M M ter ter ter MyS DB DB DB QL Shell clus clus clus nno nno nno I I I S1 S2 S3 S4 S... S1 S2 S3 S4 S... S1 S2 S3 S4 S... Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

13. 13 / 143 Group Replication: heart of MySQL InnoDB Cluster Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

14. 14 / 143 Group Replication: heart of MySQL InnoDB Cluster Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

15. 15 / 143 But before going further... Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

16. 16 / 143 What is High Availability ? Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

17. 17 / 143 High Availability High availability is a characteristic of a system, which aims to ensure an agreed level of operational performance, usually uptime, for a higher than normal period. There are three principles of systems design in reliability engineering which can help achieve high availability: Elimination of single points of failure. This means adding redundancy to the system so that failure of a component does not mean failure of the entire system. Reliable crossover. In redundant systems, the crossover point itself tends to become a single point of failure. Reliable systems must provide for reliable crossover. Detection of failures as they occur. If the two principles above are observed, then a user may never see a failure. But the maintenance activity must. Copyright @ 2017 Oracle and/or its affiliates. All rights reserved. Source: Wikipedia

18. 18 / 143 Database Redundancy How to achieve it ? Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

19. 19 / 143 Database Redundancy How to achieve it ? Multiple solutions exist, some worse than the others ;-) Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

20. 20 / 143 Database Redundancy How to achieve it ? Multiple solutions exist, some worse than the others ;-) use of share storage Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

21. 21 / 143 Database Redundancy How to achieve it ? Multiple solutions exist, some worse than the others ;-) use of share storage use of share blocs by network (drbd) Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

22. 22 / 143 Database Redundancy How to achieve it ? Multiple solutions exist, some worse than the others ;-) use of share storage use of share blocs by network (drbd) use of MySQL replication Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

23. 23 / 143 Database Redundancy How to achieve it ? Multiple solutions exist, some worse than the others ;-) use of share storage use of share blocs by network (drbd) use of MySQL replication Of course the last one is the technique most spread, more flexible and more reliable. Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

24. 24 / 143 MySQL Replication There are multiple types of MySQL replication: Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

25. 25 / 143 MySQL Replication There are multiple types of MySQL replication: asynchronous replication (async) Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

26. 26 / 143 MySQL Replication There are multiple types of MySQL replication: asynchronous replication (async) semi-synchronous replication (semi-sync) Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

27. 27 / 143 MySQL Replication There are multiple types of MySQL replication: asynchronous replication (async) semi-synchronous replication (semi-sync) group replication - since (5.7.17) !! Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

28. 28 / 143 Asynchronous Replication(s) replicas (also called slaves) stream the replication logs from a unique master (multi- source replication is possible since 5.7.6) Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.

29. 29 / 143 Asynchronous Replication(s) replicas (also called slaves) stream the replication logs from a unique master (multi- source replication is possible since 5.7.6) slaves can be laging (having delay), there is no delivery guarantee (unless for semi- sync) Copyright @ 2017 Oracle and/or its affiliates. All rights reserved.