Mafiree logo
  • About
  • Services
  • Blogs
  • Careers
  • Products
    • orbit logo Orbit
    • streamer logo Xstreami
  • Contact
Schedule a Call
Menu
  • About
  • Services
  • Blogs
  • Careers
  • Products
    • orbit logo Orbit
    • streamer logo Xstreami
  • Contact
  • Schedule a Call
Database
Database Managed Database Services
MySQL MySQL
MySQL Consulting
MySQL Migration Services
MySQL Optimization & Query Tuning
MySQL Database Administration
MySQL Backup & Recovery
MySQL Security & Maintenance
MySQL Cloud Services (AWS RDS, Aurora, Google Cloud SQL, Azure)
MySQL for Ecommerce
MySQL High Availability & Replication
MongoDB MongoDB
MongoDB Consulting
MongoDB Migration Services
MongoDB Optimization & Query Tuning
MongoDB Database Administration
MongoDB Backup & Recovery
MongoDB Security & Maintenance
MongoDB Cloud (Atlas)
MongoDB Solutions by Industry
MongoDB High Availability & Replication
PostgreSQL PostgreSQL
PostgreSQL Consulting
PostgreSQL Migration & Upgrades
Performance Tuning & Query Optimization
PostgreSQL Administration & Managed Services
High Availability, Clustering & Replication
PostgreSQL Backup, Recovery & Disaster Planning
PostgreSQL Security, Compliance & Auditing
PostgreSQL for Analytics & Data Warehousing
PostgreSQL on Cloud & Containers
PostgreSQL Extensions & Open-Source Integrations
PostgreSQL for Every Industry
SQL Server MSSQL
MSSQL Consulting
MSSQL Migration Services
MSSQL Optimization & Query Tuning Services
MSSQL Database Administration Services
MSSQL Backup & Recovery Services
MSSQL High Availability & Replication Services
MSSQL Security & Compliance Services
MSSQL Performance Monitoring & Health Checks
MSSQL Solutions by Industry
Aerospike Aerospike
Aerospike Consulting
Aerospike Migration Services
Aerospike Performance Optimization & Tuning
Aerospike Backup & Recovery
Aerospike High Availability
Aerospike Cloud & Hybrid Deployments
Aerospike for Real-Time Applications (AdTech, FinTech, Retail, IoT)
Clickhouse Clickhouse
ClickHouse Consulting
ClickHouse Migration Services
ClickHouse Optimization & Query Tuning
ClickHouse Database Administration
ClickHouse Backup & Recovery
ClickHouse Security & Maintenance
ClickHouse Cloud Services (ClickHouse Cloud, AWS, GCP, Azure)
ClickHouse Solutions by Industry
ClickHouse High Availability & Replication
TiDB TiDB
TiDB Consulting
TiDB Administration & Maintenance
TiDB Security and Privacy Maintenance
TiDB Performance & Query Optimization
TiDB Migration Services
TiDB Backup & Disaster Recovery
TiDB High Availability Solutions
TiDB Solutions by Industry
TiDB Cloud Services
ScyllaDB ScyllaDB
ScyllaDB Consulting
ScyllaDB Administration & Maintenance
ScyllaDB Security and Privacy Maintenance
ScyllaDB Performance & Query Optimization
ScyllaDB Migration Services
ScyllaDB Backup & Disaster Recovery
ScyllaDB High Availability Solutions
ScyllaDB Solutions by Industry
ScyllaDB Cloud Services
DevOps
DevOps DevOps Services
Version Control Version Control
Kubernetes Kubernetes
Infrastructure Infrastructure Management
Web Servers Web Servers
Networking
Networking Networking Services
Basic Basic
Advanced Advanced
MySQL MySQL
MongoDB MongoDB
PostgreSQL PostgreSQL
MSSQL MSSQL
Aerospike Aerospike
Clickhouse Clickhouse
TiDB TiDB
ScyllaDB ScyllaDB
Version Control Version Control
Kubernetes Kubernetes
Infrastructure Infrastructure Management
Web Servers Web Servers
Basic Basic
Advanced Advanced
MySQL Consulting
MySQL Migration Services
MySQL Optimization & Query Tuning
MySQL Database Administration
MySQL Backup & Recovery
MySQL Security & Maintenance
MySQL Cloud Services (AWS RDS, Aurora, Google Cloud SQL, Azure)
MySQL for Ecommerce
MySQL High Availability & Replication
MongoDB Consulting
MongoDB Migration Services
MongoDB Optimization & Query Tuning
MongoDB Database Administration
MongoDB Backup & Recovery
MongoDB Security & Maintenance
MongoDB Cloud (Atlas)
MongoDB Solutions by Industry
MongoDB High Availability & Replication
PostgreSQL Consulting
PostgreSQL Migration & Upgrades
Performance Tuning & Query Optimization
PostgreSQL Administration & Managed Services
High Availability, Clustering & Replication
PostgreSQL Backup, Recovery & Disaster Planning
PostgreSQL Security, Compliance & Auditing
PostgreSQL for Analytics & Data Warehousing
PostgreSQL on Cloud & Containers
PostgreSQL Extensions & Open-Source Integrations
PostgreSQL for Every Industry
MSSQL Consulting
MSSQL Migration Services
MSSQL Optimization & Query Tuning Services
MSSQL Database Administration Services
MSSQL Backup & Recovery Services
MSSQL High Availability & Replication Services
MSSQL Security & Compliance Services
MSSQL Performance Monitoring & Health Checks
MSSQL Solutions by Industry
Aerospike Consulting
Aerospike Migration Services
Aerospike Performance Optimization & Tuning
Aerospike Backup & Recovery
Aerospike High Availability
Aerospike Cloud & Hybrid Deployments
Aerospike for Real-Time Applications (AdTech, FinTech, Retail, IoT)
ClickHouse Consulting
ClickHouse Migration Services
ClickHouse Optimization & Query Tuning
ClickHouse Database Administration
ClickHouse Backup & Recovery
ClickHouse Security & Maintenance
ClickHouse Cloud Services (ClickHouse Cloud, AWS, GCP, Azure)
ClickHouse Solutions by Industry
ClickHouse High Availability & Replication
TiDB Consulting
TiDB Administration & Maintenance
TiDB Security and Privacy Maintenance
TiDB Performance & Query Optimization
TiDB Migration Services
TiDB Backup & Disaster Recovery
TiDB High Availability Solutions
TiDB Solutions by Industry
TiDB Cloud Services
ScyllaDB Consulting
ScyllaDB Administration & Maintenance
ScyllaDB Security and Privacy Maintenance
ScyllaDB Performance & Query Optimization
ScyllaDB Migration Services
ScyllaDB Backup & Disaster Recovery
ScyllaDB High Availability Solutions
ScyllaDB Solutions by Industry
ScyllaDB Cloud Services
  1. Home
  2. > Blogs
  3. > MySQL
  4. > MySQL Encryption: From Implementation to Audit Readiness

MySQL Encryption: From Implementation to Audit Readiness

Turning on encryption is only half the job of securing a MySQL database. This guide shows how to protect data in transit with TLS, protect stored data with TDE, and keep your encryption keys safe. It also covers how to encrypt logs and backups, and how to avoid the common gaps teams miss.

Abish November 11, 2026

Table of Contents

  • What is MySQL Encryption?
  • Need Help Securing MySQL?
  • 1. Start with the Threat Model
  • 2. Encryption in Transit
  • Configure TLS on the server
  • Configure TLS on the replication
  • Verify it
  • 3. Encryption at Rest (MySQL 8.x)
  • Step 1: Choose a keyring
  • Step 2: Turn on encryption settings
  • Step 3: Encrypt existing objects
  • MariaDB: a different model
  • 4. Key Management
  • 5. Backups and Dumps
  • Backup & Recovery Support
  • 6. When TDE Is Not Enough: Column and Application Encryption
  • 7. The Gaps Most Teams Miss
  • Secure Your MySQL Database

Subscribe for email updates

RSS feed
Summarize with AI: ChatGPT Google AI Perplexity Claude Grok

Encrypting a MySQL database is not just a configuration change. It is a chain of controls covering data in transit, data at rest, backups, and the keys that protect them. This guide walks through each layer for MySQL 8.x, highlights the gaps teams commonly miss, and shows how to build the evidence an auditor expects.

What is MySQL Encryption?

MySQL encryption protects database information by converting it into unreadable form using secret keys. It covers three areas: data in transit (protected by TLS), data at rest (protected by Transparent Data Encryption, or TDE), and the keys, logs and backups that support them. If the data is intercepted or stolen, it stays unreadable without the key.

  • Why it matters: Data breaches often come from stolen disks, snapshots, backups, and logs, not just from database login attacks. Regulations such as PCI DSS, ISO 27001, SOC 2, and India’s DPDP Act expect documented, verifiable encryption.
  • Three layers to cover:
    • In transit – TLS between clients, servers, and replicas;
    • At rest – TDE for tablespaces, redo/undo, temp files, and binlogs;
    • Key management – external KMS/Vault, rotation, and separation of duties.
  • The gap most teams have: Encryption is “on” but binlogs and relay logs are plaintext, keys sit beside the data, TLS is enabled but not enforced, and no one has tested a restore.
  • Backups count too: Dumps, physical backups, and replicas must be encrypted, with keys stored separately from them.
  • MySQL vs MariaDB: Both support encryption, but the settings, key plugins, and rollout behavior differ. MariaDB encrypts in the background, while MySQL rebuilds tables.
  • Who should read it: DBAs, DevOps/SRE, and security or compliance engineers preparing for audits.

Need Help Securing MySQL?

Get expert support for MySQL security and encryption.

Explore MySQL Security Services →

1. Start with the Threat Model

Before touching any configuration, write down what you are protecting and from whom. Encryption controls only make sense when mapped to a threat.

Data location Typical threat Control
Client to server, replication links Sniffing, man-in-the-middle TLS 1.2 / 1.3
Tablespaces, redo/undo, temp files Stolen disk or VM snapshot Transparent Data Encryption (TDE)
Binary and relay logs Log theft (they contain full row data) Binlog encryption
Backups and dumps Backup media theft Encrypted backups
Highly sensitive columns (card numbers, national IDs) DBA or application-level exposure Application or column encryption
Keys Everything above Key management and rotation

2. Encryption in Transit

It scrambles data as it travels between the app and the database, so anyone listening on the network sees only gibberish. Turning it on is not enough; you must also require it, or insecure connections can still slip through.

Configure TLS on the server

[mysqld]
                        ssl_ca=/etc/mysql/certs/ca.pem
                        ssl_cert=/etc/mysql/certs/server-cert.pem
                        ssl_key=/etc/mysql/certs/server-key.pem
                        tls_version=TLSv1.2,TLSv1.3
                        require_secure_transport=ON

Turning TLS on only allows encrypted connections. Plaintext clients still connect unless you enforce it. require_secure_transport=ON enforces it globally.

Configure TLS on the replication

Replication traffic carries your data too. On the replica:

CHANGE REPLICATION SOURCE TO
                        SOURCE_HOST='db-primary.example.internal',
                        SOURCE_SSL=1,
                        SOURCE_SSL_CA='/etc/mysql/certs/ca.pem',
                        SOURCE_SSL_CERT='/etc/mysql/certs/client-cert.pem',
                        SOURCE_SSL_KEY='/etc/mysql/certs/client-key.pem';

On older MySQL versions and on MariaDB, use CHANGE MASTER TO ... MASTER_SSL=1 with the matching MASTER_SSL_* options.

Verify it

SHOW GLOBAL VARIABLES LIKE 'tls_version';
                        SHOW GLOBAL VARIABLES LIKE 'require_secure_transport';
                        SHOW SESSION STATUS LIKE 'Ssl_cipher';

To find plaintext connections across the server (MySQL):

SELECT t.PROCESSLIST_USER AS user,
                        t.PROCESSLIST_HOST AS host,
                        s.VARIABLE_VALUE   AS cipher
                        FROM performance_schema.threads t
                        JOIN performance_schema.status_by_thread s USING (THREAD_ID)
                        WHERE s.VARIABLE_NAME = 'Ssl_cipher'
                        AND t.TYPE = 'FOREGROUND';

The empty cipher on legacy_job means a plaintext connection. That is exactly the finding you want to discover before the auditor does.

Pro Tip: Run this query on a schedule and keep the results as audit evidence.

3. Encryption at Rest (MySQL 8.x)

This scrambles data stored on disk, so a stolen hard drive or snapshot is unreadable. The database locks and unlocks the data automatically, so applications keep working unchanged.

Step 1: Choose a keyring

TDE needs a place to keep the master key. Prefer the component-based keyring (component_keyring_file, component_keyring_encrypted_file, or the Enterprise and Percona options for Vault, KMIP and cloud KMS). The older keyring plugins are deprecated.

A plain file keyring on the same disk as the data is fine for a lab, but it is hard to defend in an audit: whoever steals the disk steals the key as well. For production, use Vault or a cloud KMS.

Step 2: Turn on encryption settings

[mysqld]
                        default_table_encryption=ON
                        table_encryption_privilege_check=ON
                        innodb_redo_log_encrypt=ON
                        innodb_undo_log_encrypt=ON
                        innodb_temp_tablespaces_encrypt=ON
                        binlog_encryption=ON

Note that binlog_encryption=ON also encrypts relay logs on replicas.

Step 3: Encrypt existing objects

default_table_encryption only affects new tables. Existing ones stay plaintext until you convert them:

-- A single table (this rebuilds it)
                        ALTER TABLE sales.orders ENCRYPTION='Y';

MariaDB: a different model

MariaDB uses plugins and encrypts in the background with worker threads, so there is no big-bang rebuild:

[mysqld]
                        plugin_load_add=file_key_management   # or hashicorp_key_management
                        file_key_management_filename=/secure/keys.enc
                        file_key_management_encryption_algorithm=AES_CBC
                        innodb_encrypt_tables=ON               # or FORCE
                        innodb_encrypt_log=ON
                        innodb_encryption_threads=4
                        innodb_encryption_rotate_key_age=1
                        encrypt_binlog=ON
                        aria_encrypt_tables=ON
                        encrypt_tmp_disk_tables=ON
                        encrypt_tmp_files=ON

Track progress with information_schema.INNODB_TABLESPACES_ENCRYPTION. As with MySQL, keep the key file itself encrypted and off the data volume; Hashicorp Vault or a KMS is the better production choice.

4. Key Management

The keyring holds the secret keys that lock the data. Keeping it on the same disk as the data is like taping a safe’s key to the safe, so use a separate vault or key service. Encryption is only as strong as the handling of its keys.

  1. Separation of duties: DBAs should not be the sole custodians of master keys.
  2. External storage: Keep keys in a KMS or vault, never on the same volume as the data.
  3. Rotation: Rotate on a schedule (at least annually, or per your policy) and log it.
  4. Backup: Back up the keys separately from the data and test a restore. A lost keyring means permanently unrecoverable data.
  5. Log access: Record who can read keys, with access logged at the vault level.
Note: Master key rotation re-encrypts only the tablespace keys, so it is fast. Rotating the underlying data keys requires rebuilding the mysql tables.

5. Backups and Dumps

An encrypted database with an unencrypted backup is an unencrypted database.

# Logical backup, encrypted with GPG
                        mysqldump --single-transaction --routines sales | gzip | gpg --encrypt --recipient backup-key@example.com > sales_$(date +%F).sql.gz.gpg
                        # Logical backup, encrypted with OpenSSL
                        mysqldump --single-transaction sales | openssl enc -aes-256-cbc -pbkdf2 -salt -pass file:/secure/backup.pass > sales_$(date +%F).sql.enc

For physical backups, use xtrabackup or mariabackup with their encryption options. Add storage-layer encryption too (for example S3 SSE-KMS), keep keys separate from the backup location, and schedule restore tests. A restore test that succeeds with the retrieved key is audit evidence.

Backup & Recovery Support

For restore testing and recovery planning, see our MySQL backup and recovery services.

Explore Backup Services →

6. When TDE Is Not Enough: Column and Application Encryption

Because TDE is transparent, anyone with SELECT sees plaintext. For regulated fields such as card numbers or national IDs, add another layer:

  • Application-layer encryption with envelope keys (preferred): the app encrypts before writing, so the database only ever stores ciphertext.
  • AES_ENCRYPT() / AES_DECRYPT(): avoid unless you control the risks, because the key appears in the SQL text and can land in the general and slow logs.

7. The Gaps Most Teams Miss

Even teams that "enabled encryption" often leave these exposed:

  • Binary logs and relay logs: the most common gap, and they hold full row data.
  • Temporary tablespaces and on-disk temp tables.
  • The mysql system schema, undo logs and redo logs.
  • General, slow and audit logs: they can contain literal values, so protect them with file permissions or ship them encrypted.
  • Backups, dumps and replicas: a replica needs its own keyring configuration or it cannot read encrypted tables.

Secure Your MySQL Database

Get expert help with database security, encryption, and audit readiness.

Talk to Mafiree →

FAQ

It is the practice of scrambling MySQL data so that only someone with the right key can read it. It covers data moving over the network (in transit), data stored on disk (at rest), and backups and logs.
Encryption in transit (TLS) protects data while it travels between the application, the server and replicas. Encryption at rest (TDE) protects data stored on disk, such as tablespaces, logs and snapshots.
No. TDE protects against stolen disks, snapshots and backups. A user with a valid login can still read the data, because the database decrypts it for them. Sensitive fields may need application-level encryption as well.
No. Enabling TLS only allows encrypted connections. You must also require them, using require_secure_transport=ON or REQUIRE SSL on user accounts, so plaintext connections are refused.
Binary logs and backups contain full copies of your data. If they are left unencrypted, someone who steals them can read everything, even when the main tables are encrypted.
In a separate key vault or key management service, never on the same disk as the data. Keys should also be rotated regularly, backed up separately and accessed by only a few people.
They typically ask for a written policy, dated configuration settings, a report of what is encrypted, a connection report, a key rotation log, restore test records, an access review and a list of approved exceptions.
The goals are the same, but the settings and key plugins differ. MariaDB encrypts tables in the background with worker threads, while MySQL rebuilds a table when you encrypt it.

Leave a Comment

Related Blogs

Why Your MySQL Queries Are Getting Slower as You Scale — And How to Fix It Before It Costs You Customers

Slow MySQL queries can cost you customers. This guide explains why performance degrades under scale and how to fix it before it impacts your business. We cover warning signs, root causes, and Mafiree's expert tuning services.

  167 views
MySQL Version Upgrade: Business Drivers, Risk Assessment and Zero-Downtime Strategies for Enterprise Migrations

A MySQL version upgrade moves a database from an older release to a newer version while maintaining application compatibility and data integrity. Key reasons to upgrade include security, performance, compliance, and access to newer features. Major upgrade risks include compatibility issues, data integrity problems, downtime, and application failures. A successful upgrade requires planning, compatibility testing, backups, migration, validation, and a rollback plan. Zero-downtime approaches can use replication, load balancing, MySQL Router, or ProxySQL depending on the architecture.

  316 views
Diagnosing MySQL Disk I/O Bottlenecks: InnoDB I/O Saturation and Query Performance Impact

A MySQL disk I/O bottleneck occurs when the storage subsystem cannot keep up with the database’s read and write workload. Common signs include high I/O wait times, increased query latency, and high disk utilization. Performance Schema, iostat, and pt-ioprofile can help identify the source of I/O pressure. Common optimization approaches include increasing the InnoDB buffer pool, improving storage configuration, and reducing unnecessary disk reads through query and index optimization.

  369 views
MySQL Incident Response: When Does Slow Response Signal a Support Model Gap?

Slow MySQL incident resolution is often a symptom of a weak support model—not just a technical problem. Learn how to identify gaps in escalation, monitoring, automation, DBA expertise, and post-incident reviews before they lead to recurring downtime.

  422 views
MySQL Deadlock Analysis: Diagnosing and Resolving Lock Contention in High-Concurrency Workloads

A MySQL deadlock occurs when two or more transactions hold locks that each other needs, creating a circular dependency that prevents them from proceeding. InnoDB detects the deadlock and rolls back one transaction; applications typically receive MySQL error 1213 and should safely retry the transaction. To diagnose a deadlock, start with SHOW ENGINE INNODB STATUS; for recurring incidents, use innodb_print_all_deadlocks and Performance Schema data_locks and data_lock_waits to investigate lock relationships. Common causes include inconsistent transaction ordering, long-running transactions, and inefficient indexing or locking patterns. The most effective fixes are to keep transactions short, access shared resources in a consistent order, optimize the indexes used by locking statements, and implement safe retry handling.

  901 views
MySQL Consulting vs In-House DBA: Which Is Right for Your Team?

Choose an in-house DBA when you need continuous database ownership, deep knowledge of internal systems, and day-to-day operational control. Choose MySQL consulting when you need specialized expertise, performance tuning, migrations, complex troubleshooting, or additional database capacity without hiring a full-time specialist. A hybrid model can be the best fit when your team handles routine database operations internally but needs external expertise for complex projects, peak workloads, or specialized MySQL problems. The right choice depends on workload consistency, technical complexity, required coverage, internal expertise, scalability, and total cost—not simply the hourly or salary cost. Mafiree's managed database services provide ongoing MySQL support alongside specialized database expertise for organizations that need more flexibility than a purely in-house model.

  559 views
MySQL Consultant: When to Call in a Performance Expert

Most MySQL slowdowns are fixable in-house. A smaller set of problems keep coming back, keep growing, or sit outside what routine tuning can solve — and that's the line worth knowing before an incident forces the decision for you.

  625 views
MySQL Performance Issues: 7 Signs You Need Professional Tuning

MySQL performance issues are rarely sudden — they build over time through slow queries, InnoDB buffer pool misses, replication lag, lock contention, thread pile-ups, tablespace bloat, and unstable query plans. This post identifies the seven most reliable signs that your MySQL environment needs professional DBA attention, with diagnostic queries and remediation guidance for each.

  13622 views
Column-Level Security: Enterprise Data Protection Without the Infrastructure Overhead

Column-level security is a native database feature that restricts access to specific table columns by user role. Mafiree implemented this for a client as a cost-effective replacement for a planned CDC replication architecture that existed solely to strip sensitive columns. The result: zero additional infrastructure, single source of truth, full GDPR/HIPAA compliance posture, and validated in production with no performance impact.

  1723 views
MySQL Schema Migration Without Downtime: A Real Fintech Case Study

Schema changes on large MySQL tables can bring production systems to a halt if not handled correctly. This case study walks through how Mafiree helped a fintech client execute a zero-downtime MySQL schema migration on a 500M+ row production database — covering the real challenges faced, the three-phase tool strategy using gh-ost, pt-online-schema-change, and MySQL 8.0 INSTANT DDL, production configuration settings with performance benchmarks, and best practices for safely evolving your MySQL schema without impacting users

  4845 views
MySQL Architecture Explained: Performance Tuning & Troubleshooting Guide

MySQL features a unique tiered architecture that separates query processing from data storage through its pluggable storage engine model. This guide explores the core components—from connection handling and the SQL optimizer to the physical storage of data on disk. By understanding how engines like InnoDB provide ACID compliance and row-level locking, you can significantly improve your database's scalability. We also break down the query execution workflow and provide actionable tips for performance tuning, such as optimizing the buffer pool. Whether you're managing a replica set or a standalone instance, mastering MySQL’s internal structure is essential for building high-performance applications.

  2625 views
MariaDB vs MySQL: What's Different in 2026 and Which One Should You Use

Discover how MariaDB 11.x is redefining open-source databases with cutting-edge features like system-versioned tables, native AI-ready vector support, UUIDv7 for scalable inserts, and enterprise-grade security; all in the Community Edition, without the paywall.

  2146 views
MySQL’s Connection Control Plugin for Brute-Force Protection: A DBA Security Guide

“Fortify Your MySQL Security: Slow Down Attackers with Connection Control Plugin” Learn how the MySQL Connection Control Plugin helps defend against brute-force login attempts by introducing intelligent, progressive delays—without locking out legitimate users.

  13596 views
MySQL 8.4 Migration: Key Changes for IT Leaders

Explore the 8 critical changes in MySQL 8.4 you need to know before migrating your production environment. From authentication updates to InnoDB defaults, this release brings significant operational implications for developers and DBAs.

  1186 views
Load Balancing in MySQL: Read and Write Traffic Optimization Using MySQL Router

Optimize MySQL traffic with MySQL Router — smart load balancing made easyRouter Architecture image widget

  2369 views
Check Constraints in MySQL

Master Database Integrity with Check Constraints: Improve Data Quality and System Performance

  13522 views
Guarding Your Account: 5 Essential Tips to Evade Common Password Mistakes.

How to Secure your mysql database with the mysql validate password component

  3890 views
Access Control & Account Management In MySQL 8

Discover how MySQL 8 enhances security through features like password expiry, password validation, account lock/unlock, privilege management, and dual passwords. Safeguard your valuable data and streamline access control in your MySQL environment.

  4230 views
Significance of using Invisible Primary key (GIPK) with MySQL 8.0

How Generated Invisible Primary Keys (GIPK) Can Boost Your Database Efficiency

  4045 views
Optimize Your Database: Exploring MySQL 8.0 JSON Functions

This blog highlights the some of the important JSON function in MySQL 8.0 with examples. Level up your SQL skills with MySQL 8.0's JSON functions.

  5455 views
Best practices on enabling Audit log on MySQL, MariaDB and ProxySQL

Importance of audit log in MySQL, MariaDB and ProxySQL. Best practices to enable audit log

  5558 views
High Availability for MySQL using Orchestrator and ProxySQL

Auto slave promotion without any DBAs intervention using Orchestrator and ProxySQL. If you are looking for a HA solution without going for synchronous replication or Aws RDS then Orchestrator with ProxySQL is a great choice.

  4228 views
Understanding the Spider Storage Engine

MariaDB Spider is a storage engine that supports federation and sharding across multiple MySQL or MariaDB servers. It helps distribute data and workloads, making it useful for scaling large datasets, balancing traffic, and improving data retrieval through parallel processing.

  2107 views
Avoid deadlocks, certification failures on Galera Cluster using ProxySQL

Dealing with deadlocks, certification failures on Galera cluster by running single node writer using ProxySQL

  7504 views
MySQL Character Set: UTF8MB4 vs UTF8 and How to Choose the Right Encoding

Choosing the right MySQL character set is critical for ensuring accurate data storage, multilingual support, and proper text comparison. While the legacy utf8 (utf8mb3) character set supports only up to 3-byte characters, it fails to handle modern Unicode requirements such as emojis and certain international symbols. In contrast, utf8mb4 provides full 4-byte Unicode support, making it the recommended standard for modern applications. This guide explains the differences between UTF8MB4 and UTF8, their impact on storage and performance, and provides step-by-step instructions to configure and migrate your MySQL databases safely.

  6358 views
Real time data streaming from MariaDB to Columnstore

How real time data from transactional database(mariadb) to analytic database(columnstore) is achieved using MariaDB's maxscale binlog streaming

  1797 views
Fixing the MariaDB Galera Bug: WSREP Lock Waits

A MariaDB Galera cluster can experience severe stalls when concurrent updates to the same primary key trigger an unexpected deadlock issue. This blog explains how we reproduced the issue in MariaDB 10.2, why the affected node became unresponsive, and the recovery and upgrade options used to resolve it.

  4969 views

Subscribe for email updates

RSS feed
Get in touch with us

Highlights

More than 6000 Servers Monitored

Happy Clients

Certified DBAs

24 x 7 x 365 Support

PCI

Database Services

MySQL MongoDB PostgreSQL SQL Server Aerospike Clickhouse TiDB ScyllaDB

Quick Links

Careers Blog Contact Privacy Policy Disclaimer Policy

Contacts

Linkedin Mafiree Facebook Mafiree Twitter Mafiree

Nagercoil Office

Miru IT Park, Vallankumaranvillai,

Nagercoil, Tamilnadu - 629 002.

Bangalore Office

Unit 303, Vanguard Rise,

5th Main, Konena Agrahara,

Old Airport Road, Bangalore - 560 017.

Call: +91 6383016411

Email: sales@mafiree.com


Copyright © - All Rights Reserved - Mafiree