Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 7151 to 7160 of 45463 « Previous | Next »
InnoDB Page Compression: the Good, the Bad and the Ugly

In this blog post, we’ll look at some of the facets of InnoDB page compression.

Somebody recently asked me about the best way to handle JSON data compression in MySQL. I took a quick look at InnoDB page compression and wanted to share my findings.

There is also some great material on this topic that was prepared and presented by Yura Sorokin at Percona Live Europe 2017: https://www.percona.com/live/e17/sessions/percona-xtradb-compressed-columns-with-dictionaries-an-alternative-to-innodb-table-compression. Yura also implemented …

[Read more]
MySQL Explain Analyzer

tl;dr: The source is at github.com/Preetam/explain-analyzer and you can try it out here.

I read Performance Impacts of Data Volume a few weeks ago on “Use The Index, Luke!” and found the whole workflow really fascinating. Here’s the first paragraph on that page:

The amount of data stored in a database has a great impact on its performance. It is usually accepted that a query becomes slower with additional data in the database. But how great is the performance impact if the data volume doubles? And how can we improve this ratio? These are the key questions when discussing database scalability.

I was thinking about this and how query EXPLAINs from a test environment can help …

[Read more]
Several Ways to Intentionally Fail or Crash your MySQL Instances for Testing

You can take down a MySQL database in multiple ways. Some obvious ways are to shut down the host, pull out the power cable, or hard kill the mysqld process with SIGKILL to simulate an unclean MySQL shutdown behaviour. But there are also less subtle ways to deliberately crash your MySQL server, and then see what kind of chain reaction it triggers. Why would you want to do this? Failure and recovery can have many corner cases, and understanding them can help reduce the element of surprise when things happen in production. Ideally, you would want to simulate failures in a controlled environment, and then design and test database failover procedures.

There are several areas in MySQL that we can tackle, depending on how you want it to fail or crash. You can corrupt the tablespace, overflow the MySQL buffers and caches, limit the resources to starve the server, and also mess around with permissions. In this blog post, we are going to show you some …

[Read more]
This Week in Data with Colin Charles 15: Percona Live 2018 Call for Papers and Best Practices for Observability

Join Percona Chief Evangelist Colin Charles as he covers happenings, gives pointers and provides musings on the open source database community.

So we have announced the call for presentations for Percona Live Santa Clara 2018. Please send your submissions in!

As you probably already know, we have been expanding the content to be more than just MySQL and MongoDB. It really does include more open source databases: the whole of 2016 had a “time series” theme to it, and we of course love to have more PostgreSQL content (there have been tracks dedicated to PostgreSQL for sometime now). I found this one comment interesting recently, from John Arundel, “If you’re going to learn one database really well, make it Postgres.” I have been noticing newer developers jump on the …

[Read more]
SQLyog Thanksgiving Sale has begun

Happy Thanksgiving!

We know everyone likes spending quality time with their family at the holidays. That’s why we thought you might like to start using SQLyog MySQL GUI as you try to accomplish more work in less time.

Get flat 30% off on SQLyog purchases and renewals. Use coupon code: TG30

Upgrade your SQLyog community edition to the commercial version to save tons of time on a daily basis. Purchase here.

If you’re an existing customer and want to extend your license – head right away to Customer Area.

Hurry up, this offer is valid until 23rd November, 23:59 PST.

Cheers,
Team SQLyog

…[Read more]
Optimization to skip index dives with FORCE INDEX.

Index dives are performed during the optimization phase to help decide which index to use. Currently when user specifies FORCE INDEX, optimizer still always calculates cost using index dives. Under some circumstances it is possible to avoid the index dives and this could speed up execution.…

MySQL Workbench 6.3.10 GA has been released

Dear MySQL users,

The MySQL developer tools team announces 6.3.10 as our GA release for
MySQL Workbench 6.3.

For the full list of changes in this revision, visit
http://dev.mysql.com/doc/relnotes/workbench/en/changes-6-3.html

For discussion, join the MySQL Workbench Forums:
http://forums.mysql.com/index.php?152

Download MySQL Workbench 6.3.10 GA now, for Windows, macOS 10.11+,
Oracle Linux 7, Fedora 26 and 27, Ubuntu 16.04 and 17.10
or sources, from:

http://dev.mysql.com/downloads/tools/workbench/

Enjoy!

Changes in MySQL Workbench 6.3.10 (2017-11-15)
Bugs Fixed

* Performance information within the Administration –
Dashboard tab demonstrated a slow rate of refresh on
hosts running macOS High Sierra. (Bug #26921498)

* Tooltips within the Administration – Dashboard tab did
not display when the mouse pointer …

[Read more]
MySQL 8.0 Data Dictionary Tables… and why they should stay protected

With MySQL 8.0, one key feature is the new Data Dictionary.

The system tables that were previously in MyISAM are now replaced by new protected ones in the DD.

My friend Giuseppe already explained how you could see those tables using sandbox  and he also warned you that you should not mess up with them in this post too.

I’ll explain you how you can see those tables and their actual content. But will also explain why we decided to protect them and why it should stay like that.

DD protected internal tables list

The easiest way …

[Read more]
MySQL Performance Tuning Tips for the Shopping Season

With Halloween all but a distant memory, the time has come to turn our attention to the upcoming holiday season. First, Thanksgiving, then Black Friday and Cyber Monday, culminating in the Christmas/boxing week shopping bonanza. For business owners, this time of the year marks the long-awaited year’s end profit taking. For some DBA’s, it brings fear, trepidation, and even sleepless nights toiling away to bring systems back online.

Thankfully, this need not be the case. With a little proactive tweaking of MySQL performance variables, you can insulate your database server(s) against the onslaught of increased demand that the shopping season brings.

Tip #1: Determine the Maximum Number of MySQL Connections

A good starting estimate for the maximum number connections on MySQL is one for every five requests to your web server. A few of those five requests to your web server will be for resources like CSS style sheets, …

[Read more]
MySQL 8.0: Preview @ PHPWorld

These are the slides for my MySQL 8.0 Preview: What is coming? At PHPWorld 2017.

Abstract:

Yes, you read it correctly, we are jumping from 5.7 to 8.0 (that sounds familiar, doesn’t it?). The new version doesn’t only change the number but also changes how you write SQL. Recursive queries will allow you to generate series and work with hierarchical data. New JSON functions and performance improvements were also added to 8.0 to help you work on non-relational data. Expect to see what is new and improved in this talk to power up your application even more.

Please share your feedback at Joind.in: https://joind.in/talk/0e88f

I would like to thank Digital Ocean for enabling my research for this talk …

[Read more]