Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 3211 to 3220 of 45354 « Previous | Next »
Migrating Facebook to MySQL 8.0

MySQL, an open source database developed by Oracle, powers some of Facebook’s most important workloads. We actively develop new features in MySQL to support our evolving requirements. These features change many different areas of MySQL, including client connectors, storage engine, optimizer, and replication. Each new major version of MySQL requires significant time and effort to migrate our workloads. The challenges  include:

  • Porting our custom features to the new version
  • Ensuring replication is compatible between the major versions
  • Minimizing changes needed for existing application queries
  • Fixing performance regressions that prevent the server from supporting our workloads

Our last major version upgrade, to MySQL 5.6, took more than a year to roll out. When version 5.7 was released, we were still in the …

[Read more]
MySQL: Character Sets, Unicode, and UCA compliant collations

With MySQL 8.0, the version of MySQL Database Service aka MDS, the default character set has changed from latin1 to ut8mb4. The default collation is utf8mb4_0900_ai_ci but what does that mean ? and why are the utf8mb4_0900_* the recommended ones ?

Collations like utf8mb4_unicode_520_ci and utf8mb4_0900_ai_ci are based on Unicode Collation Algorithm (UCA). The number in the collation defines the UCA version:

  • UCA 9.0.0 (recommended)
    - example: utf8mb4_0900_ai_ci
  • UCA 5.2.0 (not recommended, see problems below)
    - example: utf8mb4_unicode_520_ci

The …

[Read more]
MySQL: Character Sets, Unicode, and UCA compliant collations

With MySQL 8.0, the version of MySQL Database Service aka MDS, the default character set has changed from latin1 to ut8mb4. The default collation is utf8mb4_0900_ai_ci but what does that mean ? and why are the utf8mb4_0900_* the recommended ones ? Collations like utf8mb4_unicode_520_ci and utf8mb4_0...

Lets be inSync!

Percona Toolkit + pt-table-checksum + pt-table-sync = Faster Replica Recovery

Asynchronous replication with MySQL is a tried and true technology. Add the use of GTID’s and you have a very stable solution.

The fundamental issue with async replication is that writes sent to the Replica are not guaranteed to be written. I have only seen a handful of times when writes did not get applied to the replica. Most of the time this happens is due to network packet drops or a replica crashes before new data is committed.

I can remember long nights of restoring backups of the primary to the replica’s. Not a painful process but time consuming.

Please take a few moments to review the full documentation of both tools before trying this example on live data: pt-table-checksum, pt-table-sync.

With …

[Read more]
Announcing July 2021 Releases featuring MySQL 8.0.26

MySQL Server 8.0.26 and 5.7.35, new versions of the popular Open Source Database Management System, have been released in conjunction with the 8.0.26 Connector and Component products. 

We are also pleased to announce the release of MySQL Cluster 8.0.26, the latest GA, along with 7.6.19, 7.5.23, 7.4.33. MySQL Cluster is the distributed, shared-nothing variant of MySQL. 

These releases are recommended for use on production systems and are available in source and binary form for a number of platforms from our MySQL Community download pages at:

https://dev.mysql.com/downloads/

Windows packages are available via the Installer for Windows or .ZIP (no-install) packages for more advanced needs. The point and click configuration wizards and all MySQL products are …

[Read more]
Announcing July 2021 Releases featuring MySQL 8.0.26

MySQL Server 8.0.26 and 5.7.35, new versions of the popular Open Source Database Management System, have been released in conjunction with the 8.0.26 Connector and Component products. We are also pleased to announce the release of MySQL Cluster 8.0.26, the latest GA, along with 7.6.19, 7.5.23, 7.4.3...

Create your own Exporter in Go!

Overview

Hi, it’s too hot summer in Korea. Today I want to talk about an interesting and exciting topic. Try to making your own exporter in Go language.

If you register a specific query, it is a simple program that shows the result of this query as an exporter result metrics. Some of you may still be unfamiliar with what Expoter is.

I will explain about Exporter step by step in today’s post.

Exporter?

You can think of an Exporter as an HTTP server for pulling data from a time series database like Prometheus. Prometheus periodically calls the specific URL of the exporter and saves the result of metrics as a time series.

There are many exporters exist in the everywhere.

Typically, there is mysqld_expoter, which is Prometheus’s Offcial projects, and …

[Read more]
Pandas and The MySQL Shell

    Pandas is a Python software library for data analysis and manipulation.  It allows you to import data from CSV files, SQL, and Excel.  And it is open source.

    Pandas works well with the MySQL Shell.  After installing Pandas with pip install pandas on my Fedora test system, I was able to load Pandas.  The documentation is excellent at pandas.pydata.org   and I was quickly able to get one of their examples working from within mysqlsh.


Did I mention SQL as a source of data? Reading from MySQL is very easy.  

[Read more]
MySQL 8.0.26 And Interesting Items in the Release Notes

You may have noticed that MySQL 8.0.26 was released today (yea!)  and I recommend reading the release notes but here are some of the highlights.

  • TLS version 1 and 1.1 are deprecated. Please use later versions such as 1.2 and 1.3 (you made need OpenSSL 1.1.1 or higher too).
  • More information in the server log on client timeouts includes the timeout value, and client user and host when that information is available
  • Internal functions to copy values between columns are improved and test at about11% faster (YMMV)

There are a lot of interesting bits of information in the release notes and they show the amount of work that the MySQL Engineering Teams put into a release to give you a better product.
But What Are Those Warnings?

But some of you may be seeing the …

[Read more]
Easily Deploy Highly Available MySQL Clusters in the AWS Cloud - Tungsten Cluster AMI

Following the announcement late last year that we’d made our flagship product Tungsten Cluster available on the Amazon Marketplace in an easy-to-access and deploy AMI format, we published some useful resources in the past few months to help users getting started with Tungsten Clustering in the AWS cloud.

Tags: amazon awstungsten cluster amiCloudcloudformation