Showing entries 4316 to 4325 of 44147
« 10 Newer Entries | 10 Older Entries »
MySQL Backup Best Practices

Tweet

Today is World Backup Day, so I thought I would use the opportunity to discuss some best practices and general considerations regarding backing up MySQL instances. While I focus on MySQL, several of these tips apply to backups in general.

Backup your data

Before heading into the gory details, let’s first take a look at the best practices at a high level:

  • Make sure you can restore your backups:
    • Document and script the restore procedures. Do you know the steps required to restore a full backup – or a single table?
    • Keep copies of the backups off-site. Do you have a copy of your backup if the data center becomes unavailable for example due to a fire?
    • Validate your …
[Read more]
Replicating data between two MySQL Group Replication sets using “regular” asynchronous replication with Global Transaction Identifiers (GTID’s)

MySQL introduced Group Replication (GR) in version 5.7, and GR is part of the InnoDB Cluster high-availability solution. InnoDB Cluster consists of Group Replication, MySQL Shell and MySQL Router.

I am not going to explain InnoDB Cluster or Group Replication in this post. So, if you aren’t familiar with either one, I have some previous posts in which I have explained how to work with both. See:

MySQL 8.0 Group Replication – …

[Read more]
Deploying Secure Multicloud MySQL Replication on AWS and GCP with VPN

Why Choose MySQL Replication?

Some basics first about the replication technology. MySQL Replication is not complicated! It is easy to implement, monitor, and tune as there are various resources you can leverage - google being one. MySQL Replication does not contain a lot of configuration variables to tune. SQL_THREAD and IO_THREAD's logical errors aren't that hard to understand and fix. MySQL Replication is very popular nowadays and offers a simple way of implementing database High Availability. Powerful features such as GTID (Global Transaction Identifier) instead of the old-fashioned binary log position, or lossless Semi-Synchronous Replication make it more robust.

Related resources

[Read more]
Easy Execution of Dynamic Queries with the sys Schema

Tweet

When you write stored procedures in MySQL, you sometimes need to generate queries on the fly, for example as you process the result of another query. This is supported using prepared statements. This blog explores how you can take advantage of the sys schema to simplify the use of dynamic queries.

Executing a query using the sys.execute_prepared_stmt() procedure.

The sys schema includes several stored procedures and functions as well as views to make the database administrator’s life easier. One of these is the

[Read more]
Webinar: Multimaster MySQL / MariaDB

In case you missed the Multimaster webinar recorded live on Thursday, March 28th, 2019:

Learn how NewVoiceMedia built a global, multi-region MySQL cloud back-end to support a high-volume cloud contact center. 

 

Agenda:

Find out how to deploy Multimaster MySQL / MariaDB / Percona with the following design criteria:

  • Geographically distributed, low-latency data
  • Fast local response times for read & write traffic
  • Full ACID compliance – atomic operations, guaranteed consistency, isolation, and durability
  • Local rapid-failover, automated high availability

 

Speaker:

Chris Parker

Director of Professional Services – EMEA/APAC, is based in the UK, and has over 20 years …

[Read more]
MySQL ash_sampler : A simple ASH Builder

So we have seen until now different built-in ways  to easily collect diagnostics information on MySQL server at different level (Instance/Thread/Statement)  :

But what about analyzing database load ? Does MySQL has a build-in way to display Active Session History ?

MySQL already offer an easy way to display currently active session using the “sys”.”session” view for example but sadly there is no build-in active …

[Read more]
ClusterControl Tips & Tricks - Dealing with MySQL Long Running Queries

Long running queries/statements/transactions are sometimes inevitable in a MySQL environment. In some occasions, a long running query could be a catalyst to a disastrous event. If you care about your database, optimizing query performance and detecting long running queries must be performed regularly. Things do get harder though when multiple instances in a group or cluster are involved.

When dealing with multiple nodes, the repetitive tasks to check every single node is something that we have to avoid. ClusterControl monitors multiple aspects of your database server, including queries. ClusterControl aggregates all the query-related information from all nodes in the group or cluster to provide a centralized view of workload. Right there is a great way to understand your cluster as a whole with minimal effort.

In this blog post, we show you how to detect MySQL long running queries using ClusterControl.

Why a Query Takes …

[Read more]
MySQL 8.0 Group Replication – Three-server installation

MySQL InnoDB Cluster was introduced in MySQL version 5.7. MySQL InnoDB Cluster consists of three parts – Group Replication, MySQL Shell and MySQL Router. MySQL InnoDB Cluster provides a complete high availability solution for MySQL. I am not going to go into the details of InnoDB Cluster and how it works, as there are enough manual pages and blogs to cover these topics.

MySQL InnoDB Cluster manual
Blog sites: mysqlhighavailability.com and mysqlserverteam.com.

Instead, I will be showing you how to install Group Replication on three new installations of mysql 8.0 manually, without using the MySQL Shell.

These instructions should enable you to setup Group Replication in less than an hour. I …

[Read more]
Replicating data between two MySQL Group Replication sets using “regular” asynchronous replication with Global Transaction Identifiers (GTID’s)

MySQL introduced Group Replication (GR) in version 5.7, and GR is part of the InnoDB Cluster high-availability solution. InnoDB Cluster consists of Group Replication, MySQL Shell and MySQL Router.

I am not going to explain Group Replication in this post. So, if you aren’t familiar with Group Replication, I have some previous posts in which I have explained how to work with Group Replication and InnoDB Cluster:

MySQL 8.0 Group Replication – Three-server installation

[Read more]
Every MySQL should have these variables set ...

So over the years, we all learn more and more about what we like and use often in MySQL. 

Currently, I step in and out of a robust about of different systems. I love it being able to see how different companies use MySQL.  I also see several aspect and settings that often get missed. So here are a few things I think should always be set and they not impact your MySQL database. 

At a high level:

  • >Move the Slow log to a table 
  • Set report_host_name 
  • Set master & slaves to use tables
  • Turn off log_queries_not_using_indexes until needed 
  • Side note -- USE  ALGORITHM=INPLACE
  • Side note -- USE mysql_config_editor
  • Side note -- USE  mysql_upgrade  --upgrade-system-tables







Move the Slow log to a …

[Read more]
Showing entries 4316 to 4325 of 44147
« 10 Newer Entries | 10 Older Entries »