Showing entries 1 to 10 of 184
10 Older Entries »
Displaying posts with tag: Technical Track (reset)
How a Social Media Platform Benefits from Upgraded Security and Performance

We recently helped a social media management platform improve its security and performance.

The social media platform supports social network integrations for Twitter, Facebook, Instagram, LinkedIn and YouTube, and has more than 15 million users. The company needed to ensure maximum security and performance for its authentication processes by reducing the hours and errors associated with manual administration.

These improvements would allow the organization to not only minimize downtime and expand the feature set available to its developers, but would also ensure the company’s compliance with Europe’s new General Data Protection Regulation (GDPR). The challenge was automating its database user management and authentication processes, which required knowledge of MySQL security and DevOps environments.

Pythian’s experts have deep knowledge of MySQL security and DevOps-structured environments, and were able to develop …

[Read more]
Is slave_exec_mode idempotent actually idempotent?

Co-Author: Rafael Alvarez

When you look up the word idempotence in wikipedia you get the following definition: Idempotence is the property of certain operations in mathematics and computer science whereby they can be applied multiple times without changing the result beyond the initial application.

When I think of idempotence in the sense of how IT operations work, the very first thing that comes to mind is Ansible. In Ansible you have a yml file that represents a state you want the target host to be in. For example, I can use the yum module to ensure that MySQL is installed on my RHEL virtual machine. When the playbook is run, it checks if MySQL is installed. If not, it will install it. It is installed, then it will ignore that …

[Read more]
Log Buffer #555: A Carnival of the Vanities for DBAs

This Log Buffer Edition covers Cloud, Oracle and MySQL.


Cloud Directory is a neglected serverless data store that deserves much more attention.

Many of our large enterprise customers have this worry hanging over their heads … what are they going to do about that mainframe when they migrate?

Miners Extract More Value from the Cloud When They Transform Their Cultures

7 steps to keep your …

[Read more]
Authenticating MySQL 8.0 (Enterprise) against active directory

Recently our team was tasked to implement MySQL 8.0 in production for a client. While MySQL 8.0 is looking very promising and has a lot of cool new features and revamped old features, it’s still pretty young. The MySQL development team is working very hard on stabilizing the product but, reading the latest release notes for version 8.0.12, it is still very much a bugfix release and not something you will want to put in production immediately. Also, given the fact that a lot of tools such as Percona Xtrabackup do not support MySQL 8.0 yet, we were a bit reluctant to proceed with this idea. But … the client had a strong use case to make use of roles and resource groups and we like challenges so we decided to give it a go.

Another use case that was presented is the one where …

[Read more]
Releasing puppet-proxysql version 2.0.0

Everyone knows those situations where there is a task that you need to do and you want to do, but you just don’t come around to actually doing it. Well, for me, this new release was such a task.

Early in 2017, I released the first version of puppet-proxysql on GitHub. It was my first puppet-module release and I was quite proud of it. I had implemented types and providers for managing the ProxySQL resources such as mysql_user, mysql_servers, etc…

At Config Management Camp Gent (February 2017) I met Vox Pupuli, who is the group that forms the puppet-user-community. They picked up the responsibility of taking ownership of well-known modules that are left unmaintained or abandoned and/or modules that only had a single maintainer. The puppet-proxysql module was kind of the latter. Additionally, they …

[Read more]
MySQL Plugin For Oracle Enterprise Manager 13c Cloud Control

This is the same plugin that Alex Gorvachev created back in the day. I’ve simply modified it to be compatible with both 12c and 13c versions.

I created this in response to a comment on the blog about issues deploying the plugin in OEM 13c. There is also a note in MOS “EM 13c: Adding a MySQL Instance in Enterprise Manager 13c Fails with Error: oracle.sysman.emSDK.agent.client.exception.NoSuchMetricException: the Load metric does not exist (Doc ID 2160785.1)“.

This version has been tested with OEM 13cR2 and OEM 12cR3, so it should be working in all the versions in between except for bugs.


During the …

[Read more]
Log Buffer #554: A Carnival of the Vanities for DBAs

This Log Buffer Edition covers Cloud, Oracle, and MySQL.


Google Cloud is announcing an easy way to back up and replay your streaming pipeline events directly from the Cloud Console via a new collection of simple import/export templates. If you are a developer interested in data stream processing, you’ll likely find this feature very handy.

Google network engineering uses a diverse set of vendor equipment to route user traffic from an internet service provider to one of our serving front ends inside a GCP data center.

Over the last two decades, the IT profession has developed new …

[Read more]
How to Manage Multiple MySQL Binary Installations with SYSTEMD

This blog will go into how to manage multiple MySQL binary installations with SYSTEMD using the systemctl command.  With package installations of MySQL using YUM or APT, it’s quick and easy to manage your server’s state by executing systemctl commands to stop, start, restart, and status.  But what do you do when you want to install MySQL using the binary installation with a single or with multiple MySQL instances? You can still use SYSTEMD to easily manage the MySQL instances. All commands and testing have been done on Debian, and some details may change in other distro’s.

MySQL preparation

These are the steps to set up MySQL with multiple instances. If you currently have a MySQL server package installation using YUM or APT, it will need to be removed first. Make sure you keep your client. I also had to install some base packages for MySQL on Debian

apt install libaio1 libaio-dev numactl

[Read more]
Setting up MySQL Encrypted Replication on MySQL 5.7 with GTID

In this blog post, I’ll walk you through setting up encrypted replication on MySQL 5.7 with GTID enabled. I will walk you through how to create sample certificates and keys, and then configure MySQL to only use replication via an encrypted SSL tunnel.

For simplicity, the credentials and certificates I used in this tutorial are very basic. I would suggest, of course, you use stronger passwords and accounts.

Let’s get started.

Create a folder where you will keep the certificates and keys

mkdir /etc/newcerts/
cd /etc/newcerts/

Create CA certificate

[root@po-mysql2 newcerts]# openssl genrsa 2048 > ca-key.pem
Generating RSA private key, 2048 bit long modulus
e is 65537 (0x10001)
[root@po-mysql2 newcerts]# openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem
You are about to be asked to enter …
[Read more]
The Night of the Living Files

Scary movies for teenagers and database administration tasks share some common traits. Usually, the movie starts with a group of teens making unwise choices. Maybe you, as a DBA, are no longer a teenager, but you shouldn’t underestimate your ability to do the same.

$ sudo su -
Darrera entrada: ds jun 2 14:43:53 UTC 2018 des de a a pts/0
[root@mysql ~]# cd /var/lib/mysql
[root@mysql mysql]# df -h .
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00 38G 35G 3G 92% /
[root@mysql mysql]#

Back to the movie…today is just another regular day. Checking Jira (or whatever your ticketing system is), answering emails and phone calls. Maybe a couple of meetings. And in the meantime, you will perform some critical tasks on the most important systems for your company. Just the usual stuff!

[root@mysql mysql]# ls -l *.log
ls: cannot access *.log: No such file or directory
[root@mysql mysql]# ls -l *log*
-rw-r-----. 1 …
[Read more]
Showing entries 1 to 10 of 184
10 Older Entries »