At a recent optimizer webinar, I talked about MySQL introducing a new style for hints, and that MySQL 5.7 also added support for more hints, see Sergey Glukhov’s blog. A question I got at the end of the webinar was what to do with the hints in the application code after an upgrade?…
Time for another entry in the EXPLAIN FORMAT=JSON is cool! series of blog posts. This time we’ll discuss how using EXPLAIN FORMAT=JSON allows you to see that
cost_info
knows why the optimizer prefers one index to another.
Tables often have more than one index. Any of these indexes can be used to resolve query. The optimizer has to make a choice in this case. One of the metrics that can be used to help make the choice is the potential cost of the query evaluation.
For example, let’s take the table
titles
from the standard employees database:
…[Read more]
Are you building an IOT solution and want to know how to store
and retrieve your IOT data? Perhaps you're new to database
systems and want to learn how to use them while you explore the
exciting world of IOT.
This book is the answer for both scenarios; whether you're new to
IOT and want to know how to leverage MySQL in your solution or
you've wanted to learn more about MySQL, this book will provide
many of the answers you seek.
The book also covers how to design your IOT solution around your
data. Not only will you learn more about MySQL, but you will also
see how best to deploy MySQL in your IOT solution using low-cost
computer boards such as the Raspberry Pi, Beaglebone Black, Intel
Galileo, and more.
Finally, the book will give you a thorough overview of how data
can be augmented and annotated to make it easier to glean the
golden nuggets of knowledge you seek while wading through your
sensor data. …
After nearly ten years working for MySQL, I’m pursuing a new opportunity to expand into new areas of open source data infrastructure as part of the excellent Cloudera support organization. I’ve been fortunate to work with incredibly talented, dedicated and wonderful people on relational databases, and I’m looking forward to doing the same in the Hadoop space in my new role. Despite this transition, I intend to remain active in the MySQL community – most immediately, finishing off a handful of half-finished blog posts in the coming weeks.
My various bit roles at MySQL have given me a front-row seat as the company grew from a smaller independent company to a prominent product at Sun to part of a much larger, enterprise-focused portfolio within Oracle. I’m incredibly proud of the progress MySQL has made over the years, in each stage – but the past 6 years under the stewardship of Oracle are …
[Read more]Grafana is the leading graph and dashboard builder for visualizing time series, which is a great tool for visual monitoring of MySQL databases. Come learn how to use Grafana for MySQL monitoring.
In this webinar, Torkel Odegaard, Grafana Founder and Creator, will provide an introduction to Grafana and talk about adding data sources, creating dashboards and getting the most out of your data visualization. Then Peter Zaitsev, Percona Co-Founder and CEO, will demonstrate how to set up Grafana and Prometheus for in-depth, completely open source monitoring for MySQL troubleshooting and capacity planning. They will look into some features Grafana has to offer, explain why different graphs are important and how you …
[Read more]Problem:
When multiple client applications such as web applications, desktop applications and mobile applications written in different languages like php, python, java, objective c, etc. need to perform the same database operation (insert), the same operations done by different client applications and client applications are directly accessing the database table using same SQL statement.
Solutions:We are implementing stored procedure; here the client
applications will simply call the defined stored procedures to
perform the database operation (insert). In this post let us see
about the syntax of the stored procedure and will see an example
of insert operation using stored procedure using MySQL.
Syntax:
mysql> DELIMITER //
mysql> CREATE PROCEDURE Procedure_name(arguments)
-> BEGIN
->
-> SQL Statements;…[Read more]
The MariaDB project is pleased to announce the immediate availability of MariaDB 10.0.24. See the release notes and changelog for details on this release. Download MariaDB 10.0.24 Release Notes Changelog What is MariaDB 10.0? MariaDB APT and YUM Repository Configuration Generator Thanks, and enjoy MariaDB!
The post MariaDB 10.0.24 now available appeared first on MariaDB.org.
If you use a storage engine that supports transactions, you
probably have faced or heard of deadlock's.
From MySQL Documentation:
“Always be prepared to re-issue a transaction if it fails due to
deadlock. Deadlocks are not dangerous. Just try again.”
At work, we had an important job that sometimes were failing due to dead lock. I wanted to enhance it, so it will do what the documentation says ( Retry the transaction ). In order to do that, I wanted to have a scenario where I was able to reproduce the deadlock and the victim transaction was the one from the job I was fixing.
Create a deadlock is simple, you just need to have 2 sessions
that each one holds a lock that the other is waiting for. For
example:
We have a table that has 4 entries on it (entry 1, entry 2, entry
3, entry 4) and we have 2 …
This blog post was co-authored by Peter Sylvester and Valerie Parham-Thompson
Introduced in version 10.1.3 (and with substantial changes in 10.1.4), the MariaDB data encryption at rest feature allows for transparent encryption at the tablespace level for various storage engines, including InnoDB and Aria.
Before now, there have been only two widely accepted encryption methods for MySQL/MariaDB: encryption at the file system level, or encryption at the column level. For comparison, we’ll do a brief overview of how these work, as well as the pros and cons typically associated with each option.
File System Encryption
This is performed by setting a file system to be encrypted at the block level within the operating system itself, and then specifying that the encrypted volume should be the location of the data directory for MySQL/MariaDB. You can also use encrypted volumes to store MariaDB binary logs. …
[Read more]
Graph databases are great. But if I read more FUD about RDBMSs,
I’m going to have another flashback to the 80’s
where someone is telling me about how you don’t want to
dismantle your car every time you park it in the garage
(OODBMS reference for the oldies).
I recently read a graph-database book that explained that
every SQL join requires computing a cartesian product. And
yesterday, a post that explained that equijoins have an
exponential order of complexity. (I guess… if the exponent is 1.)
It’s getting very frustrating to read through the inaccuracies
and FUD, and now, to me, it is all just turning into
Which is why it was nice to see @guyharrison‘s even-handed and accurate treatment in his new book …
[Read more]