If you don’t know what Let’s Encrypt is, let me briefly explain. Let’s Encrypt is a free, automated and open Certificate Authority (CA) that provides an easy way to obtain and install free TLS/SSL certificates. As mentioned on their website, the key principles behind Let’s Encrypt are: Free: Anyone who owns a domain name can … Continue reading Setup Let’s Encrypt to Secure Your Website
Category: Operations
NOTE: This article was initialy written for the SemaphoreCi community page. Introduction In a previous article, we wrote about testing Ansible roles directly against Semaphore. This is great when you are targeting the same operating system as your continuous integration server, but what to do if you you need to target other operating systems as … Continue reading Testing Ansible Roles on Multiple Operating Systems with Docker and Semaphore
Ever had your Linux /boot partition fill up? Well, unfortunately I have. Normally, you would just remove the kernels you don’t need anymore. Best way to do this is to first check what kernel version you are currently using: $ uname -r Next up is to list all available linux images: $ sudo dpkg –list ‘linux-image*’ … Continue reading Safely clean your /boot partition
NOTE: a rewritten version is available on the SemaphoreCi community page. It contains some more details on how to setup your environment. In my previous post, I explained how you could easily test your Ansible roles by using Travis CI. One of the down sides of Travis for me is that it’s still running on … Continue reading Testing Ansible roles with Semaphore
Ansible is a great config management tool. Unfortunately I lacked the time of writing a bit more about minding, except of my 2 previous posts (Getting started with configuration management: Ansible and Configuration management with Ansible: Playbooks & Execution ) Not that I haven’t done anything new on that front. I’m currently using / maintaining some … Continue reading Testing Ansible Roles with Travis CI
Ever found yourself changing permissions recursively and then realise you used the wrong permissions? Unfortunately, I have. Don’t know if it was due to lack of sleep or caffeine but it just did. Due to my bad handling, I had a few folders where the permissions got screwed up. The folders that I needed to … Continue reading Recursively fix bad file permissions
Taking mysql dumps is pretty straightforward, but what if you needed to take a dump excluding certain tables? For this, you have two options: 1. use the –ignore-table option: mysqldump -u username -p database –ignore-table=database.table1 –ignore-table=database.table2 > database.sql This works fine as long as you don’t have too much tables to exclude. 2. The second … Continue reading Taking MySQL dumps with a twist
A lot of times, developers are asked to export data from a MySQL database to hand over to a client. In most of the cases, when tools like phpMyAdmin are available, the data is exported through the web tool. But when no such tools are at hand, developers most likely turn to their developers skills … Continue reading Export directly from MySQL to CSV
MySQL and replication, it has always been a touchy subject. Overall, things work properly. Non the less, on a certain project, we experienced regular replication failures: Error ‘Can’t create table ‘db.temp_table’ (errno: -1)’ on query. Default database: ‘db’. Query: ‘CREATE TEMPORARY TABLE temp_table … Basically the errors clearly points out that the temporary MySQL table … Continue reading Mysql temporary tables and replication
A few days ago, I tried to make a backup using the mysqldump command and got the following error: mysqldump: Got error: 1044: Access denied for user ‘root’@’localhost’ to database ‘information_schema’ when using LOCK TABLES A quick workaround is to pass the –-single-transaction option to mysqldump: $ mysqldump –single-transaction -u user -p DBNAME > backup.sql … Continue reading mysqldump: 1044 Access denied when using LOCK TABLES