Learn what the MySQL JSON data type is when to use MySQL JSON and some caveats to using JSON documents in relational databases.
When you develop an application you expect success, and often success comes with growth problems. These problems especially show themselves in the area of data storage, where being stateful is not as easy to scale as the stateless parts of the application.
There are several stages of approaching database scalability:
- Configuration and query optimization. This step can help a lot, and I would recommend a recent book by Daniel Nichter “Efficient MySQL Performance: Best Practices and Techniques”, which goes into this topic.
- If #1 is done and you continue to push the limits of your database, the next step is to improve the hardware: adding extra memory, improving storage throughput (regular SSD, NVMe storage layer, etc.), or increasing the size of the cloud instances (this is what I call “optimization by credit card”). This typically should help, but only to a certain limit. And there is only so much …
With Terraform OCI provider 4.90.0 (released August 24th, 2022), we have added the possibility to specify the value of editable configuration variables directly from Terraform.
These variables must be defined in a resource of type
oci_mysql_mysql_configuration like
this:
resource "oci_mysql_mysql_configuration" "mds_mysql_configuration" {
#Required
compartment_id = var.compartment_ocid
shape_name = var.mysql_shape
…[Read more]
Mydumper supports streaming of backups right from version 0.11.3 and the latest version Mydumper 0.12.3 it enabled its support for compressed streaming backup. This was the most awaited feature added to Mydumper, making it a more powerful tool for data migration to RDS or Cloud.
If you are hearing mydumper for the first time, then let’s have a quick catch-up on what Mydumper is and what it does exactly.
Mydumper is a multithread logical backup and restores tool for MySQL and its forks. To know more you can refer to our previous blogs/presentations below.
[Read more]Anyone operating a blog, newsletter, or other creative side hustle knows there are a lot of moving pieces involved behind the scenes. Keeping the cadence going not only requires commitment and skills, but also various tools and software…
The Newsletter for PHP and MySQL Developers
Receive a copy of my ebook, “10 MySQL Tips For Everyone”, absolutely free when you subscribe to the OpenLampTech newsletter.
At the time of writing, the OpenLampTech developer newsletter is entering its 10th straight month of publishing so I thought it was time to share a ‘Tools of the Trade – …
[Read more]MySQL HeatWave Best Practices Series: Schema Design MySQL HeatWave is designed to transparently accelerates MySQL performance by orders of magnitude for analytics and mixed workloads without the need of ETL process. Existing MySQL applications can take advantage of the improved performance without any changes. MySQL HeatWave uses MySQL Autopilot, a machine learning based automation, […]
There was an idea. An idea to make Vitess self-reliant. An idea to get rid of the friction between Vitess and external fault-detection-and-repair tools. An idea that gave birth to VTOrc… Both VTOrc and Orchestrator are tools for managing MySQL instances. If I were to describe these tools using a metaphor, I would say that they are kinda like the monitor of a class of students. They are responsible for keeping the MySQL instances in check and fixing them up in case they misbehave, just like how a monitor ensures that no mischief happens in the classroom.
We are looking to provide simplified ways to deploy Percona software in cloud environments, especially for more advanced scenarios like replication and multi-node cluster (in the case of Percona XtraDB Cluster).
For this I propose trying out our new Terraform provider, with the capabilities:
- Deploy in AWS or GCP Cloud. The provider will automatically create instances and deploy Percona Server for MySQL
- Deploy either Percona Server for MySQL or Percona XtraDB Cluster
- Choose instance size
- Choose storage volume size, type, and IOPs
- Multi-node async replication or multi-node Percona XtraDB Cluster
- Customize MySQL configuration file
- Capability to deploy MyRocks …
In a post written earlier this year – Percona Server for MySQL Encryption Options and Choices – I discussed some of the options around encryption in MySQL. Being such a complex topic, that post was meant to clarify and highlight various aspects of “encryption” at different levels. I recently had this topic come up again, but specifically around column-level encryption and various options so I wanted to touch on this in more detail.
As of the current release of Percona Server for MySQL, there is no built-in way to define a single column as encrypted. Ideally, there could be some metadata passed in a create statement and this would just automatically happen, such as this:
CREATE TABLE pii_data ( …
[Read more]Query latencies in one data center are larger than elsewhere for one replication hierarchy, but only in the high percentiles. This impacts production and traffic is being failed away from that data center to protect production.
When the P50 and P90 look okay, but the P99 and the P99.9 do not, the database(s) operate normally, and only some queries are running slow. The initial guess was “for some queries the plan has flipped, but only in that data center.”
But first let’s have a look at the database size and the schema.
The schema in question holds metadata for a change data capture process, and that is not a lot.
# du -sh *
0 coredumps
5.6G data
704M log
0 tmp
# du -sh data/theschema
93M data/theschema
and in memory:
The mysqld process has a …
[Read more]