Summary: If you are using innodb_flush_method = O_DIRECT (which is highly recommended for a bunch of reasons) and innodb_track_changed_pages the instance will crash if you query any tables related to that feature. So innodb_track_changed_pages is a Percona system variable which … Continue reading →
This blog post examines the recent MySQL® ransomware attacks, and what open source database security best practices could have prevented them.
Unless you’ve been living under a rock, you know that there has been an uptick in ransomware for MongoDB and Elasticsearch deployments. Recently, we’re seeing the same for MySQL.
Let’s look and see if this is MySQL’s fault.
Other Ransomware Targets
Let’s briefly touch on how Elasticsearch and MongoDB became easy targets…
Elasticsearch
…
[Read more]UPDATE: Some of the language in the original post was considered overly-critical of Oracle by some community members. This was not my intent, and I’ve modified the language to be less so. I’ve also changed term “synchronous” (which the use of is inaccurate and misleading) to “virtually synchronous.” This term is more accurate and already used by both technologies’ founders, and should be less misleading.
I also wanted to thank Jean-François Gagné for pointing out the incorrect sentence about multi-threaded slaves in Group Replication, which I also corrected accordingly.
In today’s blog post, I will briefly compare two major virtually synchronous replication technologies available today for MySQL.
More Than Asynchronous Replication
…
[Read more]
Sometimes MySQL surprises you in ways you would have never
imagined.
Would you think that the order in which the indexes appear in a
table matters?
It does. Mind you, not the order of the columns - the order of
the indexes.
MySQL optimizer can, in specific circumstances, take different
paths, sometimes with nefarious effects.
Please consider the following table:
CREATE TABLE `mypartitionedtable ` (
`HASH_ID` char(64) NOT NULL,
`RAW_DATA` mediumblob NOT NULL,
`EXPIRE_DATE` timestamp NOT NULL DEFAULT
CURRENT_TIMESTAMP,
KEY `EXPIRE_DATE_IX` (`EXPIRE_DATE`),
KEY `HASH_ID_IX` (`HASH_ID`)
) ENGINE=TokuDB DEFAULT CHARSET=latin1
ROW_FORMAT=TOKUDB_UNCOMPRESSED
/*!50100 PARTITION BY RANGE (UNIX_TIMESTAMP(EXPIRE_DATE))
(PARTITION p2005 VALUES LESS THAN (1487847600) ENGINE = …
The documentation states that “For a transaction to commit, the majority of the group have to agree on the order of a given transaction in the global sequence of transactions.”
This means that as soon as the majority of nodes member of the group ack the writeset reception, certification can start. So, as a picture is worth a 1000 words, this is what it looks like if we take the illustrations from my previous post:
a group of 3 members
zoom in transaction deliverthe writer also acksmajority is reached, the system agreed on the orderack of the remaining node will come too but the order has been already decided
certification can startthe process then continues as usual
So theoretically, having 2 nodes in one DC and 1 node in another DC shouldn’t be affected …
[Read more]This post is a case study of a job I had to do in a legacy application, it doesn’t mean it will apply to you, but it might.
This is a table of contents:
- Performance
- Searching
- Converting to a JSON array
- 1st step: remove the leading commas
- 2nd step: add brackets to the string
- 3rd step: validate if the changes works
- Replacing 1st step and …
Please join Sveta Smirnova, Percona’s
Principal Technical Services Engineer, as she presents Troubleshooting MySQL Access Privileges Issues
on
February 23, 2017 at 11:00 am PST / 2:00 pm EST (UTC-8).
Do you have registered users who can’t connect to the MySQL server? Strangers modifying data to which they shouldn’t have access?
MySQL supports a rich set of user privilege options and allows you to fine tune access to every object in the server. The latest versions support authentication plugins that help to create more access patterns.
However, finding errors in …
[Read more]Percona announces the GA release of Percona XtraBackup 2.4.6 on February 22, 2017. You can download it from our download site and apt and yum repositories.
Percona XtraBackup enables MySQL backups without blocking user queries, making it ideal for companies with large data sets and mission-critical applications that cannot tolerate long periods of downtime. Offered free as an open source solution, Percona …
[Read more]Percona announces the release of Percona XtraBackup 2.3.7 on February 22, 2017. Downloads are available from our download site or Percona Software Repositories.
Percona XtraBackup enables MySQL backups without blocking user queries, making it ideal for companies with large data sets and mission-critical applications that cannot tolerate long periods of downtime. Offered free as an open source solution, Percona XtraBackup drives down backup costs while providing unique features for MySQL backups.
This release is the …
[Read more]MySQL Connector/Net 6.10.1 beta is the second release which supports Scaffold-DbContext, that enables the creation of corresponding model classes from an existing database that are compatible with Entity Framework (EF) Core 1.1.
To download MySQL Connector/Net 6.10.1 beta, see the “Development Releases” tab at http://dev.mysql.com/downloads/connector/net/
Known limitations of this release
- The output classes cannot exist prior to using the EF Core database first feature.
- The target database must have a table with a primary key.
- The target database cannot contain one or more views.
- The JSON data exchange format is not supported by the EF Core database first feature.
- No error message is provided when a table given as input does not exist in the database and a model context is …