Showing entries 31 to 40 of 42345
« 10 Newer Entries | 10 Older Entries »
MySQL 101: Using super_read_only

As many of you may remember, Percona added the super_read_only feature way back in Percona Server for MySQL 5.6.21, based on work done by WebScaleSQL. This feature eventually found its way into the Community branch of MySQL starting with 5.7.8, and it works the same in both cases. While this is now old news, over the last year I’ve had a couple of inquiries from clients around super_read_only usage in MySQL, and how it works in practice. While the usage of super_read_only is not complex, there is a small caveat that occasionally leads to some confusion around its use. As such, I thought it may be a good idea to write a quick blog post explaining this feature a bit more, and expanding on how it interacts with read_only.

What is super_read_only?

For those unfamiliar, what …

[Read more]
Support EOL for MySQL Connector/J 5.1

Per Oracle’s Lifetime Support policy, as of Feb 9th, 2021, MySQL Connector/J 5.1 series is covered under Oracle Sustaining Support. Downloadable binaries can be found in the MySQL Products Archives and in the Maven Central Repository.

MySQL Connector/J 5.1.49 has been the last release of Connector/J 5.1 series.

It is time to move on. Users are encouraged to upgrade to MySQL Connector/J 8.0 series which provides the same features as Connector/J 5.1 and a lot more, including a brand new date/time handling support, introduced in version 8.0.23, and the X DevAPI that empowers the MySQL Document Store.

We like to hear from you. Please join …

[Read more]
MySQL Database Service with High Availability

MySQL Database Service is now easier to use and has flexible deployment options, including High Availability. While creating a new DB System using the web console, users can choose between Standalone, Highly Availability, and HeatWave deployments. The service will pre-populate the necessary fields with the recommended settings. You only need to provide the MySQL user name and password to get MySQL up and running.

With the Standalone option, users get a single-instance MySQL DB System back-ended by the resilient and secure OCI Block Volumes. This option is the most common for test and development environments.

The High Availability option enables applications to meet higher uptime requirements and zero data loss tolerance. When you select the High Availability option, a MySQL DB System with three instances is provisioned across different availability or fault domains. The data is replicated among the instances using a …

[Read more]
Where’s the MySQL team from April - June 2021

Please find below the list of shows where you can find MySQL Community and/or the MySQL team at during April to June 2021:

  • April 2021:

    • Data Love Conference/VIRTUAL, April 16, 2021

      • David Stokes, the MySQL Community Manager is going to talk about "Windowing Functions for Database Analytics", for the exact timing please check organizers' website.
    • MidwestPHP/VIRTUAL, April 22-23, 2021
      • David Stokes, the MySQL Community Manager is going to talk about "MySQL 8.0 New Features". The talk is scheduled for 1:50pm-2:30pm on April 22nd. 
[Read more]
MySQL COUNT() aggregate function – Medium cross post

I recently published a blog post over on Medium about the differences in 2 versions of the MySQL COUNT() aggregate function: COUNT(*) and COUNT(column_name or expression). I wanted to share the post here with any readers who may be interested so continue reading for more on this post…

Image by anncapictures from Pixabay


If you enjoy the content written here, by …

[Read more]
Things you didn't know about MySQL and Date and Time and DST

(based on a conversation with a colleague, and a bit of Twitter)

A Conundrum

A developer colleague paged me with this:

mysql> select
UNIX_TIMESTAMP("2021-03-26 03:07:00" + INTERVAL 2 YEAR) -
UNIX_TIMESTAMP("2021-03-26 02:07:00" + INTERVAL 2 YEAR) as delta\G
delta: 420

It is obviously wrong, and weirdly so. It only works for “2 year”, not with other values:

mysql> select
UNIX_TIMESTAMP("2021-03-26 03:07:00" + INTERVAL 1-11 year_month) -
UNIX_TIMESTAMP("2021-03-26 02:07:00" + INTERVAL 1-11 year_month) as delta\G
delta: 3600

mysql> select
UNIX_TIMESTAMP("2021-03-26 03:07:00" + INTERVAL 1-12 year_month) -
UNIX_TIMESTAMP("2021-03-26 02:07:00" + INTERVAL 1-12 year_month) as delta\G
delta: 3600

mysql> select
UNIX_TIMESTAMP("2021-03-26 03:07:00" + INTERVAL 1-13 year_month) -
UNIX_TIMESTAMP("2021-03-26 …
[Read more]
Securing MySQL - Making Use of Data Access Privileges for a Secure Installation

MySQL installation security is something that should be on the  mind of every MySQL DBA. While we have discussed how you should take care of your MySQL security as a whole (take a look at some of our previous posts, specifically the MySQL security series Part One and Part Two), we haven’t  discussed specific security-related issues, including  those issues related to privileges. We do that here.

What are Privileges in MySQL?

Privileges in MySQL can be granted to accounts. If you grant account privileges in MySQL, you determine which operations the account can perform. Privileges can be granted to either databases or database objects (tables, indexes, views etc.) Privileges can also be dynamic or static. Static privileges …

[Read more]
MySQL ERROR Log Table Explained

Over the decades we have been reading the MySQL error log from the server system file, if there are any issues in MySQL or any unknown restart happened , generally we look at the mysql error log.

By default MySQL error log can be found in the default path /var/log/mysqld.log , or it can be explicitly configured using the variable log_error.

Few drawbacks using MySQL error log as FILE

  • Possibility of missing genuine errors while reading lengthy information.
  • Filtering of errors for the particular date and timeframes.
  • Cannot provide the DB server access to developers because of fear of mishandling DB servers.

To overcome the above issues , from MySQL …

[Read more]
Overview of MySQL Alternative Storage Engines

For MySQL, MyISAM and InnoDB storage engines are very popular. Currently, we are mostly using InnoDB engines for high reliability and high performance. Apart from those engines, we also have some other alternative engines and they have some nice features in them. In this blog, I am going to explain some of those engines, which I have listed below. 

  • FEDERATED Storage Engine
  • Merge or MRG_MyISAM Engine
  • Blackhole Engine
  • CSV Engine

FEDERATED Storage Engine Overview:

  • FEDERATED Storage Engine allows you to access the data remotely without replication and cluster technologies. 
  • Using the FEDERATED tables, you can scale your server load. Queries for the given table will be sent over the network to another MySQL instance. In this case, to scale the DB, you can use many MySQL instances without changing the application code.
  • FEDERATED tables …
[Read more]
The Steps Involved in Creating a Percona Product Release

Have you ever wondered what it takes to complete Percona Server for MySQL (PS), Percona XtraDB Cluster (PXC), and Percona XtraBackup (PXB) releases? 

Let’s step back just a minute and talk about what Percona stands for. We believe we “stand on the shoulders of giants.” This means we respect our upstream sources and work to add value to the base products. Over time, new functionality is added. Much of this value-add was implemented on the 5.7 series and pulled forward to the 8.0 series. Each time we receive an upstream release, we must reapply these features to the release we receive. This process is what we call the Merge Process. …

[Read more]
Showing entries 31 to 40 of 42345
« 10 Newer Entries | 10 Older Entries »