The Stroz

Testing MySQL Applications With Node.js and Testcontainers
Testing MySQL Applications With Node.js and Testcontainers

Over the years, I have become obsessed with writing code tests. One big pain point with writing tests is testing code that interacts with a database. In this post, we are going to talk about some of the difficulties that may be encountered when writing tests for database interaction and how we can use Testcontainers to mitigate those issues.

Aug 11, 2023
16 minutes
Moving MySQL Databases from Azure to OCI Using MySQL Shell
Moving MySQL Databases from Azure to OCI Using MySQL Shell

In a recent post I talked about how we can move data from MySQL running in AWS to a MySQL HeatWave Database instance running in Oracle Cloud Infrastructure (OCI) with just two commands using MySQL Shell. In this post, I will show how we can use a similar process to move data from Microsoft Azure to OCI.

Jun 30, 2023
6 minutes
Moving MySQL Databases from AWS to OCI Using MySQL Shell
Moving MySQL Databases from AWS to OCI Using MySQL Shell

In previous posts, we talked about how we can use MySQL Shell to dump and load databases and how we can dump data to and from Oracle Cloud Infrastructure (OCI) buckets. In this post, we are going to show how you can use MySQL Shell to dump data from a MySQL RDS database to an S3 bucket and then load that data to a MySQL HeatWave Database instance running in OCI - and with only two commands.

Jun 21, 2023
7 minutes
Using MySQL Shell to Dump Data To And Read Data From OCI Storage Buckets
Using MySQL Shell to Dump Data To And Read Data From OCI Storage Buckets

In a previous post, we discussed how you could use MySQL Shell to dump and load data using a multithreaded process. At the end of the post, I mentioned it was possible to dump data to and load data from cloud services such as Oracle Cloud Infrastructure (OCI). In this post, I will show you how to perform these data dumps and loads using OCI Storage Buckets.

Jun 08, 2023
6 minutes
Multithreaded Data Dumps With MySQL Shell
Multithreaded Data Dumps With MySQL Shell

MySQL Shell is a powerful command line interface for connecting to and managing MySQL instances. One feature of MySQL Shell’s Admin API is being able to dump specific tables (or a subset of data in a table), dump one or more complete schemas, or dump an entire database instance and then restore those dumps as needed. It has the added benefit of doing this in a multithreaded process to make it more efficient.

May 22, 2023
11 minutes
Connecting to a MySQL HeatWave Database Instance Using OpenVPN
Connecting to a MySQL HeatWave Database Instance Using OpenVPN

MySQL HeatWave Database is a fully managed service on Oracle Cloud Infrastructure (OCI) that is developed, managed, and supported by the MySQL team at Oracle. When you provision a new MySQL instance under OCI, you can only connect to the database from inside the OCI network. While this is a great security feature for production services hosted in OCI, it is more challenging to share a development database among developers. In this post, we will show how you can use OpenVPN, running on an OCI Compute instance, to access a MySQL HeatWave Database instance.

Apr 26, 2023
15 minutes
Using Aggregate Functions With MySQL Document Store
Using Aggregate Functions With MySQL Document Store

MySQL Document Store is a JSON document storage solution built on MySQL. One of the advantages of using MySQL Document Store for JSON document storage is when we need to run complex queries for analytics or reporting we can use raw SQL to retrieve data from our JSON documents. But what if we want to view basic aggregate data, such as average, minimum, maximum, etc.? Can we get that data while still using the Document Store API? Yes, we can, and in this post, we will show you how it can be done.

Apr 12, 2023
8 minutes
Viewing MySQL Document Store Queries in MySQL Database Services
Viewing MySQL Document Store Queries in MySQL Database Services

In a previous post, we talked about how you can view the underlying queries that are run when we make calls to the MySQL Document Store API. While this solution works well on a local or other on-premise instance of MySQL, it is not a viable option for viewing those same queries on a MySQL Database Service (MDS) instance running in Oracle Cloud Infrastructure (OCI). We are going to talk about how to view those queries in MDS.

Mar 30, 2023
4 minutes
Using OCI Alarms to Detect When a MySQL Instance Is Unavailable
Using OCI Alarms to Detect When a MySQL Instance Is Unavailable

MySQL Database Service (MDS) is a fully-managed Oracle Cloud Infrastructure (OCI) service that allows you to harness the ease and power of MySQL in the cloud. Since MDS is deployed to OCI, we can take advantage of OCI Alarms to send notifications when a MySQL instance enters a state that is, shall we say, less than favorable. In this post, we will show how to set up an MDS instance and configure an alarm to send an email when the server becomes unavailable.

Mar 15, 2023
5 minutes
Connecting to a MySQL HeatWave Database Instance Using an OCI Network Load Balancer
Connecting to a MySQL HeatWave Database Instance Using an OCI Network Load Balancer

MySQL HeatWave Database is a fully managed service on Oracle Cloud Infrastructure (OCI) that is developed, managed, and supported by the MySQL team at Oracle. When you provision a new MySQL instance under OCI, you can only connect to the database from inside the OCI network. While this is a great security feature for production services hosted in OCI, it is more challenging to share a development database among different developers. In this post, we will show how you can create a Network Load Balancer to allow access to a MySQL HeatWave Database instance over the internet.

Feb 06, 2023
9 minutes