SlideShare una empresa de Scribd logo
1 de 80
Descargar para leer sin conexión
1 / 80
Kenny Gryp
Principal Product Manager
MySQL
Janurary 2020
Frédéric Descamps
Community Manager
MySQL
MySQL 8.0 a Giant Leap for SQL
MySQL 8 is Great !
2 / 80
 
Safe Harbor
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, timing and pricing of any
features or functionality described for Oracle´s product may change and remains at the sole discretion of Oracle
Corporation.
Statement in this presentation relating to Oracle´s future plans, expectations, beliefs, intentions and ptospects
are "forward-looking statements" and are subject to material risks and uncertainties. A detailed discussion of
these factors and other risks that a ect our business is contained in Oracle´s Securities and Exchange
Commission (SEC) lings, including our most recent reports on Form 10-K and Form 10-Q under the heading
"Risk Factors". These lings are available on the SEC´s website or on Oracle´s website at
h p://www.oracle.com/investor. All information in this presentation is current as of September 2019 and Oracle
undertakes no duty to update any statement in light of new information or future events.
Copyright @ 2020 Oracle and/or its affiliates.
3 / 80
Who are we ?
Copyright @ 2020 Oracle and/or its affiliates.
4 / 80
Kenny Gryp
@gryp
MySQL Principal Product Manager
Replication, HA & InnoDB
raised in Belgium 🇧🇪
living in Oregon, USA 🇺🇸
Copyright @ 2020 Oracle and/or its affiliates.
5 / 80
Frédéric Descamps
@lefred
MySQL Evangelist
Managing MySQL since 3.23
devops believer
living in Belgium 🇧🇪
h ps://lefred.be
Copyright @ 2020 Oracle and/or its affiliates.
6 / 80
DB-Engines 2019
Database Ranking
Copyright @ 2020 Oracle and/or its affiliates.
7 / 80
DB-Engines 2019
Database Ranking
MySQL is the 2nd most popular database
Copyright @ 2020 Oracle and/or its affiliates.
8 / 80
DB-Engines 2019
Database Ranking
MySQL is the 2nd most popular database
MySQL is the most Open Source popular database
Copyright @ 2020 Oracle and/or its affiliates.
9 / 80
MySQL is the DBMS of the Year 2019 !
Copyright @ 2020 Oracle and/or its affiliates.
10 /
80
MySQL Developer Popularity
Stack Overflow Developer Survey 2019
Copyright @ 2020 Oracle and/or its affiliates.
11 /
80
MySQL is the most popular database
with developers
MySQL Developer Popularity
Stack Overflow Developer Survey 2019
Copyright @ 2020 Oracle and/or its affiliates.
12 /
80
April 2018 (8.0 GA) August 2019
MySQL 8.0: fastest adoption of a release !!
Copyright @ 2020 Oracle and/or its affiliates.
13 /
80
"This is a landmark release as MySQL
eventually evolved beyond SQL-92 and the
purely relational dogma. Among a few other
standard SQL features, MySQL now
supports window functions (over) and
common table expressions (with). Without a
doubt, these are the two most important
post-SQL-92 features.”
MySQL 8.0: one giant leap for SQL
Copyright @ 2020 Oracle and/or its affiliates.
14 /
80
Copyright @ 2020 Oracle and/or its affiliates.
15 /
80
NoSQL
Copyright @ 2020 Oracle and/or its affiliates.
16 /
80
* CREATE
* READ
* UPDATE
* DELETE
col->add({title: 'MySQL is Great', author: 'lefred' })
col-> nd()
collection.modify('author = "lefred"').set('author',
'kenny')
col.remove('author = "lefred"')
MySQL supports JSON & CRUD operations
Copyright @ 2020 Oracle and/or its affiliates.
17 /
80
* CREATE
* READ
* UPDATE
* DELETE
col->add({title: 'MySQL is Great', author: 'lefred' })
col-> nd()
collection.modify('author = "lefred"').set('author',
'kenny')
col.remove('author = "lefred"')
MySQL supports JSON & CRUD operations
It's possible to use MySQL without a single line
of SQL !
Copyright @ 2020 Oracle and/or its affiliates.
18 /
80
MySQL supports JSON & CRUD operations
Copyright @ 2020 Oracle and/or its affiliates.
19 /
80
NoSQL + SQL =
MySQL
Copyright @ 2020 Oracle and/or its affiliates.
20 /
80
SQL
Copyright @ 2020 Oracle and/or its affiliates.
21 /
80
Credits: @MarkusWinand - @ModernSQL
SQL: RECURSION / CTEs
Copyright @ 2020 Oracle and/or its affiliates.
22 /
80
Credits: @MarkusWinand - @ModernSQL
SQL: LATERAL
Copyright @ 2020 Oracle and/or its affiliates.
23 /
80
Credits: @MarkusWinand - @ModernSQL
SQL: Analytical / Window Functions
Copyright @ 2020 Oracle and/or its affiliates.
24 /
80
Credits: @MarkusWinand - @ModernSQL
SQL: Analytical / Window Functions
Copyright @ 2020 Oracle and/or its affiliates.
25 /
80
Credits: @MarkusWinand - @ModernSQL
SQL: JSON_TABLE
Copyright @ 2020 Oracle and/or its affiliates.
26 /
80
Credits: @MarkusWinand - @ModernSQL
SQL: JSON_TABLE
Copyright @ 2020 Oracle and/or its affiliates.
27 /
80
List the best restaurant of each type of
food and show the top 10, with the best
one first !
Copyright @ 2020 Oracle and/or its affiliates.
28 /
80
And all together !
Copyright @ 2020 Oracle and/or its affiliates.
29 /
80
And all together !
Copyright @ 2020 Oracle and/or its affiliates.
30 /
80
MySQL refactoring
Copyright @ 2020 Oracle and/or its affiliates.
31 /
80
Modular
Easy to Extend
Each iterator encapsulates one operation
Same interface for all iterators
All operations can be connected
MySQL New Iterator Executor
Copyright @ 2020 Oracle and/or its affiliates.
32 /
80
Modular
Easy to Extend
Each iterator encapsulates one operation
Same interface for all iterators
All operations can be connected
MySQL New Iterator Executor
Copyright @ 2020 Oracle and/or its affiliates.
33 /
80
EXPLAIN FORMAT=TREE
Copyright @ 2020 Oracle and/or its affiliates.
34 /
80
EXPLAIN ANALYZE
Instruments and executes the query
Estimated cost
Actual execution statistics
Time to return rst row
Time to return all rows
Number of rows returned
Number of loops
Uses the new tree output format also available in EXPLAIN
Copyright @ 2020 Oracle and/or its affiliates.
35 /
80
EXPLAIN ANALYZE
Copyright @ 2020 Oracle and/or its affiliates.
36 /
80
Hash Join
Typically faster than nested loop for large result sets
In-memory if possible
Spill to disk if necessary
Used for inner equi-joins
Extendable to outer, semi and anti joins
Replaces BNL in query plans
Hints to force use of hash join or nested loop
More Info: h ps://slideshare.net/NorvaldRyeng/mysql-8018-latest-updates-hash-join-
and-explain-analyze
Copyright @ 2020 Oracle and/or its affiliates.
37 /
80
Hash Join: performance
Copyright @ 2020 Oracle and/or its affiliates.
38 /
80
Database
Architectures
Copyright @ 2020 Oracle and/or its affiliates.
39 /
80
MySQL InnoDB Cluster
"A single product — MySQL — with high availability and scaling features baked in;
providing an integrated end-to-end solution that is easy to use."
Copyright @ 2020 Oracle and/or its affiliates.
40 /
80
MySQL InnoDB Cluster
"A single product — MySQL — with high availability and scaling features baked in;
providing an integrated end-to-end solution that is easy to use."
Copyright @ 2020 Oracle and/or its affiliates.
41 /
80
Components:
MySQL Server
MySQL Group Replication
MySQL Shell
MySQL Router
MySQL InnoDB Cluster
"A single product — MySQL — with high availability and scaling features baked in;
providing an integrated end-to-end solution that is easy to use."
Copyright @ 2020 Oracle and/or its affiliates.
42 /
80
One Product: MySQL
All components developed together
Integration of all components
Full stack testing
MySQL InnoDB Cluster - Goals
Copyright @ 2020 Oracle and/or its affiliates.
43 /
80
One Product: MySQL
All components developed together
Integration of all components
Full stack testing
Easy to Use
One client: MySQL Shell
Integrated orchestration
Homogenous servers
MySQL InnoDB Cluster - Goals
Copyright @ 2020 Oracle and/or its affiliates.
44 /
80
MySQL Group Replication
Copyright @ 2020 Oracle and/or its affiliates.
45 /
80
High Available Distributed MySQL DB
Fault tolerance
Automatic failover
Active/Active update anywhere (limits
apply)
Automatic membership management
Adding/removing members
Network partitions, failures
Con ict detection and resolution
Prevents data loss
MySQL Group Replication
Copyright @ 2020 Oracle and/or its affiliates.
46 /
80
Consistency: No Data Loss (RPO=0)
in event of failure of (primary) member
Split brain prevention (Quorum)
MySQL Group Replication - Use Cases
Copyright @ 2020 Oracle and/or its affiliates.
47 /
80
Consistency: No Data Loss (RPO=0)
in event of failure of (primary) member
Split brain prevention (Quorum)
Highly Available: Automatic Failover
Primary members are automatically elected
Automatic Network Partition handling
MySQL Group Replication - Use Cases
Copyright @ 2020 Oracle and/or its affiliates.
48 /
80
Consistency: No Data Loss (RPO=0)
in event of failure of (primary) member
Split brain prevention (Quorum)
Highly Available: Automatic Failover
Primary members are automatically elected
Automatic Network Partition handling
Read Scaleout
Add/Remove members as needed
Replication Lag handling with Flow Control
Con gurable Consistency Levels
Eventual
Full Consistency -- no stale reads
MySQL Group Replication - Use Cases
Copyright @ 2020 Oracle and/or its affiliates.
49 /
80
Consistency: No Data Loss (RPO=0)
in event of failure of (primary) member
Split brain prevention (Quorum)
Highly Available: Automatic Failover
Primary members are automatically elected
Automatic Network Partition handling
Read Scaleout
Add/Remove members as needed
Replication Lag handling with Flow Control
Con gurable Consistency Levels
Eventual
Full Consistency -- no stale reads
Active/Active environments
Write to many members at the same time
ordered writes within the group (XCOM)
guaranteed consistency
Good write performance
due to Optimistic Locking
(workload dependent)
MySQL Group Replication - Use Cases
Copyright @ 2020 Oracle and/or its affiliates.
50 /
80
MySQL Router
Copyright @ 2020 Oracle and/or its affiliates.
51 /
80
Transparent Access to Database Arch.
"provide transparent routing between your application and
back-end MySQL Servers"
Transparent client connection routing
Load balancing
Application connection failover
Li le to no con guration needed
Stateless design o ers easy HA client routing
Router as part of the application stack
Integration into InnoDB Cluster & InnoDB ReplicaSet
Understands Group Replication & Replication
topology
Currently TCP Port each for PRIMARY and NON-
PRIMARY tra c
MySQL Router
Copyright @ 2020 Oracle and/or its affiliates.
52 /
80
MySQL Shell
Copyright @ 2020 Oracle and/or its affiliates.
53 /
80
Database Administration Interface
"MySQL Shell provides the developer and DBA with a single
intuitive, exible, and powerful interface for all MySQL
related tasks!"
Multi-Language: JavaScript, Python, and SQL
Naturally scriptable
Supports Document and Relational models
Exposes full Development and Admin API
Classic MySQL protocol and X protocol
MySQL Shell
Copyright @ 2020 Oracle and/or its affiliates.
54 /
80
Introducing MySQL InnoDB ReplicaSet!
8.0.19 Feature!
Fully integrated MySQL Router
Automatic Routing
Ease of use with MySQL Shell
Con guring, Adding, Removing members
Automatic Member Provisioning (CLONE)
MySQL InnoDB Replicaset
Copyright @ 2020 Oracle and/or its affiliates.
55 /
80
Replication Architecture:
(manual) Switchover & Failover
(asynchronous) Read Scaleout
'Simple' Replication architecture:
no network/hardware requirements
Providing Availability on PRIMARY when
issues with secondaries or network
MySQL InnoDB Replicaset
Copyright @ 2020 Oracle and/or its affiliates.
56 /
80
Past MySQL InnoDB ReplicaSet
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
57 /
80
Past MySQL InnoDB ReplicaSet
Restore a backup to provision a member Automatically provisioning new members:
InnoDB CLONE
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
58 /
80
Past MySQL InnoDB ReplicaSet
Restore a backup to provision a member Automatically provisioning new members:
InnoDB CLONECon gure Replication Users
Con gure Replication MySQL Shell Automatically con gures users &
replication
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
59 /
80
Past MySQL InnoDB ReplicaSet
Restore a backup to provision a member Automatically provisioning new members:
InnoDB CLONECon gure Replication Users
Con gure Replication MySQL Shell Automatically con gures users &
replicationManually con guring, adding removing servers in
Application, MySQL Router (or other proxy) Integrated MySQL Router load balancing
Only need to bootstrap Router
Router is stateless, adapts to topology changes
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
60 /
80
Past MySQL InnoDB ReplicaSet
Restore a backup to provision a member Automatically provisioning new members:
InnoDB CLONECon gure Replication Users
Con gure Replication MySQL Shell Automatically con gures users &
replicationManually con guring, adding removing servers in
Application, MySQL Router (or other proxy) Integrated MySQL Router load balancing
Only need to bootstrap Router
Router is stateless, adapts to topology changes
Manually or relying on external tools to make topology
changes
Easy to use manual switchover/failover
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
61 /
80
Past MySQL InnoDB ReplicaSet
Restore a backup to provision a member Automatically provisioning new members:
InnoDB CLONECon gure Replication Users
Con gure Replication MySQL Shell Automatically con gures users &
replicationManually con guring, adding removing servers in
Application, MySQL Router (or other proxy) Integrated MySQL Router load balancing
Only need to bootstrap Router
Router is stateless, adapts to topology changes
Manually or relying on external tools to make topology
changes
Easy to use manual switchover/failoverUse additional monitoring tool log in on all machines
to check topology status See status of the topology through MySQL Shell
status()
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
62 /
80
Past MySQL InnoDB ReplicaSet
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
63 /
80
Past MySQL InnoDB ReplicaSet
complexity: user is responsible for the full
con guration of every component and it's se ings
Shell con gures Server, Router, Replication in a
standardized best practice setup, prevents mistakes
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
64 /
80
Past MySQL InnoDB ReplicaSet
complexity: user is responsible for the full
con guration of every component and it's se ings
Shell con gures Server, Router, Replication in a
standardized best practice setup, prevents mistakes
every setup is a customized setup Standard Solution -- Supported & QA'ed by Oracle
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
65 /
80
Past MySQL InnoDB ReplicaSet
complexity: user is responsible for the full
con guration of every component and it's se ings
Shell con gures Server, Router, Replication in a
standardized best practice setup, prevents mistakes
every setup is a customized setup Standard Solution -- Supported & QA'ed by Oracle
A lot of manual steps and additional software
required, always customized and often
overengineered by MySQL DBA's
Easy to use, even for MySQL beginner
MySQL InnoDB ReplicaSet - Features
Copyright @ 2020 Oracle and/or its affiliates.
66 /
80
MySQL Shell - Easy to Use
Copyright @ 2020 Oracle and/or its affiliates.
67 /
80
MySQL InnoDB Cluster MySQL InnoDB ReplicaSet
js> c admin@mysql1
js> cluster = dba.createCluster('cluster')
js> c admin@mysql1
js> rs = dba.createReplicaSet('replicaset')
MySQL Shell - Easy to Use
Copyright @ 2020 Oracle and/or its affiliates.
68 /
80
MySQL InnoDB Cluster MySQL InnoDB ReplicaSet
js> c admin@mysql1
js> cluster = dba.createCluster('cluster')
js> c admin@mysql1
js> rs = dba.createReplicaSet('replicaset')
Con gure server to add later
js> dba.con gureInstance('admin@mysql2') js> dba.con gureReplicaSetInstance('admin@mysql2')
MySQL Shell - Easy to Use
Copyright @ 2020 Oracle and/or its affiliates.
69 /
80
MySQL InnoDB Cluster MySQL InnoDB ReplicaSet
js> c admin@mysql1
js> cluster = dba.createCluster('cluster')
js> c admin@mysql1
js> rs = dba.createReplicaSet('replicaset')
Con gure server to add later
js> dba.con gureInstance('admin@mysql2') js> dba.con gureReplicaSetInstance('admin@mysql2')
Add server to the Cluster
js> cluster.addInstance('admin@mysql2') js> rs.addInstance('admin@mysql2')
MySQL Shell - Easy to Use
Copyright @ 2020 Oracle and/or its affiliates.
70 /
80
MySQL InnoDB Cluster MySQL InnoDB ReplicaSet
js> c admin@mysql1
js> cluster = dba.createCluster('cluster')
js> c admin@mysql1
js> rs = dba.createReplicaSet('replicaset')
Con gure server to add later
js> dba.con gureInstance('admin@mysql2') js> dba.con gureReplicaSetInstance('admin@mysql2')
Add server to the Cluster
js> cluster.addInstance('admin@mysql2') js> rs.addInstance('admin@mysql2')
Bootstrap MySQL Router
$ sudo mysqlrouter --user=mysqlrouter --bootstrap
$ sudo systemctl start mysqlrouter
$ sudo mysqlrouter --user=mysqlrouter --bootstrap
$ sudo systemctl start mysqlrouter
MySQL Shell - Easy to Use
Copyright @ 2020 Oracle and/or its affiliates.
71 /
80
mysql-js> cluster.status()
{
"clusterName": "cluster",
"defaultReplicaSet": {
"name": "default",
"primary": "mysql1:3306",
"ssl": "REQUIRED",
"status": "OK",
"statusText": "Cluster is ONLINE and can
tolerate up to ONE failure.",
"topology": {
"mysql1:3306": {
"address": "mysql1:3306",
"mode": "R/W",
"readReplicas": {},
"role": "HA",
"status": "ONLINE"
},
"mysql2:3306": {
"address": "mysql2:3306",
"mode": "R/O",
"readReplicas": {},
"role": "HA",
"status": "ONLINE"
},
"mysql3:3306": {
"address": "mysql3:3306",
"mode": "R/O",
"readReplicas": {},
"role": "HA",
"status": "ONLINE"
}
}
}
MySQL Shell - Easy to Use
Check the Cluster status:
Copyright @ 2020 Oracle and/or its affiliates.
72 /
80
MySQL Enterprise
Edition
Copyright @ 2020 Oracle and/or its affiliates.
73 /
80
Copyright @ 2020 Oracle and/or its affiliates.
74 /
80
Upgrade Checker
Copyright @ 2020 Oracle and/or its affiliates.
75 /
80
Don't forget to use MySQL Shell Upgrade
Checker Utility
New tool in MySQL Shell
JS> util.checkForServerUpgrade()
Will check your MySQL 5.7 or 8.0 installation readiness for upgrade to latest version
Check for legacy issues
Run the tool on the 5.7 before upgrading!
Copyright @ 2020 Oracle and/or its affiliates.
76 /
80
Thank you !
Copyright @ 2020 Oracle and/or its affiliates.
77 /
80
Upgrade to MySQL 8.0
It's time to upgrade to
MySQL 8.0, the fastest MySQL
adoption release ever !
Copyright @ 2020 Oracle and/or its affiliates.
78 /
80
Upgrade to MySQL 8.0
It's time to upgrade to
MySQL 8.0, the fastest MySQL
adoption release ever !
Copyright @ 2020 Oracle and/or its affiliates.
79 /
80
Copyright @ 2020 Oracle and/or its affiliates.
80 /
80

Más contenido relacionado

La actualidad más candente

Python and MySQL 8.0 Document Store
Python and MySQL 8.0 Document StorePython and MySQL 8.0 Document Store
Python and MySQL 8.0 Document StoreFrederic Descamps
 
MySQL Group Replication: Handling Network Glitches - Best Practices
MySQL Group Replication: Handling Network Glitches - Best PracticesMySQL Group Replication: Handling Network Glitches - Best Practices
MySQL Group Replication: Handling Network Glitches - Best PracticesFrederic Descamps
 
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...Frederic Descamps
 
Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...
Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...
Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...Frederic Descamps
 
preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0
preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0
preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0Frederic Descamps
 
MySQL Shell - the best DBA tool ?
MySQL Shell - the best DBA tool ? MySQL Shell - the best DBA tool ?
MySQL Shell - the best DBA tool ? Frederic Descamps
 
MySQL Tech Café #8: MySQL 8.0 for Python Developers
MySQL Tech Café #8: MySQL 8.0 for Python DevelopersMySQL Tech Café #8: MySQL 8.0 for Python Developers
MySQL Tech Café #8: MySQL 8.0 for Python DevelopersFrederic Descamps
 
Looking Inside the MySQL 8.0 Document Store
Looking Inside the MySQL 8.0 Document StoreLooking Inside the MySQL 8.0 Document Store
Looking Inside the MySQL 8.0 Document StoreFrederic Descamps
 
MySQL 8.0 : High Availability Solution for Everybody
MySQL 8.0 : High Availability Solution for EverybodyMySQL 8.0 : High Availability Solution for Everybody
MySQL 8.0 : High Availability Solution for EverybodyFrederic Descamps
 
Hash join in MySQL 8
Hash join in MySQL 8Hash join in MySQL 8
Hash join in MySQL 8Erik Frøseth
 
MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0
MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0
MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0Frederic Descamps
 
the State of the Dolphin - October 2020
the State of the Dolphin - October 2020the State of the Dolphin - October 2020
the State of the Dolphin - October 2020Frederic Descamps
 
MySQL InnoDB Cluster and Group Replication in a nutshell hands-on tutorial
MySQL InnoDB Cluster and Group Replication in a nutshell  hands-on tutorialMySQL InnoDB Cluster and Group Replication in a nutshell  hands-on tutorial
MySQL InnoDB Cluster and Group Replication in a nutshell hands-on tutorialFrederic Descamps
 
Cloud native - Why to use MySQL 8.0 and how to use it on oci with MDS
Cloud native -  Why to use MySQL 8.0 and how to use it on oci with MDSCloud native -  Why to use MySQL 8.0 and how to use it on oci with MDS
Cloud native - Why to use MySQL 8.0 and how to use it on oci with MDSFrederic Descamps
 
MySQL : State of the Dolphin May 2019
MySQL : State of the Dolphin May 2019MySQL : State of the Dolphin May 2019
MySQL : State of the Dolphin May 2019Frederic Descamps
 
Oracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with Terraform
Oracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with TerraformOracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with Terraform
Oracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with TerraformFrederic Descamps
 
MySQL InnoDB Cluster and Group Replication in a Nutshell
MySQL InnoDB Cluster and Group Replication in a NutshellMySQL InnoDB Cluster and Group Replication in a Nutshell
MySQL InnoDB Cluster and Group Replication in a NutshellFrederic Descamps
 
MySQL Innovation Day Chicago - MySQL HA So Easy : That's insane !!
MySQL Innovation Day Chicago  - MySQL HA So Easy : That's insane !!MySQL Innovation Day Chicago  - MySQL HA So Easy : That's insane !!
MySQL Innovation Day Chicago - MySQL HA So Easy : That's insane !!Frederic Descamps
 
Oracle Open World 2018 / Code One : MySQL 8.0 Document Store
Oracle Open World 2018 /  Code One : MySQL 8.0 Document StoreOracle Open World 2018 /  Code One : MySQL 8.0 Document Store
Oracle Open World 2018 / Code One : MySQL 8.0 Document StoreFrederic Descamps
 
Percona Live Europe 2018 MySQL Group Replication... the magic explained
Percona Live Europe 2018  MySQL Group Replication... the magic explainedPercona Live Europe 2018  MySQL Group Replication... the magic explained
Percona Live Europe 2018 MySQL Group Replication... the magic explainedFrederic Descamps
 

La actualidad más candente (20)

Python and MySQL 8.0 Document Store
Python and MySQL 8.0 Document StorePython and MySQL 8.0 Document Store
Python and MySQL 8.0 Document Store
 
MySQL Group Replication: Handling Network Glitches - Best Practices
MySQL Group Replication: Handling Network Glitches - Best PracticesMySQL Group Replication: Handling Network Glitches - Best Practices
MySQL Group Replication: Handling Network Glitches - Best Practices
 
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...
OpenExpo Virtual Experience 2020: MySQL 8.0 Document Store - Discovery of a n...
 
Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...
Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...
Another MySQL HA Solution for ProxySQL Users, Easy and All Integrated: MySQL ...
 
preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0
preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0
preFOSDEM MySQL Day - Best Practices to Upgrade to MySQL 8.0
 
MySQL Shell - the best DBA tool ?
MySQL Shell - the best DBA tool ? MySQL Shell - the best DBA tool ?
MySQL Shell - the best DBA tool ?
 
MySQL Tech Café #8: MySQL 8.0 for Python Developers
MySQL Tech Café #8: MySQL 8.0 for Python DevelopersMySQL Tech Café #8: MySQL 8.0 for Python Developers
MySQL Tech Café #8: MySQL 8.0 for Python Developers
 
Looking Inside the MySQL 8.0 Document Store
Looking Inside the MySQL 8.0 Document StoreLooking Inside the MySQL 8.0 Document Store
Looking Inside the MySQL 8.0 Document Store
 
MySQL 8.0 : High Availability Solution for Everybody
MySQL 8.0 : High Availability Solution for EverybodyMySQL 8.0 : High Availability Solution for Everybody
MySQL 8.0 : High Availability Solution for Everybody
 
Hash join in MySQL 8
Hash join in MySQL 8Hash join in MySQL 8
Hash join in MySQL 8
 
MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0
MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0
MySQL Day Virtual: Best Practices Tips - Upgrading to MySQL 8.0
 
the State of the Dolphin - October 2020
the State of the Dolphin - October 2020the State of the Dolphin - October 2020
the State of the Dolphin - October 2020
 
MySQL InnoDB Cluster and Group Replication in a nutshell hands-on tutorial
MySQL InnoDB Cluster and Group Replication in a nutshell  hands-on tutorialMySQL InnoDB Cluster and Group Replication in a nutshell  hands-on tutorial
MySQL InnoDB Cluster and Group Replication in a nutshell hands-on tutorial
 
Cloud native - Why to use MySQL 8.0 and how to use it on oci with MDS
Cloud native -  Why to use MySQL 8.0 and how to use it on oci with MDSCloud native -  Why to use MySQL 8.0 and how to use it on oci with MDS
Cloud native - Why to use MySQL 8.0 and how to use it on oci with MDS
 
MySQL : State of the Dolphin May 2019
MySQL : State of the Dolphin May 2019MySQL : State of the Dolphin May 2019
MySQL : State of the Dolphin May 2019
 
Oracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with Terraform
Oracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with TerraformOracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with Terraform
Oracle Developer Live: Deploying MySQL InnoDB Cluster on OCI with Terraform
 
MySQL InnoDB Cluster and Group Replication in a Nutshell
MySQL InnoDB Cluster and Group Replication in a NutshellMySQL InnoDB Cluster and Group Replication in a Nutshell
MySQL InnoDB Cluster and Group Replication in a Nutshell
 
MySQL Innovation Day Chicago - MySQL HA So Easy : That's insane !!
MySQL Innovation Day Chicago  - MySQL HA So Easy : That's insane !!MySQL Innovation Day Chicago  - MySQL HA So Easy : That's insane !!
MySQL Innovation Day Chicago - MySQL HA So Easy : That's insane !!
 
Oracle Open World 2018 / Code One : MySQL 8.0 Document Store
Oracle Open World 2018 /  Code One : MySQL 8.0 Document StoreOracle Open World 2018 /  Code One : MySQL 8.0 Document Store
Oracle Open World 2018 / Code One : MySQL 8.0 Document Store
 
Percona Live Europe 2018 MySQL Group Replication... the magic explained
Percona Live Europe 2018  MySQL Group Replication... the magic explainedPercona Live Europe 2018  MySQL Group Replication... the magic explained
Percona Live Europe 2018 MySQL Group Replication... the magic explained
 

Similar a Oracle Open World Middle East - MySQL 8 a Giant Leap for SQL

DataOps Barcelona - MySQL HA so easy... that's insane !
DataOps Barcelona - MySQL HA so easy... that's insane !DataOps Barcelona - MySQL HA so easy... that's insane !
DataOps Barcelona - MySQL HA so easy... that's insane !Frederic Descamps
 
Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Olivier DASINI
 
MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0
MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0
MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0Frederic Descamps
 
DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...
DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...
DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...Frederic Descamps
 
State of The Dolphin - May 2021
State of The Dolphin - May 2021State of The Dolphin - May 2021
State of The Dolphin - May 2021Frederic Descamps
 
State of the Dolphin - May 2022
State of the Dolphin - May 2022State of the Dolphin - May 2022
State of the Dolphin - May 2022Frederic Descamps
 
MySQL Database Architectures - 2020-10
MySQL Database Architectures -  2020-10MySQL Database Architectures -  2020-10
MySQL Database Architectures - 2020-10Kenny Gryp
 
20200613 my sql-ha-deployment
20200613 my sql-ha-deployment20200613 my sql-ha-deployment
20200613 my sql-ha-deploymentIvan Ma
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...GeneXus
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsAndrew Morgan
 
MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!
MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!
MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!Miguel Araújo
 
devops Days Belgium Ghent 2016
devops Days Belgium Ghent 2016devops Days Belgium Ghent 2016
devops Days Belgium Ghent 2016Frederic Descamps
 
20190915_MySQL開発最新動向
20190915_MySQL開発最新動向20190915_MySQL開発最新動向
20190915_MySQL開発最新動向Machiko Ikoma
 
Oracle Open World 2018 / Code One : MySQL 8.0 High Availability with MySQL I...
Oracle Open World 2018 / Code One  : MySQL 8.0 High Availability with MySQL I...Oracle Open World 2018 / Code One  : MySQL 8.0 High Availability with MySQL I...
Oracle Open World 2018 / Code One : MySQL 8.0 High Availability with MySQL I...Frederic Descamps
 
Oracle engineered systems executive presentation
Oracle engineered systems executive presentationOracle engineered systems executive presentation
Oracle engineered systems executive presentationOTN Systems Hub
 
MySQL Community and Commercial Edition
MySQL Community and Commercial EditionMySQL Community and Commercial Edition
MySQL Community and Commercial EditionMario Beck
 
MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)
MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)
MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)Miguel Araújo
 

Similar a Oracle Open World Middle East - MySQL 8 a Giant Leap for SQL (20)

DataOps Barcelona - MySQL HA so easy... that's insane !
DataOps Barcelona - MySQL HA so easy... that's insane !DataOps Barcelona - MySQL HA so easy... that's insane !
DataOps Barcelona - MySQL HA so easy... that's insane !
 
Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0
 
Sunshine php my sql 8.0 v2
Sunshine php my sql 8.0 v2Sunshine php my sql 8.0 v2
Sunshine php my sql 8.0 v2
 
MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0
MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0
MySQL 8.0 Document Store - how to mix NoSQL & SQL in MySQL 8.0
 
DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...
DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...
DataOps barcelona - MySQL 8.0 document store: NoSQL with all the benefits of ...
 
State of The Dolphin - May 2021
State of The Dolphin - May 2021State of The Dolphin - May 2021
State of The Dolphin - May 2021
 
State of the Dolphin - May 2022
State of the Dolphin - May 2022State of the Dolphin - May 2022
State of the Dolphin - May 2022
 
MySQL Database Architectures - 2020-10
MySQL Database Architectures -  2020-10MySQL Database Architectures -  2020-10
MySQL Database Architectures - 2020-10
 
20200613 my sql-ha-deployment
20200613 my sql-ha-deployment20200613 my sql-ha-deployment
20200613 my sql-ha-deployment
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar charts
 
MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!
MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!
MySQL Shell/AdminAPI - MySQL Architectures Made Easy For All!
 
devops Days Belgium Ghent 2016
devops Days Belgium Ghent 2016devops Days Belgium Ghent 2016
devops Days Belgium Ghent 2016
 
20190915_MySQL開発最新動向
20190915_MySQL開発最新動向20190915_MySQL開発最新動向
20190915_MySQL開発最新動向
 
Oracle Open World 2018 / Code One : MySQL 8.0 High Availability with MySQL I...
Oracle Open World 2018 / Code One  : MySQL 8.0 High Availability with MySQL I...Oracle Open World 2018 / Code One  : MySQL 8.0 High Availability with MySQL I...
Oracle Open World 2018 / Code One : MySQL 8.0 High Availability with MySQL I...
 
Oracle engineered systems executive presentation
Oracle engineered systems executive presentationOracle engineered systems executive presentation
Oracle engineered systems executive presentation
 
MySQL
MySQLMySQL
MySQL
 
MySQL Shell for DBAs
MySQL Shell for DBAsMySQL Shell for DBAs
MySQL Shell for DBAs
 
MySQL Community and Commercial Edition
MySQL Community and Commercial EditionMySQL Community and Commercial Edition
MySQL Community and Commercial Edition
 
MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)
MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)
MySQL Router - Explore The Secrets (MySQL Belgian Days 2024)
 

Más de Frederic Descamps

MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...Frederic Descamps
 
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
MySQL Day Roma - MySQL Shell and Visual Studio Code ExtensionMySQL Day Roma - MySQL Shell and Visual Studio Code Extension
MySQL Day Roma - MySQL Shell and Visual Studio Code ExtensionFrederic Descamps
 
RivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL Indexes and HistogramsRivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL Indexes and HistogramsFrederic Descamps
 
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdfRivieraJUG - MySQL 8.0 - What's new for developers.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdfFrederic Descamps
 
MySQL User Group NL - MySQL 8
MySQL User Group NL - MySQL 8MySQL User Group NL - MySQL 8
MySQL User Group NL - MySQL 8Frederic Descamps
 
Percona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodePercona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodeFrederic Descamps
 
Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database SystemPercona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database SystemFrederic Descamps
 
Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesFrederic Descamps
 
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
LinuxFest Northwest 2022 - The Evolution of a MySQL Database SystemLinuxFest Northwest 2022 - The Evolution of a MySQL Database System
LinuxFest Northwest 2022 - The Evolution of a MySQL Database SystemFrederic Descamps
 
Open Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and HistogramsOpen Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and HistogramsFrederic Descamps
 
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
Pi Day 2022 -  from IoT to MySQL HeatWave Database ServicePi Day 2022 -  from IoT to MySQL HeatWave Database Service
Pi Day 2022 - from IoT to MySQL HeatWave Database ServiceFrederic Descamps
 
Confoo 2022 - le cycle d'une instance MySQL
Confoo 2022  - le cycle d'une instance MySQLConfoo 2022  - le cycle d'une instance MySQL
Confoo 2022 - le cycle d'une instance MySQLFrederic Descamps
 
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...Frederic Descamps
 
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Frederic Descamps
 
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Frederic Descamps
 
Deploying Magento on OCI with MDS
Deploying Magento on OCI with MDSDeploying Magento on OCI with MDS
Deploying Magento on OCI with MDSFrederic Descamps
 
From single MySQL instance to High Availability: the journey to MySQL InnoDB ...
From single MySQL instance to High Availability: the journey to MySQL InnoDB ...From single MySQL instance to High Availability: the journey to MySQL InnoDB ...
From single MySQL instance to High Availability: the journey to MySQL InnoDB ...Frederic Descamps
 
MySQL Database Service Webinar: Installing Drupal in oci with mds
MySQL Database Service Webinar: Installing Drupal in oci with mdsMySQL Database Service Webinar: Installing Drupal in oci with mds
MySQL Database Service Webinar: Installing Drupal in oci with mdsFrederic Descamps
 
MySQL 8.0 Document Store - Discovery of a New World
MySQL 8.0 Document Store - Discovery of a New WorldMySQL 8.0 Document Store - Discovery of a New World
MySQL 8.0 Document Store - Discovery of a New WorldFrederic Descamps
 

Más de Frederic Descamps (20)

MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
MySQL Innovation & Cloud Day - Document Store avec MySQL HeatWave Database Se...
 
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
MySQL Day Roma - MySQL Shell and Visual Studio Code ExtensionMySQL Day Roma - MySQL Shell and Visual Studio Code Extension
MySQL Day Roma - MySQL Shell and Visual Studio Code Extension
 
RivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL Indexes and HistogramsRivieraJUG - MySQL Indexes and Histograms
RivieraJUG - MySQL Indexes and Histograms
 
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdfRivieraJUG - MySQL 8.0 - What's new for developers.pdf
RivieraJUG - MySQL 8.0 - What's new for developers.pdf
 
MySQL User Group NL - MySQL 8
MySQL User Group NL - MySQL 8MySQL User Group NL - MySQL 8
MySQL User Group NL - MySQL 8
 
Percona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodePercona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio Code
 
Percona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database SystemPercona Live 2022 - The Evolution of a MySQL Database System
Percona Live 2022 - The Evolution of a MySQL Database System
 
Percona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL ArchitecturesPercona Live 2022 - MySQL Architectures
Percona Live 2022 - MySQL Architectures
 
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
LinuxFest Northwest 2022 - The Evolution of a MySQL Database SystemLinuxFest Northwest 2022 - The Evolution of a MySQL Database System
LinuxFest Northwest 2022 - The Evolution of a MySQL Database System
 
Open Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and HistogramsOpen Source 101 2022 - MySQL Indexes and Histograms
Open Source 101 2022 - MySQL Indexes and Histograms
 
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
Pi Day 2022 -  from IoT to MySQL HeatWave Database ServicePi Day 2022 -  from IoT to MySQL HeatWave Database Service
Pi Day 2022 - from IoT to MySQL HeatWave Database Service
 
Confoo 2022 - le cycle d'une instance MySQL
Confoo 2022  - le cycle d'une instance MySQLConfoo 2022  - le cycle d'une instance MySQL
Confoo 2022 - le cycle d'une instance MySQL
 
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...FOSDEM 2022 MySQL Devroom:  MySQL 8.0 - Logical Backups, Snapshots and Point-...
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...
 
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0
 
Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0Les nouveautés de MySQL 8.0
Les nouveautés de MySQL 8.0
 
Deploying Magento on OCI with MDS
Deploying Magento on OCI with MDSDeploying Magento on OCI with MDS
Deploying Magento on OCI with MDS
 
MySQL Router REST API
MySQL Router REST APIMySQL Router REST API
MySQL Router REST API
 
From single MySQL instance to High Availability: the journey to MySQL InnoDB ...
From single MySQL instance to High Availability: the journey to MySQL InnoDB ...From single MySQL instance to High Availability: the journey to MySQL InnoDB ...
From single MySQL instance to High Availability: the journey to MySQL InnoDB ...
 
MySQL Database Service Webinar: Installing Drupal in oci with mds
MySQL Database Service Webinar: Installing Drupal in oci with mdsMySQL Database Service Webinar: Installing Drupal in oci with mds
MySQL Database Service Webinar: Installing Drupal in oci with mds
 
MySQL 8.0 Document Store - Discovery of a New World
MySQL 8.0 Document Store - Discovery of a New WorldMySQL 8.0 Document Store - Discovery of a New World
MySQL 8.0 Document Store - Discovery of a New World
 

Último

tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 

Último (20)

tonesoftg
tonesoftgtonesoftg
tonesoftg
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 

Oracle Open World Middle East - MySQL 8 a Giant Leap for SQL

  • 2. Kenny Gryp Principal Product Manager MySQL Janurary 2020 Frédéric Descamps Community Manager MySQL MySQL 8.0 a Giant Leap for SQL MySQL 8 is Great ! 2 / 80
  • 3.   Safe Harbor 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, timing and pricing of any features or functionality described for Oracle´s product may change and remains at the sole discretion of Oracle Corporation. Statement in this presentation relating to Oracle´s future plans, expectations, beliefs, intentions and ptospects are "forward-looking statements" and are subject to material risks and uncertainties. A detailed discussion of these factors and other risks that a ect our business is contained in Oracle´s Securities and Exchange Commission (SEC) lings, including our most recent reports on Form 10-K and Form 10-Q under the heading "Risk Factors". These lings are available on the SEC´s website or on Oracle´s website at h p://www.oracle.com/investor. All information in this presentation is current as of September 2019 and Oracle undertakes no duty to update any statement in light of new information or future events. Copyright @ 2020 Oracle and/or its affiliates. 3 / 80
  • 4. Who are we ? Copyright @ 2020 Oracle and/or its affiliates. 4 / 80
  • 5. Kenny Gryp @gryp MySQL Principal Product Manager Replication, HA & InnoDB raised in Belgium 🇧🇪 living in Oregon, USA 🇺🇸 Copyright @ 2020 Oracle and/or its affiliates. 5 / 80
  • 6. Frédéric Descamps @lefred MySQL Evangelist Managing MySQL since 3.23 devops believer living in Belgium 🇧🇪 h ps://lefred.be Copyright @ 2020 Oracle and/or its affiliates. 6 / 80
  • 7. DB-Engines 2019 Database Ranking Copyright @ 2020 Oracle and/or its affiliates. 7 / 80
  • 8. DB-Engines 2019 Database Ranking MySQL is the 2nd most popular database Copyright @ 2020 Oracle and/or its affiliates. 8 / 80
  • 9. DB-Engines 2019 Database Ranking MySQL is the 2nd most popular database MySQL is the most Open Source popular database Copyright @ 2020 Oracle and/or its affiliates. 9 / 80
  • 10. MySQL is the DBMS of the Year 2019 ! Copyright @ 2020 Oracle and/or its affiliates. 10 / 80
  • 11. MySQL Developer Popularity Stack Overflow Developer Survey 2019 Copyright @ 2020 Oracle and/or its affiliates. 11 / 80
  • 12. MySQL is the most popular database with developers MySQL Developer Popularity Stack Overflow Developer Survey 2019 Copyright @ 2020 Oracle and/or its affiliates. 12 / 80
  • 13. April 2018 (8.0 GA) August 2019 MySQL 8.0: fastest adoption of a release !! Copyright @ 2020 Oracle and/or its affiliates. 13 / 80
  • 14. "This is a landmark release as MySQL eventually evolved beyond SQL-92 and the purely relational dogma. Among a few other standard SQL features, MySQL now supports window functions (over) and common table expressions (with). Without a doubt, these are the two most important post-SQL-92 features.” MySQL 8.0: one giant leap for SQL Copyright @ 2020 Oracle and/or its affiliates. 14 / 80
  • 15. Copyright @ 2020 Oracle and/or its affiliates. 15 / 80
  • 16. NoSQL Copyright @ 2020 Oracle and/or its affiliates. 16 / 80
  • 17. * CREATE * READ * UPDATE * DELETE col->add({title: 'MySQL is Great', author: 'lefred' }) col-> nd() collection.modify('author = "lefred"').set('author', 'kenny') col.remove('author = "lefred"') MySQL supports JSON & CRUD operations Copyright @ 2020 Oracle and/or its affiliates. 17 / 80
  • 18. * CREATE * READ * UPDATE * DELETE col->add({title: 'MySQL is Great', author: 'lefred' }) col-> nd() collection.modify('author = "lefred"').set('author', 'kenny') col.remove('author = "lefred"') MySQL supports JSON & CRUD operations It's possible to use MySQL without a single line of SQL ! Copyright @ 2020 Oracle and/or its affiliates. 18 / 80
  • 19. MySQL supports JSON & CRUD operations Copyright @ 2020 Oracle and/or its affiliates. 19 / 80
  • 20. NoSQL + SQL = MySQL Copyright @ 2020 Oracle and/or its affiliates. 20 / 80
  • 21. SQL Copyright @ 2020 Oracle and/or its affiliates. 21 / 80
  • 22. Credits: @MarkusWinand - @ModernSQL SQL: RECURSION / CTEs Copyright @ 2020 Oracle and/or its affiliates. 22 / 80
  • 23. Credits: @MarkusWinand - @ModernSQL SQL: LATERAL Copyright @ 2020 Oracle and/or its affiliates. 23 / 80
  • 24. Credits: @MarkusWinand - @ModernSQL SQL: Analytical / Window Functions Copyright @ 2020 Oracle and/or its affiliates. 24 / 80
  • 25. Credits: @MarkusWinand - @ModernSQL SQL: Analytical / Window Functions Copyright @ 2020 Oracle and/or its affiliates. 25 / 80
  • 26. Credits: @MarkusWinand - @ModernSQL SQL: JSON_TABLE Copyright @ 2020 Oracle and/or its affiliates. 26 / 80
  • 27. Credits: @MarkusWinand - @ModernSQL SQL: JSON_TABLE Copyright @ 2020 Oracle and/or its affiliates. 27 / 80
  • 28. List the best restaurant of each type of food and show the top 10, with the best one first ! Copyright @ 2020 Oracle and/or its affiliates. 28 / 80
  • 29. And all together ! Copyright @ 2020 Oracle and/or its affiliates. 29 / 80
  • 30. And all together ! Copyright @ 2020 Oracle and/or its affiliates. 30 / 80
  • 31. MySQL refactoring Copyright @ 2020 Oracle and/or its affiliates. 31 / 80
  • 32. Modular Easy to Extend Each iterator encapsulates one operation Same interface for all iterators All operations can be connected MySQL New Iterator Executor Copyright @ 2020 Oracle and/or its affiliates. 32 / 80
  • 33. Modular Easy to Extend Each iterator encapsulates one operation Same interface for all iterators All operations can be connected MySQL New Iterator Executor Copyright @ 2020 Oracle and/or its affiliates. 33 / 80
  • 34. EXPLAIN FORMAT=TREE Copyright @ 2020 Oracle and/or its affiliates. 34 / 80
  • 35. EXPLAIN ANALYZE Instruments and executes the query Estimated cost Actual execution statistics Time to return rst row Time to return all rows Number of rows returned Number of loops Uses the new tree output format also available in EXPLAIN Copyright @ 2020 Oracle and/or its affiliates. 35 / 80
  • 36. EXPLAIN ANALYZE Copyright @ 2020 Oracle and/or its affiliates. 36 / 80
  • 37. Hash Join Typically faster than nested loop for large result sets In-memory if possible Spill to disk if necessary Used for inner equi-joins Extendable to outer, semi and anti joins Replaces BNL in query plans Hints to force use of hash join or nested loop More Info: h ps://slideshare.net/NorvaldRyeng/mysql-8018-latest-updates-hash-join- and-explain-analyze Copyright @ 2020 Oracle and/or its affiliates. 37 / 80
  • 38. Hash Join: performance Copyright @ 2020 Oracle and/or its affiliates. 38 / 80
  • 39. Database Architectures Copyright @ 2020 Oracle and/or its affiliates. 39 / 80
  • 40. MySQL InnoDB Cluster "A single product — MySQL — with high availability and scaling features baked in; providing an integrated end-to-end solution that is easy to use." Copyright @ 2020 Oracle and/or its affiliates. 40 / 80
  • 41. MySQL InnoDB Cluster "A single product — MySQL — with high availability and scaling features baked in; providing an integrated end-to-end solution that is easy to use." Copyright @ 2020 Oracle and/or its affiliates. 41 / 80
  • 42. Components: MySQL Server MySQL Group Replication MySQL Shell MySQL Router MySQL InnoDB Cluster "A single product — MySQL — with high availability and scaling features baked in; providing an integrated end-to-end solution that is easy to use." Copyright @ 2020 Oracle and/or its affiliates. 42 / 80
  • 43. One Product: MySQL All components developed together Integration of all components Full stack testing MySQL InnoDB Cluster - Goals Copyright @ 2020 Oracle and/or its affiliates. 43 / 80
  • 44. One Product: MySQL All components developed together Integration of all components Full stack testing Easy to Use One client: MySQL Shell Integrated orchestration Homogenous servers MySQL InnoDB Cluster - Goals Copyright @ 2020 Oracle and/or its affiliates. 44 / 80
  • 45. MySQL Group Replication Copyright @ 2020 Oracle and/or its affiliates. 45 / 80
  • 46. High Available Distributed MySQL DB Fault tolerance Automatic failover Active/Active update anywhere (limits apply) Automatic membership management Adding/removing members Network partitions, failures Con ict detection and resolution Prevents data loss MySQL Group Replication Copyright @ 2020 Oracle and/or its affiliates. 46 / 80
  • 47. Consistency: No Data Loss (RPO=0) in event of failure of (primary) member Split brain prevention (Quorum) MySQL Group Replication - Use Cases Copyright @ 2020 Oracle and/or its affiliates. 47 / 80
  • 48. Consistency: No Data Loss (RPO=0) in event of failure of (primary) member Split brain prevention (Quorum) Highly Available: Automatic Failover Primary members are automatically elected Automatic Network Partition handling MySQL Group Replication - Use Cases Copyright @ 2020 Oracle and/or its affiliates. 48 / 80
  • 49. Consistency: No Data Loss (RPO=0) in event of failure of (primary) member Split brain prevention (Quorum) Highly Available: Automatic Failover Primary members are automatically elected Automatic Network Partition handling Read Scaleout Add/Remove members as needed Replication Lag handling with Flow Control Con gurable Consistency Levels Eventual Full Consistency -- no stale reads MySQL Group Replication - Use Cases Copyright @ 2020 Oracle and/or its affiliates. 49 / 80
  • 50. Consistency: No Data Loss (RPO=0) in event of failure of (primary) member Split brain prevention (Quorum) Highly Available: Automatic Failover Primary members are automatically elected Automatic Network Partition handling Read Scaleout Add/Remove members as needed Replication Lag handling with Flow Control Con gurable Consistency Levels Eventual Full Consistency -- no stale reads Active/Active environments Write to many members at the same time ordered writes within the group (XCOM) guaranteed consistency Good write performance due to Optimistic Locking (workload dependent) MySQL Group Replication - Use Cases Copyright @ 2020 Oracle and/or its affiliates. 50 / 80
  • 51. MySQL Router Copyright @ 2020 Oracle and/or its affiliates. 51 / 80
  • 52. Transparent Access to Database Arch. "provide transparent routing between your application and back-end MySQL Servers" Transparent client connection routing Load balancing Application connection failover Li le to no con guration needed Stateless design o ers easy HA client routing Router as part of the application stack Integration into InnoDB Cluster & InnoDB ReplicaSet Understands Group Replication & Replication topology Currently TCP Port each for PRIMARY and NON- PRIMARY tra c MySQL Router Copyright @ 2020 Oracle and/or its affiliates. 52 / 80
  • 53. MySQL Shell Copyright @ 2020 Oracle and/or its affiliates. 53 / 80
  • 54. Database Administration Interface "MySQL Shell provides the developer and DBA with a single intuitive, exible, and powerful interface for all MySQL related tasks!" Multi-Language: JavaScript, Python, and SQL Naturally scriptable Supports Document and Relational models Exposes full Development and Admin API Classic MySQL protocol and X protocol MySQL Shell Copyright @ 2020 Oracle and/or its affiliates. 54 / 80
  • 55. Introducing MySQL InnoDB ReplicaSet! 8.0.19 Feature! Fully integrated MySQL Router Automatic Routing Ease of use with MySQL Shell Con guring, Adding, Removing members Automatic Member Provisioning (CLONE) MySQL InnoDB Replicaset Copyright @ 2020 Oracle and/or its affiliates. 55 / 80
  • 56. Replication Architecture: (manual) Switchover & Failover (asynchronous) Read Scaleout 'Simple' Replication architecture: no network/hardware requirements Providing Availability on PRIMARY when issues with secondaries or network MySQL InnoDB Replicaset Copyright @ 2020 Oracle and/or its affiliates. 56 / 80
  • 57. Past MySQL InnoDB ReplicaSet MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 57 / 80
  • 58. Past MySQL InnoDB ReplicaSet Restore a backup to provision a member Automatically provisioning new members: InnoDB CLONE MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 58 / 80
  • 59. Past MySQL InnoDB ReplicaSet Restore a backup to provision a member Automatically provisioning new members: InnoDB CLONECon gure Replication Users Con gure Replication MySQL Shell Automatically con gures users & replication MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 59 / 80
  • 60. Past MySQL InnoDB ReplicaSet Restore a backup to provision a member Automatically provisioning new members: InnoDB CLONECon gure Replication Users Con gure Replication MySQL Shell Automatically con gures users & replicationManually con guring, adding removing servers in Application, MySQL Router (or other proxy) Integrated MySQL Router load balancing Only need to bootstrap Router Router is stateless, adapts to topology changes MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 60 / 80
  • 61. Past MySQL InnoDB ReplicaSet Restore a backup to provision a member Automatically provisioning new members: InnoDB CLONECon gure Replication Users Con gure Replication MySQL Shell Automatically con gures users & replicationManually con guring, adding removing servers in Application, MySQL Router (or other proxy) Integrated MySQL Router load balancing Only need to bootstrap Router Router is stateless, adapts to topology changes Manually or relying on external tools to make topology changes Easy to use manual switchover/failover MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 61 / 80
  • 62. Past MySQL InnoDB ReplicaSet Restore a backup to provision a member Automatically provisioning new members: InnoDB CLONECon gure Replication Users Con gure Replication MySQL Shell Automatically con gures users & replicationManually con guring, adding removing servers in Application, MySQL Router (or other proxy) Integrated MySQL Router load balancing Only need to bootstrap Router Router is stateless, adapts to topology changes Manually or relying on external tools to make topology changes Easy to use manual switchover/failoverUse additional monitoring tool log in on all machines to check topology status See status of the topology through MySQL Shell status() MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 62 / 80
  • 63. Past MySQL InnoDB ReplicaSet MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 63 / 80
  • 64. Past MySQL InnoDB ReplicaSet complexity: user is responsible for the full con guration of every component and it's se ings Shell con gures Server, Router, Replication in a standardized best practice setup, prevents mistakes MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 64 / 80
  • 65. Past MySQL InnoDB ReplicaSet complexity: user is responsible for the full con guration of every component and it's se ings Shell con gures Server, Router, Replication in a standardized best practice setup, prevents mistakes every setup is a customized setup Standard Solution -- Supported & QA'ed by Oracle MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 65 / 80
  • 66. Past MySQL InnoDB ReplicaSet complexity: user is responsible for the full con guration of every component and it's se ings Shell con gures Server, Router, Replication in a standardized best practice setup, prevents mistakes every setup is a customized setup Standard Solution -- Supported & QA'ed by Oracle A lot of manual steps and additional software required, always customized and often overengineered by MySQL DBA's Easy to use, even for MySQL beginner MySQL InnoDB ReplicaSet - Features Copyright @ 2020 Oracle and/or its affiliates. 66 / 80
  • 67. MySQL Shell - Easy to Use Copyright @ 2020 Oracle and/or its affiliates. 67 / 80
  • 68. MySQL InnoDB Cluster MySQL InnoDB ReplicaSet js> c admin@mysql1 js> cluster = dba.createCluster('cluster') js> c admin@mysql1 js> rs = dba.createReplicaSet('replicaset') MySQL Shell - Easy to Use Copyright @ 2020 Oracle and/or its affiliates. 68 / 80
  • 69. MySQL InnoDB Cluster MySQL InnoDB ReplicaSet js> c admin@mysql1 js> cluster = dba.createCluster('cluster') js> c admin@mysql1 js> rs = dba.createReplicaSet('replicaset') Con gure server to add later js> dba.con gureInstance('admin@mysql2') js> dba.con gureReplicaSetInstance('admin@mysql2') MySQL Shell - Easy to Use Copyright @ 2020 Oracle and/or its affiliates. 69 / 80
  • 70. MySQL InnoDB Cluster MySQL InnoDB ReplicaSet js> c admin@mysql1 js> cluster = dba.createCluster('cluster') js> c admin@mysql1 js> rs = dba.createReplicaSet('replicaset') Con gure server to add later js> dba.con gureInstance('admin@mysql2') js> dba.con gureReplicaSetInstance('admin@mysql2') Add server to the Cluster js> cluster.addInstance('admin@mysql2') js> rs.addInstance('admin@mysql2') MySQL Shell - Easy to Use Copyright @ 2020 Oracle and/or its affiliates. 70 / 80
  • 71. MySQL InnoDB Cluster MySQL InnoDB ReplicaSet js> c admin@mysql1 js> cluster = dba.createCluster('cluster') js> c admin@mysql1 js> rs = dba.createReplicaSet('replicaset') Con gure server to add later js> dba.con gureInstance('admin@mysql2') js> dba.con gureReplicaSetInstance('admin@mysql2') Add server to the Cluster js> cluster.addInstance('admin@mysql2') js> rs.addInstance('admin@mysql2') Bootstrap MySQL Router $ sudo mysqlrouter --user=mysqlrouter --bootstrap $ sudo systemctl start mysqlrouter $ sudo mysqlrouter --user=mysqlrouter --bootstrap $ sudo systemctl start mysqlrouter MySQL Shell - Easy to Use Copyright @ 2020 Oracle and/or its affiliates. 71 / 80
  • 72. mysql-js> cluster.status() { "clusterName": "cluster", "defaultReplicaSet": { "name": "default", "primary": "mysql1:3306", "ssl": "REQUIRED", "status": "OK", "statusText": "Cluster is ONLINE and can tolerate up to ONE failure.", "topology": { "mysql1:3306": { "address": "mysql1:3306", "mode": "R/W", "readReplicas": {}, "role": "HA", "status": "ONLINE" }, "mysql2:3306": { "address": "mysql2:3306", "mode": "R/O", "readReplicas": {}, "role": "HA", "status": "ONLINE" }, "mysql3:3306": { "address": "mysql3:3306", "mode": "R/O", "readReplicas": {}, "role": "HA", "status": "ONLINE" } } } MySQL Shell - Easy to Use Check the Cluster status: Copyright @ 2020 Oracle and/or its affiliates. 72 / 80
  • 73. MySQL Enterprise Edition Copyright @ 2020 Oracle and/or its affiliates. 73 / 80
  • 74. Copyright @ 2020 Oracle and/or its affiliates. 74 / 80
  • 75. Upgrade Checker Copyright @ 2020 Oracle and/or its affiliates. 75 / 80
  • 76. Don't forget to use MySQL Shell Upgrade Checker Utility New tool in MySQL Shell JS> util.checkForServerUpgrade() Will check your MySQL 5.7 or 8.0 installation readiness for upgrade to latest version Check for legacy issues Run the tool on the 5.7 before upgrading! Copyright @ 2020 Oracle and/or its affiliates. 76 / 80
  • 77. Thank you ! Copyright @ 2020 Oracle and/or its affiliates. 77 / 80
  • 78. Upgrade to MySQL 8.0 It's time to upgrade to MySQL 8.0, the fastest MySQL adoption release ever ! Copyright @ 2020 Oracle and/or its affiliates. 78 / 80
  • 79. Upgrade to MySQL 8.0 It's time to upgrade to MySQL 8.0, the fastest MySQL adoption release ever ! Copyright @ 2020 Oracle and/or its affiliates. 79 / 80
  • 80. Copyright @ 2020 Oracle and/or its affiliates. 80 / 80