Slide 1

Slide 1 text

What’s New in MySQL 8.0 A review of what happened in the last two years… Olivier Dasini MySQL Cloud Principal Solutions Architect EMEA olivier.dasini@oracle.com Blogs : www.dasini.net/blog/en : www.dasini.net/blog/fr Linkedin: www.linkedin.com/in/olivier-dasini Twitter : @freshdaz

Slide 2

Slide 2 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 2 Me, Myself & I  MySQL Geek  Addicted to MySQL for 15+ years  Playing with databases for 20+ years  MySQL Writer, Blogger and Speaker  Also: DBA, Consultant, Architect, Trainer, ...  MySQL Cloud Principal Solutions Architect EMEA at Oracle  Stay up to date!  Blog: www.dasini.net/blog/en  Linkedin: www.linkedin.com/in/olivier-dasini/  Twitter: @freshdaz Olivier DASINI

Slide 3

Slide 3 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 3 MySQL – Status Quo 11/2022 Agenda 1 2 3 MySQL 8 - Pre- COVID MySQL in the last 2 years ... Q & A 5 4 MySQL HeatWave Databases Service(s)

Slide 4

Slide 4 text

MySQL 8.0 – Status Quo 11/2022 Copyright © 2022, Oracle and/or its affiliates

Slide 5

Slide 5 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 5 • First (internal) release May 1995 (MySQL AB Sweden) • MySQL AB was acquired by Sun Microsystems in 2008 • Sun was acquired by Oracle in 2010 • MySQL is a Global Business Unit MySQL ‘Status Quo’ Summer 2022 MySQL ‘Status Quo’ Summer 2022 MySQL – A short review 2022

Slide 6

Slide 6 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 6 The 10 last years of MySQL development • Refactoring • Modularizing o Adding interfaces o Adding functionality as plugins o Remove functionality from core, e.g. Query cache • Transactional storage engines (InnoDB) • UTF8 • Modernizing the tool chain • and much more... https://archive.fosdem.org/2020/schedule/event/mysql8/ https://archive.fosdem.org/2020/schedule/event/mysql8/

Slide 7

Slide 7 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 7 Customers are changing too… …

Slide 8

Slide 8 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 8 The MySQL world - The view from the moon… MySQL Commercial/Enterprise MySQL Community + MySQL Enterprise Backup MySQL Enterprise Monitor MySQL Enterprise Authentication MySQL Enterprise Audit MySQL Enterprise TDE MySQL Enterprise Masking MySQL Enterprise Firewall Support / Consultative Support … MySQL Cluster CGE MySQL Cluster NDB + MySQL Enterprise + MySQL Cluster Manager 8 MySQL Community MySQL Server MySQL Client, Workbench MySQL Shell MySQL GR plugin & InnoDB Cluster & Router MySQL Operator MySQL Connector (C API, ODBC, Node.js, others) MySQL Support for MS VS Code (Preview) … MySQL Cluster NDB MySQL NDB Storage Engine MySQL NDB Operator MySQL Cloud Services MySQL HeatWave Databases Services (MDS) MySQL HeatWave (for Analytics) MySQL HeatWave ML MySQL HeatWave on AWS MySQL HeatWave on Azure MySQL HeatWave Lakehouse (Preview) https://survey.stackoverflow.co/2022/#technology MySQL 8.0.31, MySQL Cloud and MySQL HeatWave MySQL 8.0.31, MySQL Cloud and MySQL HeatWave

Slide 9

Slide 9 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 10 Critical Patch Updates, Security Alerts and Bulletins https://www.oracle.com/security-alerts/ https://www.oracle.com/security-alerts/ • Major MySQL Release o Every ~3 years • Minor Releases o Every Quarter/Oracle CPU (Critical Patch Updates Security Alerts and Bulletins) https://www.oracle.com/security-alerts/ • No large re-factoring, but contains new features (often as a Plugin) o Read our relase notes, pay extra attention to sections ”Deprecation and Removal Notes” & ” Functionality Added or Changed”

Slide 10

Slide 10 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 11 MySQL 8.0 since 8.0.11 GA (04/18) – Continuous evolution • 8.0.12 07/18 Instant Add Columns, Query Rewrite Plugin+ • 8.0.13 10/18 SQL Functional Indexes, Importing MongoDB Data • 8.0.14 01/19 Consistent Reads, Parallel read of index • 8.0.15 01/19 Bugs only • 8.0.16 04/19 CHECK constraints, Support of TLS 1.3 • 8.0.17 07/19 Provisioning by Cloning, Multi-valued indexes • 8.0.18 10/19 Hash join, MEB Page Tracking • 8.0.19 01/20 MySQL InnoDB ReplicaSet • 8.0.20 04/20 Binlog Compression • 8.0.21 07/20 MySQL Shell Logical Dump, SQL DDL ( create table as select) • 8.0.22 10/20 Write optimizations, Automatic Replication Failover • 8.0.23 01/21 Invisible Columns, Query Attributes • 8.0.24 04/21 P_S Memory instrumentation, MySQL Shell SQL Logging • 8.0.25 05/21 Bugs only • 8.0.26 07/21 Master/Slave vs. Source/Replica, Kerberos Authentication • 8.0.27 10/21 InnoDB ClusterSet / DR Aware Clustering • 8.0.28 01/22 ALTER TABLE … RENAME COLUMN ALGORITHM=INSTANT; global/session limit for memory allocation • 8.0.29 04/22 ALTER TABLE … DROP COLUMN ALGORITHM=INSTANT • 8.0.30 07/22 Automatic invisable primary keys • 8.0.31 10/22 New Threadpool, Intersect and Except • 8.0.32 01/23 … https://dev.mysql.com/blog-archive/ (New Link) https://dev.mysql.com/doc/relnotes/mysql/8.0/en/ Some examples... Some examples...

Slide 11

Slide 11 text

MySQL - Pre- COVID Copyright © 2022, Oracle and/or its affiliates

Slide 12

Slide 12 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 13 MySQL Innovation: 5.7 → 8.0 - 3x Better Performance - Replication Enhancements - Optimizer Cost Model - JSON Support - Improved Security - Sys & Performance Schema - GIS 2015 MySQL 5.7 2017 MySQL InnoDB Cluster - MySQL Router - MySQL Shell 2018 MySQL 8.0 - 2x Better Perfromance - Data Dictionary - Advanced SQL - Utf8mb4 & Unicode - Document Store - MySQL X Protocol 2016 MySQL 5.7 GR Plugin - MySQL Group Replication - MySQL X-Protocol

Slide 13

Slide 13 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 14 MySQL 8.0 (2018) • 4+ years in Development (Oct. 2014) • ~400 WL when GAed (April 2018 https://dev.mysql.com/worklog/) • 5000+ Bugs fixed • 500 new tests

Slide 14

Slide 14 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 15 MySQL embraces Cloud Native https://dev.mysql.com/doc/refman/8.0/en/docker-mysql-getting-started.html MySQL 8 (Pre Covid) MySQL 8 (Pre Covid) • MySQL is easy to run in containers o Oracle MySQL Community Edition image o Oracle MySQL Enterprise Edition image o Docker community image • Lots of new features in MySQL 8.0 o set persist, restart, performance_schema.error_log • Support for DNS SRV (since MySQL 8.0.18+) o MySQL Connector support for DNS SRV (RFC 2782) o DNS request for service results in list of results o JDBC, .NET, ODBC, NodeJS, Connector/C, Python… o https://dev.mysql.com/doc/refman/8.0/en/connecting-using-dns-srv.html

Slide 15

Slide 15 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 16 MySQL Group Replication + Router + Shell = InnoDB Cluster 2014 - MySQL InnoDB Cluster • MySQL Group Replication: Automatic membership changes, network partition handling, consistency... • MySQL Shell Configuring, Adding, Removing members • MySQL Router to route application traffic • InnoDB CLONE to automatically provision members, fully integrated in InnoDB • RPO = 0 • RTO = seconds MySQL 8 (Pre Covid) MySQL 8 (Pre Covid)

Slide 16

Slide 16 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 17 MySQL InnoDB Cluster MySQL 8 (Pre Covid) MySQL 8 (Pre Covid) • MySQL InnoDB Cluster – Consistent reads (since 8.0.14) o New options: Sync Before Execution, Sync After Execution, Sync Before Primary Fail-over • MySQL Clone Plugin (since 8.0.17) o Clone remote and local data o Deploy new Secondaries by cloning • Binlog compression (since 8.0.20) o Implements binary log compression (ZSTD) for transaction compression o Save disk space (binlog size during runtime and for backup) • InnoDB Cluster support for “create table as select” (since 8.0.21) o No limitation for InnoDB Cluster anymore…

Slide 17

Slide 17 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 18 MySQL InnoDB ReplicaSet MySQL 8 (Pre Covid) MySQL 8 (Pre Covid) • Introduced in 8.0.20, think “asynchronous Replication” o Asynchronous Replication Architecture o RPO = ! 0 / RTO = minutes  Read Scaleout  Simple Replication architecture • Operations based on the idea of MySQL InnoDB Cluster o MySQL Shell Configuring, Adding, Removing members o CLONE Plugin used to automatically provision members, o Fully integrated MySQL Router to route application traffic

Slide 18

Slide 18 text

MySQL in the last 2 years … Copyright © 2022, Oracle and/or its affiliates Even more features...

Slide 19

Slide 19 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 20 Invisible column MySQL in the last 2 years … MySQL in the last 2 years … • Invisible Columns (since 8.0.23) o Hidden to queries, but can be accessed explicitly by naming the column names explicitly mysql> CREATE TABLE t1 (col1 INT, col2 INT INVISIBLE); mysql> INSERT INTO t1 (col1, col2) VALUES(1, 2), (3, 4); mysql> SELECT * FROM t1; +------+ | col1| +------+ | 1 | | 3 | +------+ mysql> SELECT col1, col2 FROM t1; +------+------+ | col1 | col2 | +------+------+ | 1 | 2 | | 3 | 4 | +------+------+

Slide 20

Slide 20 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 21 Invisible column & Primary Key – Generated Invisible Primary Keys (GIPK) MySQL in the last 2 years … MySQL in the last 2 years … • The MySQL server can now automatically adds a generated invisible primary key (GIPK) to an InnoDB table that is created without an explicit primary key (since 8.0.30) • GIPK mode is controlled by the sql_generate_invisible_primary_key server system variable • GIPK mode, a primary key is added to a table by the server, the column and key name is always my_row_id • Good if you planned to use MySQL Replication (ReplicaSet) or MySQL innoDB Cluster

Slide 21

Slide 21 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 22 Indexing & Primary Key problem MySQL in the last 2 years … MySQL in the last 2 years … • Indexes can now be built simultaneously instead of serially (since 8.0.27) o innodb_ddl_threads / innod_ddl_buffer_size / innodb_parallel_read_threads o Possibility to build multiple indexes for a table in the same alter statement in parallel • Primary Key (PK) problem o PK are required for good performance and are mandated for MySQL InnoDB Cluster o Reality is that lots of applications/users don’t create PKs o …and they are not allowed to create one • Solutions o You can force usage of PK with sql_require_primary_key=on (since 8.0.13) o You can use invisible columns and add a primary key • How to finding tables without PKs: SELECT tables.table_schema, tables.table_name, tables.engine FROM information_schema.tables LEFT JOIN (SELECT table_schema, table_name FROM information_schema.statistics GROUP BY table_schema, table_name, index_name HAVING SUM(CASE WHEN non_unique = 0 AND nullable != 'YES' then 1 else 0 end ) = count(*) ) puks ON tables.table_schema = puks.table_schema AND tables.table_name = puks.table_name WHERE puks.table_name IS null AND tables.table_type = 'BASE TABLE' AND Engine='InnoDB';

Slide 22

Slide 22 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 23 • Supports dump and load of instances, schemas and tables o Parallel loading of tables or table chunks o Progress state tracking o Resume and reset capability o Can add invisible columns with primary keys to tables o Splits larger tables in smaller chunks (reads 2GB/s+) o Loads chunks in parallel (writes 200MB/s+) • Support for native storage in OCI Object Storage • Recommended tool to migrate data to MySQL Database Services • Commands o util.dumpInstance() dump an entire database instance, including users o util.dumpSchemas() dump a set of schemas o util.dumpTables() dump a set of schemas o util.loadDump() load a dump into a target database https://dev.mysql.com/blog-archive/mysql-shell-dump-load-part-2-benchmarks/ MySQL 8.0 Shell: Load & Dump utilities MySQL in the last 2 years … MySQL in the last 2 years …

Slide 23

Slide 23 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 24 MySQL Shell Debugging and Diagnostics Utilities • Enable you to analyze the performance of your servers (5.7+) and generate diagnostics reports on overall health, performance under load, and individual queries o Generates files in both TSV and YAML format • Standalone servers, members of replication topologies, InnoDB Clusters o The topology is detected automatically and diagnostics are generated for that topology • The diagnostic report is generated as a zip file to either the local directory or a specified path MySQL JS> util.debug.collectDiagnostics() util.debug.slowQueryDiagnostics() util.debug.collectHighLoadDiagnostics() MySQL in the last 2 years … MySQL in the last 2 years …

Slide 24

Slide 24 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 25 • MySQL Shell integrated into Visual Studio Code (still preview mode) • Visual Studio Code is the mostpopular IDE with developers https://marketplace.visualstudio.com/items?itemName=Oracle.mysql-shell-for-vs-code MySQL Shell for VS Code MySQL in the last 2 years … MySQL in the last 2 years …

Slide 25

Slide 25 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 26 MySQL InnoDB ClusterSet MySQL in the last 2 years … MySQL in the last 2 years … One or more replica(s) attached to a primary MySQL InnoDB Cluster (since 8.0.27)

Slide 26

Slide 26 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 27 MySQL InnoDB ClusterSet .High Availability (Failure Within a Region) • RPO = 0 • RTO = seconds (automatic failover) Disaster Recovery (Region Failure) • RPO != 0 • RTO = minutes or more (manual failover) • No write performance impact Features • Easy to use • Familiar interface and usability mysqlsh, CLONE, ... • Add/remove nodes/clusters online • Router integration, no need to reconfigure application if the topology changes MySQL in the last 2 years … MySQL in the last 2 years …

Slide 27

Slide 27 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 28 • Our wording has changed since 8.0.26 (still ongoing) • We kept the long task of removing offensive words in our code (commands, tables, documentation...) • Master/Slave → Source/Replica, Whitelist/Blacklist → Allowlists/Blocklist • Don‘t get confused about „depreciations“ warnings, MySQL Replication is still supported Replication: Master/Slave is now Source/Replica MySQL in the last 2 years … MySQL in the last 2 years …

Slide 28

Slide 28 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 29 New authentication methods since 8.0.27 MySQL in the last 2 years … MySQL in the last 2 years … • MySQL Enterprise Edition extend Community Authentication and provides ready to use external authentication modules to easily integrate existing security o Supports Linux PAM, Windows Active Directory, native LDAP… • MySQL 8.0 now support o Kerberos  Authentication using Kerberos requires a KDC server  Applications and MySQL servers are able to mutually authenticate users and MySQL services o FIDO (Fast IDentity Online)  Enables authentication to MySQL Server using devices such as smart cards, security keys, and biometric readers  Because authentication can occur other than by providing a password, FIDO enables password less authentication  Device authentication is often used in conjunction with password authentication

Slide 29

Slide 29 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 30 Multifactor Authentication (MFA) since 8.0.27 MySQL in the last 2 years … MySQL in the last 2 years … • New system variable – authentication_policy o Controls how many authentication factors can be used and types of authentication permitted for each factor • Specify MFA using CREATE USER and ALTER USER o Add/Modify/Drop authentication methods for new/existing accounts o New authentication factors stored in mysql.user table in USER_ATTRIBUTES column • Accounts can now have up to three authentication values o Client programs have now --password1, --password2, and --password3 options

Slide 30

Slide 30 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 31 Disabling InnoDB Redo Log MySQL in the last 2 years … MySQL in the last 2 years … • Support for Enabling/Disabling (dynamically) InnoDB REDO Log (since 8.0.22 ) • Use case – Loading initial data very fast o Disable redo logging – Load data - Enable redo logging • But: Do not disable REDO logging on a production system (no crash recovery!)

Slide 31

Slide 31 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 32 New InnoDB Redo Log Architecture MySQL in the last 2 years … MySQL in the last 2 years … • Since MySQL 8.0.30 it's possible to dynamically resize the InnoDB • Overview of the changes: o Redo logs are now on a dedicated directory: #innodb_redo o 32 files (innodb_redo_log_capacity / 32) o innodb_log_files_in_group and innodb_log_files_size are now deprecated (ignored) • Calculating the optimal size (during your peak): o Rule of thumb is to make the Redo Logs big enough to hold at most 1h of log o Get an estimation of the required amount for the Redo Log (a single line): SELECT VARIABLE_VALUE FROM performance_schema.global_status WHERE VARIABLE_NAME='Innodb_redo_log_current_lsn’ INTO @a; SELECT SLEEP(60) INTO @garb; SELECT VARIABLE_VALUE FROM performance_schema.global_status WHERE VARIABLE_NAME='Innodb_redo_log_current_lsn’ INTO @b; SELECT ROUND(ABS(@a - @b)/1024/1024,2) AS MB_per_min, ROUND(ABS(@a - @b)/1024/1024*60,2) AS MB_per_hour; https://lefred.be/content/dynamic-innodb-redo-log/

Slide 32

Slide 32 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 34 MySQL Operator for Kubernetes MySQL in the last 2 years … MySQL in the last 2 years … • The MySQL Operator for Kubernetes (since 8.0.29) is designed to operate a MySQL InnoDB Cluster in Kubernetes • Automated deployment and management of MySQL Server & MySQL Routers • Self-healing • Backup & Restore • Rolling upgrades with minimal downtime • Read Scaling o Add/remove members as needed o Configurable consistency levels • Helm support • Developed and supported by the MySQL Team

Slide 33

Slide 33 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 36 Highly Available: Automatic Failover • Primary members are automatically elected • Automatic network partitioning handling Ease of Operation • Backup / Restore • Scale up and down • Version upgrade • Helm support Consistency: No Data Loss (RPO=0) • In event of failure of primary member • Split brain prevention (quorum) Read Scaling • Add/remove members as needed • Replication Lag handling with Flow Control • Configurable consistency levels • Eventual • Full consistency (no stale reads) MySQL Operator for Kubernetes Summary MySQL in the last 2 years … MySQL in the last 2 years … Published on GitHub: https://github.com/mysql/mysql-operator

Slide 34

Slide 34 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 37 MySQL Enterprise Firewall: Group and Account profiles • Block SQL Injection Attacks • Now firewall can use o Account profiles: Allowlist applies only to a single account (deprecated) o Group profiles: Allowlist applies when the session account matches any account that is a member of the group • Group profiles give you more flexibility o A group with a single account is equivalent to an account profile o Same behavior and common commands as for account profiles • New privileges: FIREWALL_ADMIN, FIREWALL_EXEMPT, FIREWALL_USER, EXECUTE o FIREWALL_ADMIN is not automatically assigned to root ! MySQL in the last 2 years … MySQL in the last 2 years … Select * from employee where id=22 Select * from employee where id=22 or 1=1 or 1=1 Block ✖ Allow ✔ AllowList Applications Detect & Alert Intrusion Detection Rule

Slide 35

Slide 35 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 38 • Replication from non GTID enabled replica (8.0.23) • Automatic connection failover for async replication for Group Replication (8.0.23) • Alternative UUID for Group Replication's generated transactions for view changes (8.0.26) • Multi-threaded replication enabled by default (8.0.27) • Group Communication engine (GCS) can now use a single leader when using single primary mode (to improve performance) • Asynchronous Replication Channel automatically follows the Primary (8.0.27) • Support of native MySQL Server's connection security for Group Replication (8.0.27) • It's possible to enable Paxos single leader for Group Replication (8.0.27) • New system variable to control automatic purging of binary logs: • binlog_expire_logs_auto_purge (8.0.29) • Group Replication memory usage is now instrumented in Performance_Schema (8.0.30) • Explain Analyze • ALTER TABLE ... DROP and RENAME COLUMN ALGORITHM=INSTANT (8.0.29/8.0.30) • MySQL Shell configures cluster with MySQL Protocol instead of xcom (8.0.30) • New design MySQL Threadpool Plugin (8.0.31) • Audit: Log Rotation (8.0.31) • … far more Lots of new features since 8.0.22 which we will not discuss…(sorry) MySQL in the last 2 years … MySQL in the last 2 years …

Slide 36

Slide 36 text

MySQL HeatWave Database Service Copyright © 2022, Oracle and/or its affiliates The MySQL Cloud Service 100% developed, managed, & supported by the MySQL team

Slide 37

Slide 37 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 40 Santiago San Jose Toronto Phoenix Chicago Montreal Ashburn Sao Paulo London Milan Saudi Arabia 2 Jeddah Amsterdam Stockholm Zurich Johannesburg Israel 2 Abu Dhabi Dubai Mumbai Hyderabad Singapore Seoul Chuncheon Osaka Tokyo Melbourne Sydney Vinhedo Frankfurt Newport November 2022 40 regions including Paris & Marseille; 9 more planned 12 Azure Interconnect Regions Microsoft Interconnect Azure Marseille Jerusalem Paris Madrid Chile 2 Colombia Queretaro Germany Sovereign Planned Spain Mexico 2 Serbia Commercial Commercial Planned Government Oracle Cloud Infrastructure Global Locations MySQL HeatWave Databases Service(s) is part of all of them MySQL HeatWave Databases Service(s) is part of all of them And also Cloud @Customer

Slide 38

Slide 38 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 41 • Up-to-Date MySQL with the latest security fixes (today 8.0.31) • All MySQL 8 minor releases from 2022 are available • Starts at 43$/month [1 OCPU/AMD E3, 8GB, 50GB] o Shapes up to 64 OCPU/1TB AMD - E2, E3, E4 and Intel X7/X9/X9 Optimized o From 50GB up to 128TB o Changing shapes and disks is supported • MySQL High Availability - Recover Point Objective (RPO) = ZERO (Zero Data loss !!!) • SLA (99.99% for 3-AD regions / 99.95% single-AD regions / 99.9% for Standalone DB Systems) • Point in Time Recovery (PITR) available • MySQL Channels (Replication) with template filters available o Helps configure replication from AWS RDS/Aurora, Azure, Google Cloud, and AliCloud • Managed Read-Replicas o Increase capacity for read-intensive workloads • Automatic invisible primary keys generation MySQL (HeatWave) Database Service (MDS) Changes in 2022 Changes in 2022

Slide 39

Slide 39 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 42 • Support for single HeatWave Backends o Starting with 528$/month (2x Instances for ~800GB MySQL data) • Data Compression by default • Data persistence during reboot for HeatWave Backend • Security build-in/Data always encrypted • Real-Time Elastic Resizing • Single HeatWave Backend • Build in Machine Learning (free of charge) • MySQL HeatWave Lakehouse (Beta) MySQL HeatWave Changes in 2022 Changes in 2022

Slide 40

Slide 40 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 43 MySQL HeatWave – One database for OLTP, OLAP, ML Valorizing your data has never been so easy! Valorizing your data has never been so easy!

Slide 41

Slide 41 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 44 • MySQL HeatWave is available in 40+ Oracle Cloud Regions • … but also on Oracle Cloud@Customer • … and since October 2022 also in Amazon Web Services & Microsoft Azure • Please register for our upcoming Webinar or run a free trial https://www.oracle.com/mysql/free/ MySQL HeatWave - Ready for the distributed cloud Available in public clouds and in your data center Available in public clouds and in your data center

Slide 42

Slide 42 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 45 • MySQL Community and Enterprise Edition o MySQL 8.0.32 – CPU January 2023 o Preview MySQL Shell for VS Code • MySQL HeatWave Database Services o Stay tunes!!! • MySQL HeatWave o MySQL Lakehouse o … What’s next? Coming soon … Coming soon …

Slide 43

Slide 43 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 47 Follow us on Social Media

Slide 44

Slide 44 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 48 Merci! Q&R Olivier Dasini MySQL Cloud Principal Solutions Architect EMEA olivier.dasini@oracle.com Blogs : www.dasini.net/blog/en : www.dasini.net/blog/fr Linkedin: www.linkedin.com/in/olivier-dasini Twitter : @freshdaz

Slide 45

Slide 45 text

Get started with MySQL HeatWave For Free Today Get $300 in credits and try MySQL Database Service free for 30 days Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 49 Learn more about MySQL HeatWave https://www.oracle.com/mysql/ www.oracle.com/mysql/free/

Slide 46

Slide 46 text

• Try Always Free cloud services and get a 30-day trial • 30-day Free Trial – US$300 in free credits – Access to a wide range of Oracle Cloud services for 30 days, including MySQL Database Service, etc… • Always Free – Limited list of services you can use for an unlimited time – MDS not included – https://www.oracle.com/cloud/free/#always-free 50 Copyright © 2022, Oracle and/or its affiliates. All rights reserved. Oracle Cloud Free Tier https://www.oracle.com/cloud/free/ https://www.oracle.com/cloud/free/

Slide 47

Slide 47 text

No content

Slide 48

Slide 48 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 52 Discovering MySQL Database Service ● Discovering MySQL Database Service – Episode 1 – Introduction – http://dasini.net/blog/2021/08/03/discovering-mysql-database-service-episode-1-introduction/ ● Discovering MySQL Database Service – Episode 2 – Create a compartment – http://dasini.net/blog/2021/08/10/discovering-mysql-database-service-episode-2-create-a-compartment/ ● Discovering MySQL Database Service – Episode 3 – Create a Virtual Cloud Network – http://dasini.net/blog/2021/08/17/discovering-mysql-database-service-episode-3-create-a-virtual-cloud-network/ ● Discovering MySQL Database Service – Episode 4 – Dump your MySQL data into an Object Storage bucket – http://dasini.net/blog/2021/08/24/discovering-mysql-database-service-episode-4-dump-your-mysql-data-into-an-object-storage-bucket/ ● Discovering MySQL Database Service – Episode 5 – Create a MySQL DB system from a MySQL Shell dump – http://dasini.net/blog/2021/08/31/discovering-mysql-database-service-episode-5-create-a-mysql-db-system-from-a-mysql-shell-dump/ ● Discovering MySQL Database Service – Episode 6 – Update the Private Subnet Security List – http://dasini.net/blog/2021/09/07/discovering-mysql-database-service-episode-6-update-the-private-subnet-security-list/ ● Discovering MySQL Database Service – Episode 7 – Use a Bastion SSH port forwarding session – http://dasini.net/blog/2021/09/14/discovering-mysql-database-service-episode-7-use-a-bastion-ssh-port-forwarding-session/ ● Discovering MySQL Database Service – Episode 8 – Connect to MySQL Database Service Using MySQL Shell – http://dasini.net/blog/2021/09/21/discovering-mysql-database-service-episode-8-connect-to-mysql-database-service-using-mysql-shell/ ● Discovering MySQL Database Service – Episode 9 – Connect to MySQL Database Service Using MySQL Workbench – http://dasini.net/blog/2021/09/28/discovering-mysql-database-service-episode-9-connect-to-mysql-database-service-using-mysql-workbench/ ● Discovering MySQL Database Service – Episode 10 – Connect to MySQL Database Service Using OCI Cloud Shell – http://dasini.net/blog/2021/10/05/discovering-mysql-database-service-episode-10-connect-to-mysql-database-service-using-oci-cloud-shell/ ● ... Tutorials where I show you, step by step, how to use MDS and some other OCI services Tutorials where I show you, step by step, how to use MDS and some other OCI services http://dasini.net/blog/en

Slide 49

Slide 49 text

Copyright © 2022, Oracle and/or its affiliates Oracle Live Labs Self-paced learning MySQL HeatWave Live Labs 53

Slide 50

Slide 50 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 54 • The best MySQL releases ever, as widely acknowledged by the MySQL Community • Commitment to open source, with continued code contributions (as opposed to AWS, who forked MySQL to create the closed source Aurora) • A constant stream of innovation, with new products and services—including MySQL HeatWave—helping users and customers tackle the new challenges that they are facing • Unparalleled MySQL Database expertise from Oracle, the leading database company Oracle is committed to MySQL ’s success

Slide 51

Slide 51 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 55 • Modernize transactional applications using Amazon Aurora, RDS for MySQL, Azure Database for MySQL, Google’s Cloud SQL for MySQL with supporting analytical workloads from Amazon Redshift, Snowflake, Azure Synapse, and Google BigQuery • Modernize mixed workload applications using Amazon Aurora, RDS for MySQL, Azure Database for MySQL, GCP Cloud SQL for MySQL (initially without separate analytics database) • Modernize mixed workload applications using MySQL either on-premises or in the cloud • Rely on MySQL HeatWave for in-database machine learning to avoid using a separate machine learning service with data coming from MySQL, MySQL-based services, or analytics databases Modernizing applications with MySQL HeatWave Key use cases Key use cases

Slide 52

Slide 52 text

Copyright © 2022, Oracle and/or its affiliates. All rights reserved. 56 Performance of MySQL HeatWave on AWS *Benchmark queries are derived from the TPC-H benchmarks, but results are not comparable to published TPC-H benchmark results since these do not comply with the TPC-H specifications. 20x 20x faster than Redshift, faster than Redshift, 16x 16x faster than Snowflake, faster than Snowflake, 16x 16x faster than BigQuery faster than BigQuery