Showing entries 13101 to 13110 of 44105
« 10 Newer Entries | 10 Older Entries »
MySQL Connect and Oracle Open World Presentations Online

After a slight delay (travel and catching up with “real work”), I’ve now uploaded the talks that I gave at MySQL Connect and Oracle Open World.

They are available on my Presentations Page, and inline below for convenience. The “Introduction to MySQL Enterprise Monitor” talk was actually a full demo, but there are some screenshots of MEM 3.0 in there if you’re interested in seeing a high level picture of what it looks like now.

Thanks to all that attended my talks, I got a lot of good questions and feedback!

Performance Schema and ps_helper MySQL Administration and Monitoring

[Read more]
MySQL 5.7 multi-source replication

Recently Oracle announced several new features for the latest available development version of MySQL that is 5.7.2 at the time of writing this article. Most of them are performance and replication related that show us how incredible the new release will be.

In this post I’m going to try to explain in some easy steps how the new multi-source replication works and how we can configure it for our own tests. It is important to mention that this is a development release, so it is not production ready. Therefore this post is intend to people that want to test the new feature and see how it works with their application, always in a staging environment.

What is multi-source replication?

First, we need to have clear that multi-master and multi-source replication are not the same. Multi-Master replication is the usual circular replication where you can write on any server and data gets replicated …

[Read more]
MySQL isn’t limited to nested-loop joins

I have followed the “Use the Index, Luke!” blog for a while. Today Marcus wrote that (I’ll paraphrase) MongoDB disgraces NoSQL the same way that MySQL disgraces SQL. I agree with a lot of this, actually, although I’m not sure I’d put it so strongly. People often like products for good reasons, and to think that legions of developers are stupid or ill-educated is suspect, in my opinion.

But that wasn’t what I meant to write about. I wanted to point out something about the blog post that’s a little outdated. He wrote, and this time I’ll quote, “MySQL is rather poor at joining because is only supports nested loops joins. Most other SQL database implement the hash join and sort/merge join algorithms too.”

It’s no longer true that MySQL doesn’t support these, and hasn’t been for a while, depending …

[Read more]
Change in Affiliation

About a month ago, I accepted an offer to work at SkySQL as the Chief Evangelist for MariaDB. So the change in affiliation announced in April 2013 has come to fruition. What this realistically means is that my email address changes to colin@mariadb.com, though I am still reachable at colin@mariadb.org even though I’m not part of the MariaDB Foundation.

There are a lot of structural changes that urgently need work and I expect to be spending quite some time on all this. In the meantime, read an update from the SkySQL CEO Patrik Sallner.

[Read more]
The end of Bazaar

I’ve used the Bazaar (bzr) version control system since roughly 2005. The focus on usability was fantastic and the team at Canonical managed to get the entire MySQL BitKeeper history into Bazaar – facilitating the switch from BitKeeper to Bazaar.

There were some things that weren’t so great. Early on when we were looking at Bazaar for MySQL it was certainly not the fastest thing when it came to dealing with a repository as large as MySQL. Doing an initial branch over the internet was painful and a much worse experience than BitKeeper was. The work-around that we all ended up using was downloading a tarball of a recent Bazaar repository and then “bzr pull” to get the latest. This was much quicker than letting bzr just do it. Performance for initial branch improved a lot since then, but even today it’s still not great – …

[Read more]
#DBHangOps 10/02/13 — MySQL Utilities, Resource Management, and more!

Thanks to everyone who came. Definitely check out the recording below!

Heyo everybody!

Coming up this Wednesday, October 2nd, 2013 at 12:00pm pacific (19:00 GMT) is another exciting #DBHangOps. Join the google hangout to discuss:

  • MySQL Utilities from Chuck Bell!
  • How do you constrain over-consumption of resources by competing applications?
  • Network vs. Local storage for MySQL
    • How do you use this for HA? Do you use DRBD or floating VIPs?
  • Secure connections to MySQL (using SSL) (requested by Daniel)
    • Do you have experience with this? What’s the performance impact?
  • PCI Certification with MySQL — what changed for you?
  • MySQL-isms!
    • (From Gerry) Sub SELECTs — Why aren’t these as mature as other databases?
[Read more]
PalominoDB announces new Vice President of International Operations, Shiv Iyer.

Shiv is the Vice President of International Operations at PalominoDB. He has been a database operations strategist for companies such as; LinkedIn, Microsoft, SUN, National Iran Oil Co. and lastminute.com.

He has taught and been a keynote speaker for database technology conferences globally, speaking on; Database Architecture, High Performance, Database Health Check, 24*7*365 DBA Operations, High Availability and Managed Database Service Operations.

He is a Database Architect specialist in PostgreSQL, MySQL, Oracle and SQL Server and passionate about DBA process automation and maximum return on investment from database infrastructure. He is the founder and CEO for Ask DB Experts, a boutique private label Database Architect Consulting Practice & Remote DBA services company based out of Bangalore, India.

He is a marathon runner and very active in supporting NGOs in fund raising marathon events.

[Read more]
MySQL replication caveats, or why to be cautious.

Recently we had a small hickup in our service; it was caused by our mysql replication configuration and a small mistake which was made long time before. The lesson was learned, and now I show that to you.

MySQL replication is simple. The replica set’s primary server (aka. replication master) writes the events which affects the database to a binary log file, and slaves will be apply that log on their datasets. The binary log can be statement based, row based or in mixed mode, the events can be either DML or DDL queries. Simple enough.

Of course we can filter out some statements from replication, for example when there are tables which are only read or write on master, and didn’t needed to have on slaves. On kinja, we have certain tables where this rule applies, for example a sessions table, which contains session related data. We have to ensure that the data will be there asap when it was written, and because of that, there is …

[Read more]
MariaDB Foundation achivements 2012-12 - 2013-09

I recently read some comments that we at the MariaDB Foundation have not been very open about what we are doing.

We are very sorry about this. The problem is not that we are secret about what we are doing, the problem is that not many of us working at the MariaDB Foundation are very active bloggers.

I will try to address this concern by starting a monthly blog about the MariaDB development that MariaDB Foundation employees are doing. This together with Simon Phipps' state of the sea lion blog, which is published on the MariaDB Foundation blog, should hopefully give everyone a better idea of what we are doing.

At the MariaDB Foundation we are now 4 people working full time on code, documentation, and spreading …

[Read more]
Some thoughts on the MySQL REPLACE command

In yesterday's post I was fairly prescriptive about how to do an upsert in MySQL. I'm aware that there are other ways to do an upsert in MySQL, but I intentionally emphasized INSERT ... ON DUPLICATE KEY UPDATE over REPLACE because I think it's almost always the better choice.

Here are my thoughts on REPLACE. I'll start with the good stuff.

The appeal of REPLACE

REPLACE is a natural complement to INSERT and INSERT IGNORE. A plain INSERT gives you expected SQL INSERT behavior. If you try to insert a duplicate row you get an error. For example:

[Read more]
Showing entries 13101 to 13110 of 44105
« 10 Newer Entries | 10 Older Entries »