The document summarizes new features in MySQL 5.7, including improvements to InnoDB performance for read-only and read-write workloads, faster connection handling, bulk data load improvements, statement timeouts, multiple user level locks, and other features to improve scalability, concurrency, and performance.
MySQL Backup and Security Best PracticesLenz Grimmer
Slides of my talk about MySQL Backup and Security at phpDay in Verona, Italy:
http://www.phpday.it/site/phpday-2009/calendario-conferenze/canale-developers/mysql-backup-and-security-best-practices/
Online MySQL Backups with Percona XtraBackupKenny Gryp
Percona XtraBackup is a free, open source, complete online backup solution for all versions of Percona Server, MySQL® and MariaDB®.
Percona XtraBackup provides:
* Fast and reliable backups
* Uninterrupted transaction processing during backups
* Savings on disk space and network bandwidth with better compression
* Automatic backup verification
* Higher uptime due to faster restore time
This talk will discuss the various different features of Percona XtraBackup, including:
* Full & Incremental Backups
* Compression, Streaming & Encryption of Backups
* Backing Up To The Cloud (Swift).
* Percona XtraDB Cluster / Galera Cluster.
* Percona Server Specific features
MySQL Backup and Security Best PracticesLenz Grimmer
Slides of my talk about MySQL Backup and Security at phpDay in Verona, Italy:
http://www.phpday.it/site/phpday-2009/calendario-conferenze/canale-developers/mysql-backup-and-security-best-practices/
Online MySQL Backups with Percona XtraBackupKenny Gryp
Percona XtraBackup is a free, open source, complete online backup solution for all versions of Percona Server, MySQL® and MariaDB®.
Percona XtraBackup provides:
* Fast and reliable backups
* Uninterrupted transaction processing during backups
* Savings on disk space and network bandwidth with better compression
* Automatic backup verification
* Higher uptime due to faster restore time
This talk will discuss the various different features of Percona XtraBackup, including:
* Full & Incremental Backups
* Compression, Streaming & Encryption of Backups
* Backing Up To The Cloud (Swift).
* Percona XtraDB Cluster / Galera Cluster.
* Percona Server Specific features
MariaDB 10.5 binary install (바이너리 설치)
- 네오클로바 DB지원사업부
1. About MariaDB
1.1 MariaDB 개요
1.2 MariaDB as a R-DBMS
1.3 Open Source Database System
2. 설치
2.1 설치 기본 정보
2.2 설치 준비
2.3 MariaDB 설치
2.4 MariaDB 시작 / 접속 / 종료
2.5 추가 설정
MySQL and MariaDB though they share the same roots for replication .They support parallel replication , but they diverge the way the parallel replication is implemented.
Presentation at March 2019 Dutch Postgres User Group Meetup on lessons learnt while migrating from Oracle to Postgres, demo'ed via vagrant test environments and using generic pgbench datasets.
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...Insight Technology, Inc.
Scalability with MariaDB and MaxScale talks about MariaDB 10, and MaxScale, a pluggable router for your queries. These are technologies developed at MariaDB Corporation, made opensource, and will help scale your MariaDB and MySQL workloads
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...Severalnines
Galera Cluster for MySQL / MariaDB is easy to deploy, but how does it behave under real workload, scale, and during long term operation? Proof of concepts and lab tests usually work great for Galera, until it’s time to go into production. Throw in a live migration from an existing database setup and devops life just got a bit more interesting ...
If this scenario sounds familiar, then this webinar replay is for you!
AGENDA
101 Sanity Check
Operating System
Backup Strategies
Replication & Sync
Query Performance
Schema Changes
Security / Encryption
Reporting
Managing from disaster
SPEAKER
Johan Andersson, CTO, Severalnines - Johan's technical background and interest are in high performance computing as demonstrated by the work he did on main-memory clustered databases at Ericsson as well as his research on parallel Java Virtual Machines at Trinity College Dublin in Ireland. Prior to co-founding Severalnines, Johan was Principal Consultant and lead of the MySQL Clustering & High Availability consulting group at MySQL / Sun Microsystems / Oracle, where he designed and implemented large-scale MySQL systems for key customers. Johan is a regular speaker at MySQL User Conferences as well as other high profile community gatherings with popular talks and tutorials around architecting and tuning MySQL Clusters.
MySQL's new Secure by Default Install -- All Things Open October 20th 2015Dave Stokes
One of the new features of MySQL 5.7 is enhanced security. This includes password rotation, lengthening the user name field, SSL encouragement, and much more. This session presented at All Things open 2015 and covers the changes in MySQL 5.7
Middleware upgrade to Oracle Fusion Middleware(FMW) 12c.Real Case stories. Andrejs Vorobjovs
Tēmas apraksts: Middleware atjaunināšana līdz FMW 12c. Reālu projektu pieredze. Salīdzinoši nesen tika publicēta Oracle FMW 12c produktu līnija. Šoreiz gribu padalīties ar atjaunināšanas līdz Oracle FWM 12c pieredzi. Pamatu pamati, zemūdens akmeņi un tehniskie triki, kas var palīdzēt jums ietaupīt laiku un var būt arī saglabāt nervus.
Тема (РУ): Обновление Middleware до FMW 12c. Опыт реальных проектов.Описание: Относительно недавно вышла в свет линейка продуктов Oracle FMW 12c. В этот раз я хочу поделиться своим опытом обновления до Oracle FWM 12c.
Прописные истины, подводные камни и технические хитрости, которые помогут сберечь ваше время и, возможно и нервы.
Description(ENG): Relatively recently Orcale FMW 12c product line has been published.Today I would like to share my experience of middleware upgrade to Oracle FWM 12c.
Basics, pitfalls and technical tricks, that can save your time and nerves, may be.
Implementing High Availability Caching with MemcachedGear6
Typical Memcached deployments do not comprehensively address web site requirements for high availability. Depending on your web architecture, a single failure can disable your web caches. This presentation offers real world solutions to solving <a>high availability</a> challenges common to large, dynamic websites with Memcached, specifically:
* Options and benefits for deploying high availability services within Memcached
* How companies are approaching high availability
* Considerations on building and deploying high availability
o Recommendations for a typical Memcached environment
o Open source tools available
o High level costs for deployment
MariaDB 10.5 binary install (바이너리 설치)
- 네오클로바 DB지원사업부
1. About MariaDB
1.1 MariaDB 개요
1.2 MariaDB as a R-DBMS
1.3 Open Source Database System
2. 설치
2.1 설치 기본 정보
2.2 설치 준비
2.3 MariaDB 설치
2.4 MariaDB 시작 / 접속 / 종료
2.5 추가 설정
MySQL and MariaDB though they share the same roots for replication .They support parallel replication , but they diverge the way the parallel replication is implemented.
Presentation at March 2019 Dutch Postgres User Group Meetup on lessons learnt while migrating from Oracle to Postgres, demo'ed via vagrant test environments and using generic pgbench datasets.
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...Insight Technology, Inc.
Scalability with MariaDB and MaxScale talks about MariaDB 10, and MaxScale, a pluggable router for your queries. These are technologies developed at MariaDB Corporation, made opensource, and will help scale your MariaDB and MySQL workloads
Webinar slides: 9 DevOps Tips for Going in Production with Galera Cluster for...Severalnines
Galera Cluster for MySQL / MariaDB is easy to deploy, but how does it behave under real workload, scale, and during long term operation? Proof of concepts and lab tests usually work great for Galera, until it’s time to go into production. Throw in a live migration from an existing database setup and devops life just got a bit more interesting ...
If this scenario sounds familiar, then this webinar replay is for you!
AGENDA
101 Sanity Check
Operating System
Backup Strategies
Replication & Sync
Query Performance
Schema Changes
Security / Encryption
Reporting
Managing from disaster
SPEAKER
Johan Andersson, CTO, Severalnines - Johan's technical background and interest are in high performance computing as demonstrated by the work he did on main-memory clustered databases at Ericsson as well as his research on parallel Java Virtual Machines at Trinity College Dublin in Ireland. Prior to co-founding Severalnines, Johan was Principal Consultant and lead of the MySQL Clustering & High Availability consulting group at MySQL / Sun Microsystems / Oracle, where he designed and implemented large-scale MySQL systems for key customers. Johan is a regular speaker at MySQL User Conferences as well as other high profile community gatherings with popular talks and tutorials around architecting and tuning MySQL Clusters.
MySQL's new Secure by Default Install -- All Things Open October 20th 2015Dave Stokes
One of the new features of MySQL 5.7 is enhanced security. This includes password rotation, lengthening the user name field, SSL encouragement, and much more. This session presented at All Things open 2015 and covers the changes in MySQL 5.7
Middleware upgrade to Oracle Fusion Middleware(FMW) 12c.Real Case stories. Andrejs Vorobjovs
Tēmas apraksts: Middleware atjaunināšana līdz FMW 12c. Reālu projektu pieredze. Salīdzinoši nesen tika publicēta Oracle FMW 12c produktu līnija. Šoreiz gribu padalīties ar atjaunināšanas līdz Oracle FWM 12c pieredzi. Pamatu pamati, zemūdens akmeņi un tehniskie triki, kas var palīdzēt jums ietaupīt laiku un var būt arī saglabāt nervus.
Тема (РУ): Обновление Middleware до FMW 12c. Опыт реальных проектов.Описание: Относительно недавно вышла в свет линейка продуктов Oracle FMW 12c. В этот раз я хочу поделиться своим опытом обновления до Oracle FWM 12c.
Прописные истины, подводные камни и технические хитрости, которые помогут сберечь ваше время и, возможно и нервы.
Description(ENG): Relatively recently Orcale FMW 12c product line has been published.Today I would like to share my experience of middleware upgrade to Oracle FWM 12c.
Basics, pitfalls and technical tricks, that can save your time and nerves, may be.
Implementing High Availability Caching with MemcachedGear6
Typical Memcached deployments do not comprehensively address web site requirements for high availability. Depending on your web architecture, a single failure can disable your web caches. This presentation offers real world solutions to solving <a>high availability</a> challenges common to large, dynamic websites with Memcached, specifically:
* Options and benefits for deploying high availability services within Memcached
* How companies are approaching high availability
* Considerations on building and deploying high availability
o Recommendations for a typical Memcached environment
o Open source tools available
o High level costs for deployment
Learn how upcoming changes in the persistent memory market will affect deployments of in-memory computing and traditional applications. Using software innovations from SanDisk and the broad portfolio of flash storage hardware options, customers and developers can optimize applications for “flash extended memory”, the intersection of in-memory computing and persistent memory technologies.
Rapid Application Design in Financial ServicesAerospike
Applying internet NoSQL design patterns to fraud detection and risk scoring, including when to use SQL and when to use NoSQL. The state of NAND Flash and NVMe is also discussed, as well as storage class memory futures with Intel's 3D Xpoint technology.
This talk was presented in LA at the following meetup:
http://www.meetup.com/scalela/events/233396111/
Esta oferta podría ser la solución para el punto de partida de Flash que junto con Spectrum Scale te da una solución de Software Defined Storage escalable, para cumplir con los requisitos del almacenamiento no estructurado y big data.
Director of Data Center Solutions Marketing, Brian Allison, breaks down the impact of Big Data Flash in this presentation during Flash Memory Summit 2016
Flash memory summit 2015 gary lyng session 301-aGARY LYNG
The World is Ready for Big Data Flash - these workloads, enterprise's at scale and hyperscalers have already discovered the real world benefits of implementing Flash in the data center for high performance and high capacity workloads and @Scale the incredible bottom line savings while raising the SLA's of apps. and the business they support.
Tuning and optimizing webcenter spaces application white paperVinay Kumar
This white paper focuses on Oracle WebCenter Spaces performance problem and analysis after post production deployment. We will tune JVM ( JRocket). Webcenter Portal, Webcenter content and ADF task flow.
Trivadis TechEvent 2016 What's new in SQL Server 2016 in Analysis Services by...Trivadis
This session is a part of the training M-SQL2016-NF (Microsoft SQL Server 2016 - New Features) and is all about showing the new features of the SQL Server 2016.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Welcome to the first live UiPath Community Day Dubai! Join us for this unique occasion to meet our local and global UiPath Community and leaders. You will get a full view of the MEA region's automation landscape and the AI Powered automation technology capabilities of UiPath. Also, hosted by our local partners Marc Ellis, you will enjoy a half-day packed with industry insights and automation peers networking.
📕 Curious on our agenda? Wait no more!
10:00 Welcome note - UiPath Community in Dubai
Lovely Sinha, UiPath Community Chapter Leader, UiPath MVPx3, Hyper-automation Consultant, First Abu Dhabi Bank
10:20 A UiPath cross-region MEA overview
Ashraf El Zarka, VP and Managing Director MEA, UiPath
10:35: Customer Success Journey
Deepthi Deepak, Head of Intelligent Automation CoE, First Abu Dhabi Bank
11:15 The UiPath approach to GenAI with our three principles: improve accuracy, supercharge productivity, and automate more
Boris Krumrey, Global VP, Automation Innovation, UiPath
12:15 To discover how Marc Ellis leverages tech-driven solutions in recruitment and managed services.
Brendan Lingam, Director of Sales and Business Development, Marc Ellis
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
The Metaverse and AI: how can decision-makers harness the Metaverse for their...Jen Stirrup
The Metaverse is popularized in science fiction, and now it is becoming closer to being a part of our daily lives through the use of social media and shopping companies. How can businesses survive in a world where Artificial Intelligence is becoming the present as well as the future of technology, and how does the Metaverse fit into business strategy when futurist ideas are developing into reality at accelerated rates? How do we do this when our data isn't up to scratch? How can we move towards success with our data so we are set up for the Metaverse when it arrives?
How can you help your company evolve, adapt, and succeed using Artificial Intelligence and the Metaverse to stay ahead of the competition? What are the potential issues, complications, and benefits that these technologies could bring to us and our organizations? In this session, Jen Stirrup will explain how to start thinking about these technologies as an organisation.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
MySQL 5.7 milestone
1. www.vmcd.org
MySQL 5.7 Important Features
InnoDB Read-Only Scalability
Improving the performance for Read-Only and Read-Mostly workloads. Significantly improved how InnoDB handles RO trans-actions
Removed server layer contentions related to Meta Data Locking (MDL) and removed the use of “thread locks” (thd_locks) for InnoDB
In MySQL 5.7.2, there is another optimization where all transactions are treated as a read-only transactions by default, and a transaction is only
assigned an ID and a rollback segment when the transaction attempts to do its first update. This optimization of treating all transactions as
read-only by default has the additional benefit that users do not need to use special syntax or change their applications to take advantage of it.
Reference:
http://dimitrik.free.fr/blog/archives/09-01-2013_09-30-2013.html
http://mysqlserverteam.com/mysql-5-7-over-1m-qps-with-innodb-memcached-plugin/
http://mysqlserverteam.com/transaction-life-cycle-improvements-in-5-7-3/
http://mysqlserverteam.com/mysql-5-7-3-deep-dive-into-1mil-qps-with-innodb-memcached/
2. www.vmcd.org
InnoDB Read-Write Scalability.
Improved the performance of Read-Write (RW) workloads. We have removed the “index lock contention” in InnoDB. The index lock that was
used to protect the entire index tree structure is now replaced by more fine grained “block locks” in the tree.
InnoDB has two "modes" when updating the Btrees. An optimistic mode and a pessimistic mode. They roughly correspond to in-place changes
and tree modification changes. If InnoDB thinks that an insert/delete will result in a tree modification change it will lock the index in X mode.
This blocks readers too and limits concurrency. The fix was to introduce a new lock mode SX. This reduces the need to lock the entire Btree
during tree modification changes.
Reference:
https://blogs.oracle.com/mysqlinnodb/entry/innodb_5_7_performance_improvements
http://mysqlserverteam.com/mysql-5-7-improves-dml-oriented-workloads/
https://blogs.oracle.com/mysqlinnodb/entry/innodb_5_7_performance_improvements
3. www.vmcd.org
InnoDB Faster & Parallel Flushing
InnoDB has had some sub-optimal code around traversing the dirty page and LRU list flushing. The problem was that when we release the
buffer pool and associated mutexes during the IO phase we can no longer trust the iterator that is used to scan the aforementioned lists. So, we
restart the scan from the start. The fix was to track whether the iterator was invalidated while the covering mutexes where released. If the
iterator was not invalidated then we can carry on from where we left off. If on the other hand we detect that it was invalidated we go back to
the start and do it the old way. The iterator invalidation should be very rare.
Reducing the number of pages scanned when doing flush list batches, speeding up page flushing
Recently our benchmarks showed that we are scanning excessive number of pages when
doing flush list batches. We fixed it by introducing the concept of Hazard Pointer
which reduced the time complexity of scan from O(n*n) to O(n). This WL builds on
that to extend the same concept to other scans within buffer pool. There are
significant other changes which are made as part of reduced scanning logic.
The time complexity of a scan is reduced from O(n*n) to O(n). We have also implemented parallel flushing by having multiple page_cleaner
threads
Reference:
https://blog.mariadb.org/performance-evaluation-of-mariadb-10-1-and-mysql-5-7-4-labs-tplc/
4. www.vmcd.org
Speeding up Connection Handling
In 5.7 we have offloaded thread initialization and network initialization to a worker thread and more than doubled MySQL’s ability to do high
frequency connect/disconnect cycles, from 26K to 56K connect/disconnect cycles per second
Reference:
http://mysqlserverteam.com/improving-connectdisconnect-performance/
Bulk Data Load Improvements
Bulk Load for Create Index – Faster index creation
This method of index creation is also known as a “sorted index build”. This enhancement, which improves the efficiency of index creation, also
applies to full-text indexes. A new global configuration option, innodb_fill_factor, defines the percentage of space on each page that is filled
with data during a sorted index build, with the remaining space reserved for future index growth. For more information, see Section 14.13.18,
“Bulk Load for CREATE INDEX”.
5. www.vmcd.org
Bulk INSERT operations can be sped up by creating the secondary indexes afterwards. In this way, the records will be merge sorted and then
inserted into the InnoDB index B-trees in order, using sequentially allocated pages. This will create a more optimal layout especially for indexes
whose columns are updated rarely
Resize the InnoDB Buffer Pool Online
Change “ innodb_buffer_pool_size“ dynamically.
Reference:
http://mysqlserverteam.com/resizing-buffer-pool-online/
Automatic Truncation of UNOD Logs
Need separate UNDO tablespaces have been configured.
Reference:
http://mysqllover.com/?p=1051
6. www.vmcd.org
InnoDB Online Alter Table
Onine rename index and enlarge varchar column size
Online Rename Index This work by Marko Mäkelä (WL#6752) and Dmitry Lenev (WL#6555) makes it possible to rename an index as an online operation. Example:
mysql> ALTER TABLE t RENAME INDEX i1 TO i2;
Enlarge VARCHAR column size online (WL#6554) This work by Marko Mäkelä makes it possible to enlarge varchar column sizes as an online operation. This is true as
long as the number of bytes required by the VARCHAR column type (VARCHAR/LONGVARCHAR) remains the same, i.e. from 0 to 255 or from 256 to higher. Example:
mysql> ALTER TABLE t1 ALGORITHM=INPLACE, CHANGE COLUMN c1 c1 VARCHAR(255);
Setting Replication Filters Without Server Restart
Dynamically change Filter behaviors without restart server
Reference:
http://mysqlserverteam.com/mysql-5-7-3-making-mysql-slave-replication-filters-dynamic/
7. www.vmcd.org
CHANGE MASTER Without Stopping the SQL Thread
In order to add/alter an option using the CANGE MASTER TO command, it was previously necessary to issue a STOP SLAVE command before
the CHANGE MASTER TO command. This work relaxes that constraint.
Reference:
http://mysqlserverteam.com/mysql-5-7-4-change-master-without-stopping-slave-altogether/
http://work.shivjijha.com/2014/04/change-master-without-stopping-slave.html
Improved “IN queries” With Row Value Expressions to Be Executed Using Range Scans
As of 5.7.3 this hole in the net is stitched up. The range optimizer gladly opens the door for queries with IN predicates as long as
The predicate is only IN, not NOT IN.
The row on the predicate’s left-hand side is only indexed column references, in the same index.
The rows contain only constants or come from a previously read table in nested-loops join.
Note that ‘constants’ is a pretty broad category. It consists of pre-evaluated expressions, even some sub-queries, SQL variables and similar
beings
8. www.vmcd.org
Improving performance when using in predicates
Reference:
http://mysqlserverteam.com/range-access-now-in-an-in-predicate-near-you/
UNION ALL” No Longer Creates a Temporary Table
In 5.7 the optimizer avoids creating a temporary table for the result of UNION ALL queries when there is no need for it, i.e., when there is no
top-level ORDER BY clause
Reference:
http://mysqlserverteam.com/state-of-the-union/
9. www.vmcd.org
EXPLAIN for Running Queries
This feature is useful if you are running a statement in one session that is taking a long time to complete; using EXPLAIN FOR CONNECTION in
another session may yield useful information about the cause of the delay and thus help you optimize your schema and statements.
JSON EXPLAIN
Make Use of Condition Filtering in the Optimizer
Reference:
http://mysqlserverteam.com/a-new-dimension-to-mysql-query-optimizations-part-1/
http://mysqlserverteam.com/a-new-dimension-to-mysql-query-optimizations-part-2/
10. www.vmcd.org
Improved ONLY_FULL_GROUP_BY SQL Mode
ONLY_FULL_GROUP_BY SQL mode was enabled by default in 5.75+
In MySQL, one can write GROUP BY queries that reference non-aggregated columns in the SELECT list that are not included in the GROUP BY
clause, even if these columns are not functionally dependent upon the GROUP BY clause. This behaviour conforms to none of the SQL standard's
versions. It is possible to avoid this behaviour by including ONLY_FULL_GROUP_BY in the sql_mode server setting, but it might make more sense
to take advantage of the ability to write only partial GROUP BY clauses.
In a nutshell:
It is completely safe to write partial GROUP BY clauses as long as all non-aggregated columns in the SELECT list are functionally dependent upon
the GROUP BY clause.
A partial GROUP BY list can result in better performance, because it keeps the server from evaluating the entire GROUP BY list.
If one does not want to write partial GROUP BY clauses, consider using MIN or MAX to 'aggregate' the functionally dependent columns in the
SELECT list rather than moving the functionally dependent columns to the GROUP BY clause.
Reference:
http://rpbouman.blogspot.co.uk/2007/05/debunking-group-by-myths.html
http://mysqlserverteam.com/mysql-5-7-only_full_group_by-improved-recognizing-functional-dependencies-enabled-by-default/
11. www.vmcd.org
Copying File-Per-Table Tablespaces to Another Server
Prior to MySQL 5.7.4, only non-partitioned InnoDB tables are supported. As of MySQL 5.7.4, partitioned InnoDB tables and individual InnoDB
table partitions and subpartitions are also supported.
Reference:
https://dev.mysql.com/doc/refman/5.7/en/tablespace-copying.html
InnoDB Buffer Pool Dump and Load Enhancements
This work improves both the dump and load scenarios. It is now possible to dump only the hottest N% of the pages from each buffer pool. The load
operation is also made less disruptive to user activity because the load now happens in the background while continuing to serve clients
Reference:
12. www.vmcd.org
http://mysqlserverteam.com/mysql-dumping-and-reloading-the-innodb-buffer-pool/
http://mysqllover.com/?p=1123
Statement Timeouts
MySQL 5.7.4 introduces the ability to set server side execution time limits, specified in milliseconds, for top level read-only SELECT statements.
This feature is introduced as part of WL#6936. It is based on a contribution submitted by Davi Arnaut with Bug#68252. Thank you, Davi!
The statement timeouts work by interrupting the execution of the statement when it takes longer than a specified number of milliseconds to
complete. After the specified number of milliseconds has passed, the server aborts the individual query without affecting the larger transaction
or connection contexts. The following error is then reported to the client when the query is aborted:
1907: Query execution was interrupted, max_statement_time exceeded.
To be clear, the execution time limit specified is really a “soft hint”, because the query interruption may not happen precisely at the specified
execution time limit. There can be a minor delay between the timer expiration and the actual query interruption.
A time limit for any SELECT statement run against a MySQL instance can be set by specifying a timeout value in milliseconds for the GLOBAL
system variable max_statement_time.
13. www.vmcd.org
Reference:
http://planet.mysql.com/entry/?id=673840
http://mysqlserverteam.com/server-side-select-statement-timeouts/
Multiple User Level Locks
The difference in lock acquisition behavior as of MySQL 5.7.5 can be seen by the following example. Suppose that you execute these
statements:
SELECT GET_LOCK('lock1',10);
SELECT GET_LOCK('lock2',10);
SELECT RELEASE_LOCK('lock2');
SELECT RELEASE_LOCK('lock1');
In MySQL 5.7.5 or later, the second GET_LOCK() acquires a second lock and both RELEASE_LOCK() calls return 1 (success). Before MySQL 5.7.5,
the second GET_LOCK() releases the first lock ('lock1') and the secondRELEASE_LOCK() returns NULL (failure) because there is no 'lock1' to
release.
14. www.vmcd.org
Waiting for More Transactions to Enter Binlog Group Commit (BGC) Queues
Solve the lag problem in MySQL slave database. We could read Booking’s article for cascade M-S architecture.
binlog-group-commit-sync-delay, binlog-group-commit-sync-no-delay-count were used to control BGC.
Reference:
http://blog.booking.com/evaluating_mysql_parallel_replication_2-slave_group_commit.html
Semi-Sync Replication
Make the Master Wait for More than One Slave to Acknowledge Back
Externalize Transactions Only after ACK is Received
Semi-Sync — Separate ACKs Collector
Reference:
16. www.vmcd.org
Support Slave Transaction Retries in Multi-Threaded Slave Mode
Transaction retry feature works for both types of mutli-threaded slave(database based and logical clock based). It also works fine when you
force slave to commit transactions in same order as master by setting system variable “slave_preserve_commit_order” to ON.
By default, transaction retry is on for all types of slave. Multi-threaded slave will not break if it just encounters some temporary errors
mentioned above.
TRUNCATE TABLE Statement Becomes Atomic
This work makes the internal InnoDB TRUNCATE TABLE statement atomic by reinitializing the original table-space header with the same space
id and then physically truncating its.ibd file during the truncation of a single table tablespace.
Reference:
http://mysqllover.com/?p=1053
17. www.vmcd.org
InnoDB Create Tablespace in 5.7
CREATE TABLESPACE `TBS_DADOS_COMPRESS` ADD DATAFILE 'TDS_DC_DATAFILE1.ibd' [FILE_BLOCK_SIZE=4];
CREATE TABLESPACE `TBS_DADOS` ADD DATAFILE 'TDS_D_DATAFILE1.ibd' [FILE_BLOCK_SIZE=8];
CREATE TABLE ITEM_VENDA TABLESPACE=`TBS_DADOS_COMPRESS`;
ALTER TABLE tbl_name TABLESPACE=`TBS_DADOS`
DROP TABLESPACE `TBS_DADOS_COMPRESS`;
Reference:
http://mathiasbrem.com.br/innodb-create-tablespace-mysql-5-7/
InnoDB Native Partitioning
Less handles less use of memory. Easy to access partition tables
Reference:
18. www.vmcd.org
http://mysqlserverteam.com/innodb-native-partitioning-early-access/
InnoDB Temporary Table Performance
Temporary Tables
Faster create/drop
No redo logging
Separate tablespace for all uncompressed temporary tables
Temporary tables don't require recovery therefore there is no point in saving their definitions in the persistent data dictionary. By putting the all
the temporary tables in a special tablespace that is not redo logged we can reduce a lot of the unnecessary overhead. We do UNDO log the
changes to temporary tables, this is required for rollback to savepoint. However, the UNDO logs for temporary tables are not redo logged and
the UNDO logs for temporary tables also reside in the special temporary tablespace.
Temp tables are only visible within the connection/session in which they were created, and they are bound by the lifetime of the server. We
optimized DML for Temp Tables (WL#6470) by removing unnecessary UNDO and REDO logging, change buffering, and locking. We added an
additional type of UNDO log (WL#6915), one that is not REDO logged and resides in a new separate temp tablespace.
19. www.vmcd.org
Multi-Source Replication
Nearly MariaDB. MySQL 5.7 starting to support Multi-Source replication.
Generated Columns
There are two kinds of Generated Columns: virtual (default) and stored. Virtual means that the column will be calculated on the fly when a
record is read from a table. Stored means that the column will be calculated when a new record is written in the table, and after that it will be
treated as a regular field. Both types can have NOT NULL restrictions, but only a stored Generated Column can be be a part of an index.
Reference:
http://mysqlserverteam.com/generated-columns-in-mysql-5-7-5/
http://mablomy.blogspot.com/2015/03/auto-generated-columns-in-mysql-57-two.html
http://mechanics.flite.com/blog/2015/04/13/using-mysql-5-dot-7-generated-columns-to-avoid-error-1070/
20. www.vmcd.org
SYS schema In MySQL
New in MySQL 5.7.7, the MySQL sys schema (originally the ps_helper project) is now included by default within the MySQL server
Reference:
http://mysqlserverteam.com/the-mysql-sys-schema-in-mysql-5-7-7/
Improved alter user syntax support in 5.7
Change Alter user syntax and add more useful commands.
Reference:
http://mysqlblog.fivefarmers.com/2015/04/10/improved-alter-user-syntax-support-in-5-7/
21. www.vmcd.org
SSL/TLS IN MYSQL 5.7
Security is receiving more attention and MySQL 5.7 aims to be the most secure MySQL Server release ever.
Reference:
http://mysqlblog.fivefarmers.com/2015/04/09/ssltls-in-mysql-5-7/
Secondary Indexes on XML BLOBs
We can create secondary index on this Column with generated column feature
Reference:
http://mablomy.blogspot.com/2015/04/secondary-indexes-on-xml-blobs-in-mysql.html
22. www.vmcd.org
Emulating roles with expanded proxy user support in 5.7.7
Explain how to use proxy user in MySQL
Reference:
http://mysqlblog.fivefarmers.com/2015/04/08/emulating-roles-with-expanded-proxy-user-support-in-5-7-7/