Showing entries 71 to 80 of 149
« 10 Newer Entries | 10 Older Entries »
Displaying posts with tag: Tech (reset)
My work environment

I was thinking if my work environment would be interesting or not, but I decided ‘yes’ – because I always like reading about others work env.

I am working with Linux/UNIX for more than 15 years now, and I have tried a lot of cool tools, but at the end, I always found myself using the same apps in terminal.

I like the unix philosophy about Do One Thing and Do It Well. I never really use big, bloated software, I like to use my editor for editing files, and my git client to use git. That’s simple.

Normally I work from a mac, but I have an installed linux based backup environment too, on a remote server which can be accessed via ssh.

The basic tool for me is iTerm2. The main features I use are split pane (cmd+D vertical, cmd+shift+D horiontal) and broadcast input (cmd+shift+I). I also like that it can be switched to fullscreen with cmd+enter. In …

[Read more]
Running multiple instances on the same hardware

Currently we have one database cluster with 15 different schemas – these schemas could be either schemas which contain “real” data, or just schemas with metadata.

I guess the next evolutionary step of our database stack would be to split up the database cluster vertically along these schemas. All the data schemas should be moved to standalone mysql instances, and put the metadata schemas next to them. This also could be a good project for prepare to move a certain part of database for example to a cloud provider while other parts are still kept on bare metal.

I started wondering what could be the best way to split MySQL instances in a single hardware. I have the following ideas:

  • Hack init scripts to start different instances on different ports (and log directories, data directories, config files too)
  • Use mysqld_multi
  • Use MySQL Sandbox
  • Use docker

The first …

[Read more]
Running GTID replication in production

On Percona Live! Amsterdam 2015 we had a talk with Peter Boros about GTID replication.

Here are the slides.

Running gtid replication in production from Balazs Pocze

Percona Live Europe 2015

Well, it was ended a week ago, but I had too many errands to run, so I couldn’t post anything about it.

It was really great, again.This was the third time I attended (2013 London, 2015 Santa Clara) so now I have met with a lot of familiar people – it is true that MySQL has a great community. The chosen city was great, Amsterdam is one of the coolest places of Europe, the hotel was neat, and the programs were also astounding.

The conference sessions were great too, I really enjoyed, them all, and because they are running on 8 thread parallel it is not that bad that there are some recurring sessions; if you missed one in spring you can watch it on autumn.

So, everything was comfy and neat. I hope I’ll attend on the next one too …

There were a few topics where I plan to dig deeper in the next weeks

  • ProxySQL because HAProxy is a good choice, but it is only speaks TCP and HTTP but not …
[Read more]
Getting familiar with TokuDB part 2.

Last time I was checked, how can TokuDB be used as a drop in replacement of InnoDB. The first impressions were jolly good; way less disk space usage, and the TokuDB host can be a part of the current replication cluster.

So far so good.

Well, actually not everything is that nice, because there is a very big part of infrastructure is built on the top of xtrabackup.

So let’s see what can we do backing up TokuDB.

The first and most clean way should be the mysqldump utility, but sadly this is not really useful for us, the restore process could be take too many time, because a lot of indexes has to be rebuilt.

So we need to take binary backups. Sadly TokuDB currently offers only tokudbhotbackup for hot backup which is a part of the enterprise feature set. Sadly that seems not opensource (yet!), but I hope Percona will change that soon.

Until that the following things are sure: xtrabackup cannot …

[Read more]
Getting familiar with TokuDB part 1.

After TokuDB was announced as a new storage engine for MySQL , it made me very curious, but I didn’t tried it out until now.

I try to check it from different aspects and I’ll be blog it step by step. I don’t do any serious benchmarking, just play with it, and see if it could be fit into Kinja’s MySQL ecosystem.

I use one of our development servers as a TokuDB playground. Sadly that hardware is not the same as the database masters nor as the slaves, so performance tests couldn’t be made on that piece of metal but many other ways are open to do this.

I’ve installed the tokudb plugin from the Percona repository. The setup was quite easy and fast, the documentation is nice.

I decided to leave all the MyISAM tables as – is but convert all the InnoDB tables to TokuDB. To achive this, I’ve did the …

[Read more]
MySQL Writer Wanted!

As MySQL is thriving and growing, we're looking for an experienced technical writer to join the MySQL documentation team. The documentation team is located in EMEA and in North America, and so you should be.

For this job, we need the best and most dedicated people around. You will be part of a geographically distributed documentation team responsible for the technical documentation of all MySQL products. Team members are expected to work independently, requiring discipline and excellent time-management skills as well as the technical facilities and experience to communicate across the Internet.

Candidates should be prepared to work intensively with our engineers and support personnel. The overall team is highly distributed across different geographies and time zones. Our source format is DocBook XML. We're not just writing documentation, but also handling publication, including maintenance of our toolset (XML, XSLT, …

[Read more]
How to drop table in a hacky way

I showed in an earlier post how to drop a whole database in a very safe way (no replication lag at all) and that technique is usable to drop a single table too, but cleaning up a table can take hours if not days to finish, so this is not the most comfortable way to do that. We also don’t want to have even a small spike of replication lag, so we need to find an another solution.

How to remove database in a safe way
When you have to drop a large database, you’ll encounter some problems, mainly replication…
Read more
What happens when you issue a DROP TABLE command? The table has to be removed from the table dictionary – which is a fast, atomic operation – and has to be removed from file system too. If you use older version than 5.5.10 you have to calculate with a huge amount of time if your buffer pool is big, because the server will scan through the pages there, checking if anything is in memory from that …

[Read more]
Including Code Samples With rst2pdf

Every document I create these days is written in rst (ReStructuredText) and transformed into something useful using rst2pdf. This includes worksheets, reports, handouts and slide decks. Along the way I've learned a few tricks, and I try to write them down so I can look up how to do something. If this helps you too, then great :)

Start Simple

Include a code block in rst by adding something like this:


.. code-block:: php

Your code must then be indented, and the style persists until you "undent" again. There is pretty extensive language/syntax support since it is built on pygments, so you can use most language names instead of the php there.

Line Numbers and PHP Tags

In order to make the PHP syntax highlight …

[Read more]
MySQL replication module upgrade

Yesterday I’ve put some new features into the ansible’s mysql_replication module, because we are planning to move to GTID based replication from the good old binlog position based one, and the module wasn’t aware of.

gtid_replication

This parameter can be either 0 or 1, defaults to 0. If set to 1 the replication will be threaded as GTID based replication.

warnings_filtered

This parameter threats the warnings, because MySQL 5.6 complaints a lot more than the previous versions. (For example, if the replication is not encrypted with SSL/TLS.) This could break our playbooks, so you can set it to all, warnings, none (defaults none). Speaks for itself, all means all warnings/errors will be shown, if warnings set, then only the errors will be shown, and the warnings supressed, and if none then that means, every message will be show …

[Read more]
Showing entries 71 to 80 of 149
« 10 Newer Entries | 10 Older Entries »