Showing entries 111 to 120 of 287
« 10 Newer Entries | 10 Older Entries »
Displaying posts with tag: 8.0 (reset)
MySQL 8.0.24: thank you for the contributions

MySQL 8.0.24 has been released today \o/

As usual, it’s highly advised to read the release notes to get informed about the changes and bug fixed.

MySQL is Open Source and each release contains contributions from our great Community. Let me thanks all the contributors on behalf of the entire MySQL Team: Thank you !

MySQL 8.024 includes contributions from Daniël van Eeden, Kaiwang Chen, Zhai Weixiang, Venkatesh Prasad Venugopal, Jingbo Zhao, Yuxiang Jiang, Brian Yue, Hope Lee, Stanislav Revin, Mattias Jonsson, Facebook and a suggestion from Dmitriy Philimonov.

Once again, thank you all for your great contributions.

Here is the list of the above contributions and related bugs:

[Read more]
How to copy a Schema using MySQL Shell Dump & Load Utility ?

Another common question I receive about MySQL Shell Dump & Load Utility is how to dump a schema and load it with another name. Make a copy in fact.

Dumping the Schema

To do so, we need to use the dumpTables() method:

JS  util.dumpTables("test", [], "/tmp/dump", {all: true})

It is important to notice that the second parameter is an empty array and the option “all” is enabled.

This will dump all tables of the test schena into /tmp/dump.

Loading the data into another Schema

Now, we will load the data we previously dump into another schema.

The first thing to do is to create the destination schema:

JS  \sql create database test2

And finally, we load the data:

JS  …
[Read more]
MySQL Shell Dump how to deal with array arguments in non-interactive mode

As you know, the best way to perform logical dump for MySQL is to use MySQL Shell Dump & Load utilities. This is the most powerful option as it can dump and load in parallel (it also include many options to migrate to MDS very easily and supports OCI Object Store too).

One of the main question I receive related to MySQL Shell utility is related to the use of MySQL Shell in non-interactive mode with parameters requiring arrays.

What does that mean ?

For example if you want to dump a MySQL instance but you want to exclude some tables, you have an option called excludeSchemas and it expect an array of strings with the list of schemas you want to exclude in the dumb.

In interactive mode, this is how we use it:

JS> util.dumpInstance("/tmp/dump", {excludeSchemas: 
    ["mysql_innodb_cluster_metadata", "fred_test"], 
    threads: 8, showProgress: true})

However this notation is not …

[Read more]
Setup DR for your MySQL InnoDB Cluster

MySQL InnoDB Cluster is the High Availability solution for MySQL. It delivers automatic fail-over and guarantees zero data loss (RPO=0).

RPO: Recovery Point Objective describes the interval of time that might pass during a disruption before the quantity of data lost during that period exceeds the Business Continuity Plan’s maximum allowable tolerance.

Example: our business architecture needs to have RPO=2 minutes. This means that in case of failure, 2 minutes of data can be lost.

However, and we saw this recently in Europe, an entire data center can “disappear” instantaneously… So it’s also important to have a Disaster Recovery plan.

One solution, is to have an InnoDB Cluster (Group Replication) that spans across multiple regions. However, this is often not feasible because of high latency across regions.

Another solution is InnoDB Cluster in one region with Asynchronous …

[Read more]
How to copy a MySQL user to OCI MDS ?

When you migrate to MySQL Database Service on Oracle Cloud Infrastructure (MDS on OCI), the easiest, fastest and recommended way it to use MySQL Dump & Load Utility.

For more information check these different links:

[Read more]
Using OpenVPN with MySQL Database Service

I’ve already provided some solutions to connect to your MDS instance, using MySQL Router, SSH tunnel, … but one of the best way if you have multiple instance to manage, is to use a VPN.

This post summarize the steps on how to deploy Open VPN and configure your VCN to use it.

So, in OCI, we have already some MDS & Compute instances deployed, this is how the dashboard looks like:

OpenVPN Deployment

We can start by deploying our OpenVPN instance using OCI’s Marketplace:

And you follow the wizard by adding your administrator username and password:

An important step is to use the existing VCN and place the OpenVPN in the public subnet:

And you create the instance:

[Read more]
Deploy WordPress on OCI using MDS – updated version

This blog post was first published on FoggyKitchen.com.

Hello fine gourmets, for my first dish in the FoggyKitchen.com, I decide to present you how to deploy WordPress on OCI using MySQL Database Service aka MDS.

I wrote some Terraform recipes that you can find on my GitHub repository: oci-wordpress-mds.

In this first post, I will show how easy it’s to deploy directly from OCI’s dashboard using Resource Manager’s stack. I will also share the recent additions.

The first think to do is to download the stack in releases from GitHub:

When the zip file is downloaded locally, you can login in …

[Read more]
MySQL Invisible Column: part III

We recently saw how the new Invisible Column feature works in MySQL since 8.0.23 and how we can use it as a Primary Key for InnoDB tables when no Primary Key was defined.

As I wrote earlier, a good Primary Key is important for InnoDB (storage, IOPS, secondary indexes, memory…) but there is another important domain where a Primary Key is important in MySQL: replication !

Asynchronous Replication

When using “traditional” replication, if you modify a record (UPDATE and DELETE), the record(s) to modify on the replica are identified using indexes, and of course the Primary Key if any. The hidden global 6-bytes auto generated by InnoDB primary key is never used as never exposed and as it’s global, …

[Read more]
MySQL Invisible Column: part II

This article is the second part of the series related to MySQL Invisible Column started here.

This post covers why Invisible Column is important for InnoDB Storage Engine.

To start, let me explain briefly how InnoDB deals with Primary Key and why an good primary key is important. And finally, why having a Primary Key is also important.

How does InnoDB Stores Data?

InnoDB stores data in table spaces. The records are stored and sorted using the clustered index (the primary key): they are called index-organized tables.

All secondary indexes also contain the primary key as the right-most column in the index (even if this is not exposed). That means when a secondary …

[Read more]
MySQL Invisible Column – part I

With the new MySQL 8.0.23, something very interesting has been released: Invisible Column.

This is the first post dedicated to this new feature, I expect to write a series of 3. This one is the introduction.

Prior to MySQL 8.0.23, all columns of a table were always visible (if you had the privilege to see it). Now, an invisible column can be specified and will be hidden to queries. It can always be accessed if explicitly referenced.

Let’s see how it works:

create table table1 (
   id int auto_increment primary key, 
   name varchar(20), 
   age int invisible);

In the table description we can see the INVISIBLE keyword in the Extra column:

desc table1; …
[Read more]
Showing entries 111 to 120 of 287
« 10 Newer Entries | 10 Older Entries »