SlideShare a Scribd company logo
1 of 32
Download to read offline
MySQL 8.0.18
New Features
Summary
Olivier DASINI
MySQL Principal Solutions Architect
Blog: http://dasini.net/blog/en/
Twitter: @freshdaz
http://dasini.net/blog/en/
Me, Myself & I
➢
MySQL Geek
✔ Addicted to MySQL for 15+ years!
✔ Playing with databases for 20+ years
➢
MySQL Writer, Blogger and Speaker
✔ Also former : DBA, Consultant, Architect, Trainer, ...
➢
MySQL Principal Solutions Architect EMEA at Oracle
➢
Stay tuned! :
✔ Twitter : @freshdaz
✔ Blog : http://dasini.net/blog
Olivier DASINI
http://dasini.net/blog/en/
The following is just a summary of the MySQL 8.0.18 new features.
For a more thorough and exhaustive view please read the following :
➢
The MySQL 8.0.18 Maintenance Release is Generally Available
✔ https://mysqlserverteam.com/the-mysql-8-0-18-maintenance-release-is-generally-available/
➢
Changes in MySQL 8.0.18 (2019-10-14, General Availability)
✔ https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-18.html
➢
Changes in MySQL Shell 8.0.18 (2019-10-14, General Availability)
✔ https://dev.mysql.com/doc/relnotes/mysql-shell/8.0/en/news-8-0-18.html
➢
Changes in MySQL Router 8.0.18 (2019-10-14, General Availability)
✔ https://dev.mysql.com/doc/relnotes/mysql-router/en/news-8-0-18.html
And also the MySQL team Blogs :
➢
https://mysqlserverteam.com/
➢
https://mysqlhighavailability.com/
➢
https://mysqlrelease.com/
➢
http://insidemysql.com/
Disclaimer
http://dasini.net/blog/en/
The world's most popular open source database
http://dasini.net/blog/en/
Highlights
➢
Hash Join
➢
EXPLAIN ANALYZE
➢
Only OpenSSL
➢
Random Password
➢
MySQL Shell Enhancements
➢
MySQL Router Enhancements
➢
InnoDB Cluster Enhancements
➢
Group Replication Enhancements
➢
Replication Enhancements
➢
MySQL Enterprise New Features
➢
Thanks to the Contributors
5
http://dasini.net/blog/en/
Hash Join
http://dasini.net/blog/en/
Hash Join 1/2
➢
Implement hash join as a way of executing inner equi-joins in
MySQL
➢
Hash join does not need any index to execute
➢
In most cases more efficient than the current block-nested loop
algorithm
7
EXPLAIN FORMAT=TREE SELECT title FROM film INNER JOIN film_actor USING (last_update)G
*************************** 1. row ***************************
EXPLAIN:
-> Inner hash join (film_actor.last_update = film.last_update) (cost=546314.82
rows=546200)
-> Table scan on film_actor (cost=0.07 rows=5462)
-> Hash
-> Table scan on film (cost=103.00 rows=1000)
http://dasini.net/blog/en/
Hash Join 2/2
8
Resources
➢
Hash join in MySQL 8
✔ https://mysqlserverteam.com/hash-join-in-mysql-8/
➢
Hash Join Optimization
✔ https://dev.mysql.com/doc/refman/8.0/en/hash-joins.html
➢
MySQL 8.0.18 latest updates: Hash join and EXPLAIN ANALYZE
✔ https://www.slideshare.net/NorvaldRyeng/mysql-8018-latest-updates-hash-join-and-explain-analyze
➢
WL#2241 - Hash join
✔ https://dev.mysql.com/worklog/task/?id=2241
http://dasini.net/blog/en/
EXPLAIN ANALYZE
http://dasini.net/blog/en/
EXPLAIN ANALYZE 1/2
➢
Run the query and then produce EXPLAIN output with additional information
about how the optimizer estimates matched the actual execution
➢
Present the estimated execution cost, estimated number of returned rows, the
time to return first row, the time to return all rows (i.e. actual cost), the number of
rows returned and the number of loops
➢
The overall query execution is presented as a tree structure
10
EXPLAIN ANALYZE SELECT title FROM film INNER JOIN film_actor USING (last_update)G
************************************* 1. row *************************************
EXPLAIN:
-> Inner hash join (film_actor.last_update = film.last_update) (cost=546314.82
rows=546200) (actual time=9.444..9.444 rows=0 loops=1)
-> Table scan on film_actor (cost=0.07 rows=5462) (actual
time=0.042..3.338 rows=5462 loops=1)
-> Hash
-> Table scan on film (cost=103.00 rows=1000) (actual
time=0.121..1.229 rows=1000 loops=1)
http://dasini.net/blog/en/
EXPLAIN ANALYZE 2/2
11
Resources
➢
MySQL EXPLAIN ANALYZE
✔ https://mysqlserverteam.com/mysql-explain-analyze/
➢
MySQL 8.0.18 latest updates: Hash join and EXPLAIN ANALYZE
✔ https://www.slideshare.net/NorvaldRyeng/mysql-8018-latest-updates-hash-join-and-explain-analyze
➢
WL#4168 - Implement EXPLAIN ANALYZE
✔ https://dev.mysql.com/worklog/task/?id=4168
http://dasini.net/blog/en/
Only OpenSSL
http://dasini.net/blog/en/
Only OpenSSL
➢
All MySQL builds now use OpenSSL
➢
Remove support for wolfSSL and yaSSL from the MySQL codebase
➢
Moving forward, MySQL will only use OpenSSL as its SSL/TLS library
✔ We’re going to be building all of our binaries (commercial and community) for each
release (5.6, 5.7, 8.0) in the same identical way when it comes to SSL/TLS libraries
13
Resources
➢
MySQL is OpenSSL-only now !
✔ https://mysqlserverteam.com/mysql-is-openssl-only-now/
➢
WL#13290 - Remove wolfSSL support from 8.0 codebase.
✔ https://dev.mysql.com/worklog/task/?id=13290
➢
WL#13289 - Remove yaSSL support from 5.6/5.7 codebase
✔ https://dev.mysql.com/worklog/task/?id=13289
http://dasini.net/blog/en/
Random Password
http://dasini.net/blog/en/
Random Password 1/2
➢
Generate a strong random password
✔ Returned as a result set row to the client
➢
For CREATE USER / ALTER USER / SET PASSWORD statements
➢
Password length is controlled by the generated_random_password_length (20
characters by default)
15
SELECT @@generated_random_password_length;
+------------------------------------+
| @@generated_random_password_length |
+------------------------------------+
| 20 |
+------------------------------------+
CREATE USER 'daz'@'localhost' IDENTIFIED BY RANDOM PASSWORD;
+------+-----------+----------------------+
| user | host | generated password |
+------+-----------+----------------------+
| daz | localhost | f@-iJ>0Ba<62kR1UQ3r; |
+------+-----------+----------------------+
ALTER USER 'daz'@'localhost' IDENTIFIED BY RANDOM PASSWORD;
+------+-----------+----------------------+
| user | host | generated password |
+------+-----------+----------------------+
| daz | localhost | FFx;pyBP)/lyFkBa9yGy |
+------+-----------+----------------------+
SET PASSWORD FOR 'daz'@'localhost' TO RANDOM;
+------+-----------+----------------------+
| user | host | generated password |
+------+-----------+----------------------+
| daz | localhost | }cvqvQTfIbSajQZ4wrj& |
+------+-----------+----------------------+
http://dasini.net/blog/en/
Random Password 2/2
16
Resources
➢
MySQL Random Password Generation
✔ https://elephantdolphin.blogspot.com/2019/10/mysql-random-password-generation.html
➢
Random Password Generation
✔ https://dev.mysql.com/doc/refman/8.0/en/password-management.html#random-password-generation
➢
generated_random_password_length
✔ https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_generated_random_password_length
➢
WL#11772 - CREATE USER IDENTIFIED BY RANDOM PASSWORD
✔ https://dev.mysql.com/worklog/task/?id=11772
http://dasini.net/blog/en/
MySQL Shell Enhancements
http://dasini.net/blog/en/
MySQL Shell Enhancements
➢
Python 3 Migration
✔ Due to the coming EOL for Python 2.7 by end of this year, the Shell has been updated to use Python 3
✔ The minimum supported version is Python 3.4.3
➢
Built-in Thread Reports
✔ 2 new built-in reports, which provide information drawn from various sources including MySQL's
Performance Schema:
━
threads : lists the current threads in the connected MySQL server which belong to the user account that is used to
run the report
━
thread : provides detailed information about a specific thread in the connected MySQL server
✔ You can run the new reports using MySQL Shell's show and watch commands
➢
2 new control commands
✔ edit (e) : opens a command in the default system editor for editing
✔ system (!) : runs the operating system command that you specify as an argument to the command,
then displays the output from the command in MySQL Shell
18
Resources
➢
MySQL Shell 8.0.18 – What’s New?
✔ https://mysqlserverteam.com/mysql-shell-8-0-18-whats-new/
http://dasini.net/blog/en/
MySQL Router Enhancements
http://dasini.net/blog/en/
MySQL Router Enhancements
➢
Frontend for MySQL Routers keyring
✔ mysqlrouter_keyring is a new utility to manage the Router keyring
➢
Add timestamp precision to log
✔ Implement sub-second timestamp precision for the Router’s log files
20
Resources
➢
Changes in MySQL Router 8.0.18 (2019-10-14, General Availability)
✔ https://dev.mysql.com/doc/relnotes/mysql-router/en/news-8-0-18.html
➢
WL#12974 - Frontend for MySQL Routers keyring
✔ https://dev.mysql.com/worklog/task/?id=12974
➢
WL#11194 – Harness: Add optional timestamp precision to log
✔ https://dev.mysql.com/worklog/task/?id=11194
http://dasini.net/blog/en/
InnoDB Cluster Enhancements
http://dasini.net/blog/en/
InnoDB Cluster Enhancements
22
➢
Log SQL statements
✔ Provide information about all SQL statements executed by the AdminAPI
➢
Full IPv6 support
✔ If the target MySQL Server version is equal or higher to 8.0.14, IPv6 addresses can now be used
➢
Reset the cluster recovery accounts
✔ You can now reset the passwords for the internal recovery accounts created by InnoDB Cluster
━
e.g. To follow a custom password lifetime policy
✔ Applies only to the passwords created by InnoDB Cluster
➢
Replication lag
✔ Cluster’s status command now monitor the time between the most recent transaction being
committed and being applied to a cluster member
Resources
➢
MySQL InnoDB Cluster – What’s new in Shell AdminAPI 8.0.18 release
✔ https://mysqlserverteam.com/mysql-innodb-cluster-whats-new-in-shell-adminapi-8-0-18-release/
http://dasini.net/blog/en/
Group Replication Enhancements
http://dasini.net/blog/en/
Group Replication Enhancements
➢
OFFLINE_MODE
✔ New option available for the group_replication_exit_state_action system variable
✔ Close all connections and disallows new connections from users who do not have the
CONNECTION_ADMIN or SUPER privilege, on a member who left the group unintentionally
✔ Prevent updates like the default READ_ONLY exit action does, but also prevent stale reads
➢
TLS 1.3 support
✔ Secure communication using TLS 1.3 among all group members in a Group Replication cluster
24
Resources
➢
Automatic member fencing with OFFLINE_MODE in Group Replication
✔ https://mysqlhighavailability.com/automatic-member-fencing-with-offline_mode-in-group-replication/
➢
group_replication_exit_state_action
✔ https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_exit_state_action
➢
WL#12895 - Group Replication: Add OFFLINE_MODE to group_replication_exit_state_action
✔ https://dev.mysql.com/worklog/task/?id=12895
➢
Group Replication Secure Socket Layer (SSL) Support
✔ https://dev.mysql.com/doc/refman/8.0/en/group-replication-secure-socket-layer-support-ssl.html
➢
WL#12990 - Group Replication: TLS 1.3 support
✔ https://dev.mysql.com/worklog/task/?id=12990
http://dasini.net/blog/en/
Replication Enhancements
http://dasini.net/blog/en/
Replication Enhancements
➢
Replication with privilege checks
✔ Enable secure replication from an untrusted source to a trusted destination
✔ DBA can now define a user under which the replication applier threads will operate and therefore
do privilege checking
✔ PRIVILEGE_CHECKS_USER account helps secure a replication channel against the unauthorized
or accidental use of privileged or unwanted operations
26
Resources
➢
MySQL 8.0.18 Replication Enhancements
✔ https://mysqlhighavailability.com/mysql-8-0-18-replication-enhancements/
➢
Replication with restricted privileges
✔ https://mysqlhighavailability.com/replication-with-restricted-privileges/
➢
Privileges For The Replication PRIVILEGE_CHECKS_USER Account
✔ https://dev.mysql.com/doc/refman/8.0/en/replication-privilege-checks-account.html
➢
WL#12966 - Replication with privilege checks
✔ https://dev.mysql.com/worklog/task/?id=12966
http://dasini.net/blog/en/
MySQL Enterprise New Features
http://dasini.net/blog/en/
Enterprise New Features
➢
HashiCorp Vault Support
✔ MySQL Enterprise Edition now includes a keyring_hashicorp plugin that uses HashiCorp Vault as a
back end for keyring storage
➢
Incremental Backup supports Page Tracking
✔ mysqlbackup (MEB) supports creating incremental backups using the page tracking functionality of the
MySQL Server
✔ It looks for changed pages in the InnoDB data files that have been modified since the last backup and
then copies them
✔ In general, incremental backups using page tracking are faster than other kinds of incremental backups
28
Resources
➢
MySQL Keyring now speaks Hashicorp Vault
✔ https://mysqlserverteam.com/mysql-keyring-now-speaks-hashicorp-vault/
✔ https://mysqlserverteam.com/mysql-keyring-now-speaks-hashicorp-vault/2/
✔ https://mysqlserverteam.com/mysql-keyring-now-speaks-hashicorp-vault/3/
➢
Using the HashiCorp Vault Keyring Plugin
✔ https://dev.mysql.com/doc/refman/8.0/en/keyring-hashicorp-plugin.html
➢
Incremental Backup Using Page Tracking
✔ https://dev.mysql.com/doc/mysql-enterprise-backup/8.0/en/mysqlbackup.incremental.html#mysqlbackup.page-
tracking.incremental
http://dasini.net/blog/en/
Thanks for the Contributions
http://dasini.net/blog/en/
Thanks for the Contributions
Facebook
Gillian Gunson (from GitHub)
Przemysław Skibiński (from Percona)
Daniel Black (from IBM)
Satya Bodapati (from Percona)
30
If you have patches you would like to contribute you can do so from :
➢
MySQL’s GitHub repository : https://github.com/mysql
➢
Requires signing the Oracle Contributor Agreement :
https://www.oracle.com/technetwork/community/oca-486395.html
Details
➢
MySQL Server 8.0.18 Thanks for the Contributions
✔ https://mysql.wisborg.dk/2019/10/20/mysql-server-8-0-18-thanks-for-the-contributions/
http://dasini.net/blog/en/
The complete list of new features in MySQL 8.0
31
There are over 250 new features in MySQL 8.0...
https://mysqlserverteam.com/the-complete-list-of-new-features-in-mysql-8-0/
http://dasini.net/blog/en/
Thanks for using !

More Related Content

What's hot

MySQL 8.0.21 - New Features Summary
MySQL 8.0.21 - New Features SummaryMySQL 8.0.21 - New Features Summary
MySQL 8.0.21 - New Features SummaryOlivier DASINI
 
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 Database Service - 100% Developed, Managed and Supported by the MySQL Team
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL TeamMySQL Database Service - 100% Developed, Managed and Supported by the MySQL Team
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL TeamOlivier DASINI
 
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0Olivier DASINI
 
MySQL Document Store for Modern Applications
MySQL Document Store for Modern ApplicationsMySQL Document Store for Modern Applications
MySQL Document Store for Modern ApplicationsOlivier DASINI
 
MySQL Performance Best Practices
MySQL Performance Best PracticesMySQL Performance Best Practices
MySQL Performance Best PracticesOlivier DASINI
 
MySQL High Availability Solutions - Avoid loss of service by reducing the r...
MySQL High Availability Solutions  -  Avoid loss of service by reducing the r...MySQL High Availability Solutions  -  Avoid loss of service by reducing the r...
MySQL High Availability Solutions - Avoid loss of service by reducing the r...Olivier DASINI
 
What's New MySQL 8.0?
What's New MySQL 8.0?What's New MySQL 8.0?
What's New MySQL 8.0?OracleMySQL
 
Case Study: MySQL migration from latin1 to UTF-8
Case Study: MySQL migration from latin1 to UTF-8Case Study: MySQL migration from latin1 to UTF-8
Case Study: MySQL migration from latin1 to UTF-8Olivier DASINI
 
MySQL Cloud Service Deep Dive
MySQL Cloud Service Deep DiveMySQL Cloud Service Deep Dive
MySQL Cloud Service Deep DiveMorgan Tocker
 
MySQL Day Paris 2016 - State Of The Dolphin
MySQL Day Paris 2016 - State Of The DolphinMySQL Day Paris 2016 - State Of The Dolphin
MySQL Day Paris 2016 - State Of The DolphinOlivier DASINI
 
My sql 5.7-upcoming-changes-v2
My sql 5.7-upcoming-changes-v2My sql 5.7-upcoming-changes-v2
My sql 5.7-upcoming-changes-v2Morgan Tocker
 
Upgrading to MySQL 8.0 webinar slides November 27th, 2019
Upgrading to MySQL 8.0 webinar slides November 27th, 2019Upgrading to MySQL 8.0 webinar slides November 27th, 2019
Upgrading to MySQL 8.0 webinar slides November 27th, 2019Dave Stokes
 
Ohio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQLOhio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQLDave Stokes
 
Upgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtimeUpgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtimeOlivier DASINI
 
MySQL for Software-as-a-Service (SaaS)
MySQL for Software-as-a-Service (SaaS)MySQL for Software-as-a-Service (SaaS)
MySQL for Software-as-a-Service (SaaS)Mario Beck
 
MySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats newMySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats newMark Swarbrick
 
Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQLTed Wennmark
 

What's hot (20)

MySQL 8.0.21 - New Features Summary
MySQL 8.0.21 - New Features SummaryMySQL 8.0.21 - New Features Summary
MySQL 8.0.21 - New Features Summary
 
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
 
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL Team
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL TeamMySQL Database Service - 100% Developed, Managed and Supported by the MySQL Team
MySQL Database Service - 100% Developed, Managed and Supported by the MySQL Team
 
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
MySQL Day Paris 2018 - Upgrade from MySQL 5.7 to MySQL 8.0
 
MySQL Document Store for Modern Applications
MySQL Document Store for Modern ApplicationsMySQL Document Store for Modern Applications
MySQL Document Store for Modern Applications
 
MySQL Performance Best Practices
MySQL Performance Best PracticesMySQL Performance Best Practices
MySQL Performance Best Practices
 
MySQL High Availability Solutions - Avoid loss of service by reducing the r...
MySQL High Availability Solutions  -  Avoid loss of service by reducing the r...MySQL High Availability Solutions  -  Avoid loss of service by reducing the r...
MySQL High Availability Solutions - Avoid loss of service by reducing the r...
 
What's New MySQL 8.0?
What's New MySQL 8.0?What's New MySQL 8.0?
What's New MySQL 8.0?
 
Case Study: MySQL migration from latin1 to UTF-8
Case Study: MySQL migration from latin1 to UTF-8Case Study: MySQL migration from latin1 to UTF-8
Case Study: MySQL migration from latin1 to UTF-8
 
MySQL Cloud Service Deep Dive
MySQL Cloud Service Deep DiveMySQL Cloud Service Deep Dive
MySQL Cloud Service Deep Dive
 
MySQL Day Paris 2016 - State Of The Dolphin
MySQL Day Paris 2016 - State Of The DolphinMySQL Day Paris 2016 - State Of The Dolphin
MySQL Day Paris 2016 - State Of The Dolphin
 
My sql 5.7-upcoming-changes-v2
My sql 5.7-upcoming-changes-v2My sql 5.7-upcoming-changes-v2
My sql 5.7-upcoming-changes-v2
 
Upgrading to MySQL 8.0 webinar slides November 27th, 2019
Upgrading to MySQL 8.0 webinar slides November 27th, 2019Upgrading to MySQL 8.0 webinar slides November 27th, 2019
Upgrading to MySQL 8.0 webinar slides November 27th, 2019
 
MySQL Security
MySQL SecurityMySQL Security
MySQL Security
 
Ohio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQLOhio Linux Fest -- MySQL's NoSQL
Ohio Linux Fest -- MySQL's NoSQL
 
Upgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtimeUpgrade to MySQL 5.6 without downtime
Upgrade to MySQL 5.6 without downtime
 
MySQL for Software-as-a-Service (SaaS)
MySQL for Software-as-a-Service (SaaS)MySQL for Software-as-a-Service (SaaS)
MySQL for Software-as-a-Service (SaaS)
 
MySQL Monitoring 101
MySQL Monitoring 101MySQL Monitoring 101
MySQL Monitoring 101
 
MySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats newMySQL Tech Tour 2015 - 5.7 Whats new
MySQL Tech Tour 2015 - 5.7 Whats new
 
Introduction to MySQL
Introduction to MySQLIntroduction to MySQL
Introduction to MySQL
 

Similar to MySQL 8.0.18 - New Features Summary

Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012Roland Bouman
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012Roland Bouman
 
DB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQLDB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQLMarcelo Altmann
 
Introduction to Vitess on Kubernetes for MySQL - Webinar
Introduction to Vitess on Kubernetes for MySQL -  WebinarIntroduction to Vitess on Kubernetes for MySQL -  Webinar
Introduction to Vitess on Kubernetes for MySQL - WebinarAlkin Tezuysal
 
Drizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free MigrationDrizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free MigrationAndrew Hutchings
 
MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527Saewoong Lee
 
OSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert VanderkelenOSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert VanderkelenNETWAYS
 
SharePoint 2010 Virtualization - SharePoint Saturday L.A.
SharePoint 2010 Virtualization - SharePoint Saturday L.A.SharePoint 2010 Virtualization - SharePoint Saturday L.A.
SharePoint 2010 Virtualization - SharePoint Saturday L.A.Michael Noel
 
SharePoint 2010 Virtualization - Norway SharePoint User Group
SharePoint 2010 Virtualization - Norway SharePoint User GroupSharePoint 2010 Virtualization - Norway SharePoint User Group
SharePoint 2010 Virtualization - Norway SharePoint User GroupMichael Noel
 
Performance schema and sys schema
Performance schema and sys schemaPerformance schema and sys schema
Performance schema and sys schemaMark Leith
 
TrinityCore server install guide
TrinityCore server install guideTrinityCore server install guide
TrinityCore server install guideSeungmin Shin
 
Playing with the CONNECT storage engine
Playing with the CONNECT storage enginePlaying with the CONNECT storage engine
Playing with the CONNECT storage engineFederico Razzoli
 
Confoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesConfoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesDave Stokes
 
Deploying Percona XtraDB Cluster in Openshift
Deploying Percona XtraDB Cluster in OpenshiftDeploying Percona XtraDB Cluster in Openshift
Deploying Percona XtraDB Cluster in OpenshiftAlexander Rubin
 

Similar to MySQL 8.0.18 - New Features Summary (20)

Curso de MySQL 5.7
Curso de MySQL 5.7Curso de MySQL 5.7
Curso de MySQL 5.7
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012
 
Common schema my sql uc 2012
Common schema   my sql uc 2012Common schema   my sql uc 2012
Common schema my sql uc 2012
 
Operation outbreak
Operation outbreakOperation outbreak
Operation outbreak
 
DB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQLDB Floripa - ProxySQL para MySQL
DB Floripa - ProxySQL para MySQL
 
MySQLinsanity
MySQLinsanityMySQLinsanity
MySQLinsanity
 
Instalar MySQL CentOS
Instalar MySQL CentOSInstalar MySQL CentOS
Instalar MySQL CentOS
 
Introduction to Vitess on Kubernetes for MySQL - Webinar
Introduction to Vitess on Kubernetes for MySQL -  WebinarIntroduction to Vitess on Kubernetes for MySQL -  Webinar
Introduction to Vitess on Kubernetes for MySQL - Webinar
 
Drizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free MigrationDrizzle to MySQL, Stress Free Migration
Drizzle to MySQL, Stress Free Migration
 
MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527MySQL 5.7 innodb_enhance_partii_20160527
MySQL 5.7 innodb_enhance_partii_20160527
 
OSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert VanderkelenOSMC 2008 | Monitoring MySQL by Geert Vanderkelen
OSMC 2008 | Monitoring MySQL by Geert Vanderkelen
 
SharePoint 2010 Virtualization - SharePoint Saturday L.A.
SharePoint 2010 Virtualization - SharePoint Saturday L.A.SharePoint 2010 Virtualization - SharePoint Saturday L.A.
SharePoint 2010 Virtualization - SharePoint Saturday L.A.
 
SharePoint 2010 Virtualization - Norway SharePoint User Group
SharePoint 2010 Virtualization - Norway SharePoint User GroupSharePoint 2010 Virtualization - Norway SharePoint User Group
SharePoint 2010 Virtualization - Norway SharePoint User Group
 
Perf Tuning Short
Perf Tuning ShortPerf Tuning Short
Perf Tuning Short
 
Performance schema and sys schema
Performance schema and sys schemaPerformance schema and sys schema
Performance schema and sys schema
 
Instalar PENTAHO 5 en CentOS 6
Instalar PENTAHO 5 en CentOS 6Instalar PENTAHO 5 en CentOS 6
Instalar PENTAHO 5 en CentOS 6
 
TrinityCore server install guide
TrinityCore server install guideTrinityCore server install guide
TrinityCore server install guide
 
Playing with the CONNECT storage engine
Playing with the CONNECT storage enginePlaying with the CONNECT storage engine
Playing with the CONNECT storage engine
 
Confoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New FeaturesConfoo 2021 -- MySQL New Features
Confoo 2021 -- MySQL New Features
 
Deploying Percona XtraDB Cluster in Openshift
Deploying Percona XtraDB Cluster in OpenshiftDeploying Percona XtraDB Cluster in Openshift
Deploying Percona XtraDB Cluster in Openshift
 

More from Olivier DASINI

MySQL Day Paris 2018 - MySQL JSON Document Store
MySQL Day Paris 2018 - MySQL JSON Document StoreMySQL Day Paris 2018 - MySQL JSON Document Store
MySQL Day Paris 2018 - MySQL JSON Document StoreOlivier DASINI
 
MySQL 8.0, what's new ? - Forum PHP 2018
MySQL 8.0, what's new ? - Forum PHP 2018MySQL 8.0, what's new ? - Forum PHP 2018
MySQL 8.0, what's new ? - Forum PHP 2018Olivier DASINI
 
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...Olivier DASINI
 
MySQL 8.0 - What's New ?
MySQL 8.0 - What's New ?MySQL 8.0 - What's New ?
MySQL 8.0 - What's New ?Olivier DASINI
 
MySQL Document Store - A Document Store with all the benefts of a Transactona...
MySQL Document Store - A Document Store with all the benefts of a Transactona...MySQL Document Store - A Document Store with all the benefts of a Transactona...
MySQL Document Store - A Document Store with all the benefts of a Transactona...Olivier DASINI
 
MySQL 5.7 InnoDB Cluster (Jan 2018)
MySQL 5.7 InnoDB Cluster (Jan 2018)MySQL 5.7 InnoDB Cluster (Jan 2018)
MySQL 5.7 InnoDB Cluster (Jan 2018)Olivier DASINI
 
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
MySQL InnoDB Cluster - A complete High Availability solution for MySQLMySQL InnoDB Cluster - A complete High Availability solution for MySQL
MySQL InnoDB Cluster - A complete High Availability solution for MySQLOlivier DASINI
 
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP ParisMySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP ParisOlivier DASINI
 
MySQL Day Paris 2016 - MySQL Enterprise Edition
MySQL Day Paris 2016 - MySQL Enterprise EditionMySQL Day Paris 2016 - MySQL Enterprise Edition
MySQL Day Paris 2016 - MySQL Enterprise EditionOlivier DASINI
 
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceMySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceOlivier DASINI
 
MySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document StoreMySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document StoreOlivier DASINI
 
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB ClusterMySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB ClusterOlivier DASINI
 
What's New in MySQL 5.7
What's New in MySQL 5.7What's New in MySQL 5.7
What's New in MySQL 5.7Olivier DASINI
 

More from Olivier DASINI (13)

MySQL Day Paris 2018 - MySQL JSON Document Store
MySQL Day Paris 2018 - MySQL JSON Document StoreMySQL Day Paris 2018 - MySQL JSON Document Store
MySQL Day Paris 2018 - MySQL JSON Document Store
 
MySQL 8.0, what's new ? - Forum PHP 2018
MySQL 8.0, what's new ? - Forum PHP 2018MySQL 8.0, what's new ? - Forum PHP 2018
MySQL 8.0, what's new ? - Forum PHP 2018
 
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
MySQL JSON Document Store - A Document Store with all the benefits of a Trans...
 
MySQL 8.0 - What's New ?
MySQL 8.0 - What's New ?MySQL 8.0 - What's New ?
MySQL 8.0 - What's New ?
 
MySQL Document Store - A Document Store with all the benefts of a Transactona...
MySQL Document Store - A Document Store with all the benefts of a Transactona...MySQL Document Store - A Document Store with all the benefts of a Transactona...
MySQL Document Store - A Document Store with all the benefts of a Transactona...
 
MySQL 5.7 InnoDB Cluster (Jan 2018)
MySQL 5.7 InnoDB Cluster (Jan 2018)MySQL 5.7 InnoDB Cluster (Jan 2018)
MySQL 5.7 InnoDB Cluster (Jan 2018)
 
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
MySQL InnoDB Cluster - A complete High Availability solution for MySQLMySQL InnoDB Cluster - A complete High Availability solution for MySQL
MySQL InnoDB Cluster - A complete High Availability solution for MySQL
 
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP ParisMySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
 
MySQL Day Paris 2016 - MySQL Enterprise Edition
MySQL Day Paris 2016 - MySQL Enterprise EditionMySQL Day Paris 2016 - MySQL Enterprise Edition
MySQL Day Paris 2016 - MySQL Enterprise Edition
 
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceMySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
 
MySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document StoreMySQL Day Paris 2016 - MySQL as a Document Store
MySQL Day Paris 2016 - MySQL as a Document Store
 
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB ClusterMySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
 
What's New in MySQL 5.7
What's New in MySQL 5.7What's New in MySQL 5.7
What's New in MySQL 5.7
 

Recently uploaded

Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...
Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...
Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...ssuserf63bd7
 
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSINGmarianagonzalez07
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFAAndrei Kaleshka
 
20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdf20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdfHuman37
 
Multiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfMultiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfchwongval
 
DBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfDBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfJohn Sterrett
 
While-For-loop in python used in college
While-For-loop in python used in collegeWhile-For-loop in python used in college
While-For-loop in python used in collegessuser7a7cd61
 
Call Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceCall Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceSapana Sha
 
1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样
1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样
1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样vhwb25kk
 
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...dajasot375
 
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...Boston Institute of Analytics
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degreeyuu sss
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryJeremy Anderson
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Seán Kennedy
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一fhwihughh
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Seán Kennedy
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfgstagge
 
Identifying Appropriate Test Statistics Involving Population Mean
Identifying Appropriate Test Statistics Involving Population MeanIdentifying Appropriate Test Statistics Involving Population Mean
Identifying Appropriate Test Statistics Involving Population MeanMYRABACSAFRA2
 
9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service
9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service
9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort servicejennyeacort
 
RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.natarajan8993
 

Recently uploaded (20)

Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...
Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...
Statistics, Data Analysis, and Decision Modeling, 5th edition by James R. Eva...
 
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
2006_GasProcessing_HB (1).pdf HYDROCARBON PROCESSING
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFA
 
20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdf20240419 - Measurecamp Amsterdam - SAM.pdf
20240419 - Measurecamp Amsterdam - SAM.pdf
 
Multiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdfMultiple time frame trading analysis -brianshannon.pdf
Multiple time frame trading analysis -brianshannon.pdf
 
DBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdfDBA Basics: Getting Started with Performance Tuning.pdf
DBA Basics: Getting Started with Performance Tuning.pdf
 
While-For-loop in python used in college
While-For-loop in python used in collegeWhile-For-loop in python used in college
While-For-loop in python used in college
 
Call Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts ServiceCall Girls In Dwarka 9654467111 Escorts Service
Call Girls In Dwarka 9654467111 Escorts Service
 
1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样
1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样
1:1定制(UQ毕业证)昆士兰大学毕业证成绩单修改留信学历认证原版一模一样
 
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
 
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
NLP Data Science Project Presentation:Predicting Heart Disease with NLP Data ...
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data Story
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
 
Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...Student profile product demonstration on grades, ability, well-being and mind...
Student profile product demonstration on grades, ability, well-being and mind...
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdf
 
Identifying Appropriate Test Statistics Involving Population Mean
Identifying Appropriate Test Statistics Involving Population MeanIdentifying Appropriate Test Statistics Involving Population Mean
Identifying Appropriate Test Statistics Involving Population Mean
 
9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service
9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service
9711147426✨Call In girls Gurgaon Sector 31. SCO 25 escort service
 
RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.RABBIT: A CLI tool for identifying bots based on their GitHub events.
RABBIT: A CLI tool for identifying bots based on their GitHub events.
 

MySQL 8.0.18 - New Features Summary

  • 1. MySQL 8.0.18 New Features Summary Olivier DASINI MySQL Principal Solutions Architect Blog: http://dasini.net/blog/en/ Twitter: @freshdaz
  • 2. http://dasini.net/blog/en/ Me, Myself & I ➢ MySQL Geek ✔ Addicted to MySQL for 15+ years! ✔ Playing with databases for 20+ years ➢ MySQL Writer, Blogger and Speaker ✔ Also former : DBA, Consultant, Architect, Trainer, ... ➢ MySQL Principal Solutions Architect EMEA at Oracle ➢ Stay tuned! : ✔ Twitter : @freshdaz ✔ Blog : http://dasini.net/blog Olivier DASINI
  • 3. http://dasini.net/blog/en/ The following is just a summary of the MySQL 8.0.18 new features. For a more thorough and exhaustive view please read the following : ➢ The MySQL 8.0.18 Maintenance Release is Generally Available ✔ https://mysqlserverteam.com/the-mysql-8-0-18-maintenance-release-is-generally-available/ ➢ Changes in MySQL 8.0.18 (2019-10-14, General Availability) ✔ https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-18.html ➢ Changes in MySQL Shell 8.0.18 (2019-10-14, General Availability) ✔ https://dev.mysql.com/doc/relnotes/mysql-shell/8.0/en/news-8-0-18.html ➢ Changes in MySQL Router 8.0.18 (2019-10-14, General Availability) ✔ https://dev.mysql.com/doc/relnotes/mysql-router/en/news-8-0-18.html And also the MySQL team Blogs : ➢ https://mysqlserverteam.com/ ➢ https://mysqlhighavailability.com/ ➢ https://mysqlrelease.com/ ➢ http://insidemysql.com/ Disclaimer
  • 4. http://dasini.net/blog/en/ The world's most popular open source database
  • 5. http://dasini.net/blog/en/ Highlights ➢ Hash Join ➢ EXPLAIN ANALYZE ➢ Only OpenSSL ➢ Random Password ➢ MySQL Shell Enhancements ➢ MySQL Router Enhancements ➢ InnoDB Cluster Enhancements ➢ Group Replication Enhancements ➢ Replication Enhancements ➢ MySQL Enterprise New Features ➢ Thanks to the Contributors 5
  • 7. http://dasini.net/blog/en/ Hash Join 1/2 ➢ Implement hash join as a way of executing inner equi-joins in MySQL ➢ Hash join does not need any index to execute ➢ In most cases more efficient than the current block-nested loop algorithm 7 EXPLAIN FORMAT=TREE SELECT title FROM film INNER JOIN film_actor USING (last_update)G *************************** 1. row *************************** EXPLAIN: -> Inner hash join (film_actor.last_update = film.last_update) (cost=546314.82 rows=546200) -> Table scan on film_actor (cost=0.07 rows=5462) -> Hash -> Table scan on film (cost=103.00 rows=1000)
  • 8. http://dasini.net/blog/en/ Hash Join 2/2 8 Resources ➢ Hash join in MySQL 8 ✔ https://mysqlserverteam.com/hash-join-in-mysql-8/ ➢ Hash Join Optimization ✔ https://dev.mysql.com/doc/refman/8.0/en/hash-joins.html ➢ MySQL 8.0.18 latest updates: Hash join and EXPLAIN ANALYZE ✔ https://www.slideshare.net/NorvaldRyeng/mysql-8018-latest-updates-hash-join-and-explain-analyze ➢ WL#2241 - Hash join ✔ https://dev.mysql.com/worklog/task/?id=2241
  • 10. http://dasini.net/blog/en/ EXPLAIN ANALYZE 1/2 ➢ Run the query and then produce EXPLAIN output with additional information about how the optimizer estimates matched the actual execution ➢ Present the estimated execution cost, estimated number of returned rows, the time to return first row, the time to return all rows (i.e. actual cost), the number of rows returned and the number of loops ➢ The overall query execution is presented as a tree structure 10 EXPLAIN ANALYZE SELECT title FROM film INNER JOIN film_actor USING (last_update)G ************************************* 1. row ************************************* EXPLAIN: -> Inner hash join (film_actor.last_update = film.last_update) (cost=546314.82 rows=546200) (actual time=9.444..9.444 rows=0 loops=1) -> Table scan on film_actor (cost=0.07 rows=5462) (actual time=0.042..3.338 rows=5462 loops=1) -> Hash -> Table scan on film (cost=103.00 rows=1000) (actual time=0.121..1.229 rows=1000 loops=1)
  • 11. http://dasini.net/blog/en/ EXPLAIN ANALYZE 2/2 11 Resources ➢ MySQL EXPLAIN ANALYZE ✔ https://mysqlserverteam.com/mysql-explain-analyze/ ➢ MySQL 8.0.18 latest updates: Hash join and EXPLAIN ANALYZE ✔ https://www.slideshare.net/NorvaldRyeng/mysql-8018-latest-updates-hash-join-and-explain-analyze ➢ WL#4168 - Implement EXPLAIN ANALYZE ✔ https://dev.mysql.com/worklog/task/?id=4168
  • 13. http://dasini.net/blog/en/ Only OpenSSL ➢ All MySQL builds now use OpenSSL ➢ Remove support for wolfSSL and yaSSL from the MySQL codebase ➢ Moving forward, MySQL will only use OpenSSL as its SSL/TLS library ✔ We’re going to be building all of our binaries (commercial and community) for each release (5.6, 5.7, 8.0) in the same identical way when it comes to SSL/TLS libraries 13 Resources ➢ MySQL is OpenSSL-only now ! ✔ https://mysqlserverteam.com/mysql-is-openssl-only-now/ ➢ WL#13290 - Remove wolfSSL support from 8.0 codebase. ✔ https://dev.mysql.com/worklog/task/?id=13290 ➢ WL#13289 - Remove yaSSL support from 5.6/5.7 codebase ✔ https://dev.mysql.com/worklog/task/?id=13289
  • 15. http://dasini.net/blog/en/ Random Password 1/2 ➢ Generate a strong random password ✔ Returned as a result set row to the client ➢ For CREATE USER / ALTER USER / SET PASSWORD statements ➢ Password length is controlled by the generated_random_password_length (20 characters by default) 15 SELECT @@generated_random_password_length; +------------------------------------+ | @@generated_random_password_length | +------------------------------------+ | 20 | +------------------------------------+ CREATE USER 'daz'@'localhost' IDENTIFIED BY RANDOM PASSWORD; +------+-----------+----------------------+ | user | host | generated password | +------+-----------+----------------------+ | daz | localhost | f@-iJ>0Ba<62kR1UQ3r; | +------+-----------+----------------------+ ALTER USER 'daz'@'localhost' IDENTIFIED BY RANDOM PASSWORD; +------+-----------+----------------------+ | user | host | generated password | +------+-----------+----------------------+ | daz | localhost | FFx;pyBP)/lyFkBa9yGy | +------+-----------+----------------------+ SET PASSWORD FOR 'daz'@'localhost' TO RANDOM; +------+-----------+----------------------+ | user | host | generated password | +------+-----------+----------------------+ | daz | localhost | }cvqvQTfIbSajQZ4wrj& | +------+-----------+----------------------+
  • 16. http://dasini.net/blog/en/ Random Password 2/2 16 Resources ➢ MySQL Random Password Generation ✔ https://elephantdolphin.blogspot.com/2019/10/mysql-random-password-generation.html ➢ Random Password Generation ✔ https://dev.mysql.com/doc/refman/8.0/en/password-management.html#random-password-generation ➢ generated_random_password_length ✔ https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_generated_random_password_length ➢ WL#11772 - CREATE USER IDENTIFIED BY RANDOM PASSWORD ✔ https://dev.mysql.com/worklog/task/?id=11772
  • 18. http://dasini.net/blog/en/ MySQL Shell Enhancements ➢ Python 3 Migration ✔ Due to the coming EOL for Python 2.7 by end of this year, the Shell has been updated to use Python 3 ✔ The minimum supported version is Python 3.4.3 ➢ Built-in Thread Reports ✔ 2 new built-in reports, which provide information drawn from various sources including MySQL's Performance Schema: ━ threads : lists the current threads in the connected MySQL server which belong to the user account that is used to run the report ━ thread : provides detailed information about a specific thread in the connected MySQL server ✔ You can run the new reports using MySQL Shell's show and watch commands ➢ 2 new control commands ✔ edit (e) : opens a command in the default system editor for editing ✔ system (!) : runs the operating system command that you specify as an argument to the command, then displays the output from the command in MySQL Shell 18 Resources ➢ MySQL Shell 8.0.18 – What’s New? ✔ https://mysqlserverteam.com/mysql-shell-8-0-18-whats-new/
  • 20. http://dasini.net/blog/en/ MySQL Router Enhancements ➢ Frontend for MySQL Routers keyring ✔ mysqlrouter_keyring is a new utility to manage the Router keyring ➢ Add timestamp precision to log ✔ Implement sub-second timestamp precision for the Router’s log files 20 Resources ➢ Changes in MySQL Router 8.0.18 (2019-10-14, General Availability) ✔ https://dev.mysql.com/doc/relnotes/mysql-router/en/news-8-0-18.html ➢ WL#12974 - Frontend for MySQL Routers keyring ✔ https://dev.mysql.com/worklog/task/?id=12974 ➢ WL#11194 – Harness: Add optional timestamp precision to log ✔ https://dev.mysql.com/worklog/task/?id=11194
  • 22. http://dasini.net/blog/en/ InnoDB Cluster Enhancements 22 ➢ Log SQL statements ✔ Provide information about all SQL statements executed by the AdminAPI ➢ Full IPv6 support ✔ If the target MySQL Server version is equal or higher to 8.0.14, IPv6 addresses can now be used ➢ Reset the cluster recovery accounts ✔ You can now reset the passwords for the internal recovery accounts created by InnoDB Cluster ━ e.g. To follow a custom password lifetime policy ✔ Applies only to the passwords created by InnoDB Cluster ➢ Replication lag ✔ Cluster’s status command now monitor the time between the most recent transaction being committed and being applied to a cluster member Resources ➢ MySQL InnoDB Cluster – What’s new in Shell AdminAPI 8.0.18 release ✔ https://mysqlserverteam.com/mysql-innodb-cluster-whats-new-in-shell-adminapi-8-0-18-release/
  • 24. http://dasini.net/blog/en/ Group Replication Enhancements ➢ OFFLINE_MODE ✔ New option available for the group_replication_exit_state_action system variable ✔ Close all connections and disallows new connections from users who do not have the CONNECTION_ADMIN or SUPER privilege, on a member who left the group unintentionally ✔ Prevent updates like the default READ_ONLY exit action does, but also prevent stale reads ➢ TLS 1.3 support ✔ Secure communication using TLS 1.3 among all group members in a Group Replication cluster 24 Resources ➢ Automatic member fencing with OFFLINE_MODE in Group Replication ✔ https://mysqlhighavailability.com/automatic-member-fencing-with-offline_mode-in-group-replication/ ➢ group_replication_exit_state_action ✔ https://dev.mysql.com/doc/refman/8.0/en/group-replication-options.html#sysvar_group_replication_exit_state_action ➢ WL#12895 - Group Replication: Add OFFLINE_MODE to group_replication_exit_state_action ✔ https://dev.mysql.com/worklog/task/?id=12895 ➢ Group Replication Secure Socket Layer (SSL) Support ✔ https://dev.mysql.com/doc/refman/8.0/en/group-replication-secure-socket-layer-support-ssl.html ➢ WL#12990 - Group Replication: TLS 1.3 support ✔ https://dev.mysql.com/worklog/task/?id=12990
  • 26. http://dasini.net/blog/en/ Replication Enhancements ➢ Replication with privilege checks ✔ Enable secure replication from an untrusted source to a trusted destination ✔ DBA can now define a user under which the replication applier threads will operate and therefore do privilege checking ✔ PRIVILEGE_CHECKS_USER account helps secure a replication channel against the unauthorized or accidental use of privileged or unwanted operations 26 Resources ➢ MySQL 8.0.18 Replication Enhancements ✔ https://mysqlhighavailability.com/mysql-8-0-18-replication-enhancements/ ➢ Replication with restricted privileges ✔ https://mysqlhighavailability.com/replication-with-restricted-privileges/ ➢ Privileges For The Replication PRIVILEGE_CHECKS_USER Account ✔ https://dev.mysql.com/doc/refman/8.0/en/replication-privilege-checks-account.html ➢ WL#12966 - Replication with privilege checks ✔ https://dev.mysql.com/worklog/task/?id=12966
  • 28. http://dasini.net/blog/en/ Enterprise New Features ➢ HashiCorp Vault Support ✔ MySQL Enterprise Edition now includes a keyring_hashicorp plugin that uses HashiCorp Vault as a back end for keyring storage ➢ Incremental Backup supports Page Tracking ✔ mysqlbackup (MEB) supports creating incremental backups using the page tracking functionality of the MySQL Server ✔ It looks for changed pages in the InnoDB data files that have been modified since the last backup and then copies them ✔ In general, incremental backups using page tracking are faster than other kinds of incremental backups 28 Resources ➢ MySQL Keyring now speaks Hashicorp Vault ✔ https://mysqlserverteam.com/mysql-keyring-now-speaks-hashicorp-vault/ ✔ https://mysqlserverteam.com/mysql-keyring-now-speaks-hashicorp-vault/2/ ✔ https://mysqlserverteam.com/mysql-keyring-now-speaks-hashicorp-vault/3/ ➢ Using the HashiCorp Vault Keyring Plugin ✔ https://dev.mysql.com/doc/refman/8.0/en/keyring-hashicorp-plugin.html ➢ Incremental Backup Using Page Tracking ✔ https://dev.mysql.com/doc/mysql-enterprise-backup/8.0/en/mysqlbackup.incremental.html#mysqlbackup.page- tracking.incremental
  • 30. http://dasini.net/blog/en/ Thanks for the Contributions Facebook Gillian Gunson (from GitHub) Przemysław Skibiński (from Percona) Daniel Black (from IBM) Satya Bodapati (from Percona) 30 If you have patches you would like to contribute you can do so from : ➢ MySQL’s GitHub repository : https://github.com/mysql ➢ Requires signing the Oracle Contributor Agreement : https://www.oracle.com/technetwork/community/oca-486395.html Details ➢ MySQL Server 8.0.18 Thanks for the Contributions ✔ https://mysql.wisborg.dk/2019/10/20/mysql-server-8-0-18-thanks-for-the-contributions/
  • 31. http://dasini.net/blog/en/ The complete list of new features in MySQL 8.0 31 There are over 250 new features in MySQL 8.0... https://mysqlserverteam.com/the-complete-list-of-new-features-in-mysql-8-0/