The alerter has been changed to only send out alerts for ‘production’ servers. There are still tuning and analytics reports for all servers but there’s no business need to be alerted about config settings on staging and development servers as you should be actively reading the full reports when testing your application. Note: this was [...]
Yesterday, I posed a question to the ZanyWeb about what exactly a REPLACE statement does behind the scenes in the storage engine. There were many excellent comments and these comments exposed some misunderstandings (including some of my own misconceptions) about the REPLACE statement itself and what goes on behind the scenes in the storage engine.
The question I asked was this: if I execute the following statements in a client, what would you expect would happen behind the scenes in the storage engine?
CREATE TABLE t1 ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY , padding VARCHAR(200) NOT NULL ); INSERT INTO t1 VALUES (1, "I love testing."); INSERT INTO t1 VALUES (2, "I hate testing."); REPLACE INTO t1 VALUE (2, "I love testing.");
Based purely on the manual, one would expect, as …
[Read more]It’s time to play! A special thanks particularly to Antony Curtis for the excellent smart and actually very speedy coding, and for just being a great guy to work with. If you would like to utilise his ace MySQL knowledge and coding skills, do talk to me!
Right now, we have a source tarball available for you, patching OQGRAPH on top of a MySQL 5.0.86-d9-Sail (OurDelta) source. As you know MySQL 5.0 does not have engine plugins so patching is the only way we can put it in. This OQGRAPH codebase is licensed under GPLv2+.
Even though we’ve successfully built it on several platforms and architectures, since this is the first public release we’d like you to try it first, as we’re sure that there might be problems on some platforms. When we catch and fix those, we can do proper package builds.
You will find the link to the source tarball, and other necessarily instruction and configuration, on the …
[Read more]
mysql> create table T1 (a int, b int, primary key(a)) engine = ndb;
mysql> select x.a,x.b,z.a,z.b from T1 x, T1 y, T1 z where x.b=y.a and y.b=z.a;
+----+------+----+------+
| a | b | a | b |
+----+------+----+------+
| 31 | 47 | 63 | 31 |
| 63 | 31 | 47 | 63 |
| 47 | 63 | 31 | 47 |
| 5 | 47 | 63 | 31 |
+----+------+----+------+
4 rows in set (0.01 sec)
- entire query is executed with one request to data nodes
- code is only a hack (that bluntly examines mysqld's internal
structures).
- list of limitations is so long that i can't write it here due
to bandwidth restrictions
But still super cool!
Quote from Jan, that implemented experiment: "You can
write queries that return correct result"
I was debugging some repl delay monitoring metrics and I noticed that the test I was doing (sysbench --test=oltp prepare) to generate replication data was far outstripping the slave. The SQL thread was caught up to the IO thread, but the IO thread was way behind the master. Replicating from: a2.db.bcp.re1.yahoo.com Master: a2_db_bcp_re1.000166/138395515 Slave I/O: Yes a2_db_bcp_re1.000165/802640907 ??? Slave Relay: Yes a2_db_bcp_re1.000165/802030586 596K 198 secs
In this case, the I/O thread was getting further and further behind as sysbench did bulk inserts into my master. My theory …
[Read more]
Didn't take too much notice of our download numbers recently, so
I saw a nice number today: ~130,000 downloads of
the 4.0 release.
Together with
* 230,000 downloads of HeidiSQL 3.2
* 90,000 downloads of source packages, portable and various older
releases
* 50,000 downloads from pre-Google-Code times for which I don't
have statistics
... we have 500,000 downloads total!
More statistics:
* Average size of one downloaded file is ~2MB
* HeidiSQL development started ~3 years ago in late 2006
(ignoring old MF2.5 times)
* Makes ~900 MB / ~450 files of downloads each day
A big thank to all and each user out there!
After finishing my post about Monty Widenius's views on the Oracle acquisition of MySQL via Sun, I read that Richard Stallman (RMS) had published an open letter on the topic.
In The EU and MySQL, Tim Bray treads lightly on the topic of Oracle's pending ownership of MySQL if the Sun acquisition goes through. I left a comment on his post, but he's likely to be heavily moderating what appears there since he works for Sun.
So here's what I posted on his blog.
I haven't yet seen anyone explain what motivation Oracle has for pouring resources into MySQL, especially if it eats away at their DBMS business on the low end.
I've been puzzling over this since their acquisition of Innobase Oy (the makers of InnoDB) years back. Is Oracle serious about seeing MySQL grow and succeed, or was that just a way to get a strangle-hold on a critical piece of MySQL?
I've never had the chance to ask Ken Jacobs that. Actually, I have but it would have been kind of …
[Read more]
Consider excluding the following grants from users on any
production MySQL server.
-- GRANT OPTION
"The GRANT OPTION privilege enables you to give to other users or
remove from other users those privileges that you yourself
possess." (http://dev.mysql.com/doc/refman/5.1/en/privileges-provided.html#priv_grant-option)
-- RELOAD
"The RELOAD privilege enables use of the FLUSH statement. It also
enables mysqladmin commands that are equivalent to FLUSH
operations: flush-hosts, flush-logs, flush-privileges,
flush-status, flush-tables, flush-threads, refresh, and reload."
(http://dev.mysql.com/doc/refman/5.1/en/privileges-provided.html#priv_reload)
-- SUPER
"The SUPER …
E.ON ES, a subsidiary within E.ON Group, today announced that it has purchased a multi-year MySQL Enterprise™ database subscription from Sun Microsystems to help power its advanced work order management system, used for the service and maintenance of Sweden's electricity distribution grid.