Whoa, it was a long time since I posted here! But I have been
very busy with non-MySQL related issues lately, so that is an
explanation I guess.
This week I decided to try a few MySQL things anyway, the plan
was to compare MongoDB with MySQL Cluster as a key-value store.
We have some data here at Recorded Future that is currently in
MongoDB, it will not fit in DynamoDB (it has secondary indexes
for example) and I was thinking that maybe MySQL Cluster was an
alternative, it was some time ago since I tried Cluster
anyway.
At Recorded Future, we run everything on Amazon EC2, but I was
thinking that this benchmark should be about another thing than
just comparing MySQL Cluster with MongoDB, I wanted
to see the difference between EC2 and some hard iron.
So, I started downloading some data to my recently constructed
Linux server box. This server is a home brew machine housed in a
Chieftech 4U …
A question came up today about how to stripe a MySQL view, and this post shows you how. Along with the question, there was a complaint about why you can’t use session variables in a view definition. It’s important to note two things: there’s a workaround and there’s an outstanding request to add lift the feature limitation in Bug 18433.
A striped view lets authorized users see only part of a table, and is how Oracle Database 11g sets up Virtual Private Databases. Oracle provides both schema (or database) level access and fine-grained control access. Fine grained control involves setting a special session variable during a user’s login. This is typically done by checking the rights in an Access …
[Read more]There’s a lot of great new features in MySQL 5.6 DMRs – almost too many to keep track of. And while a lot of (justified) attention is given to the headline-grabbing features of 5.6 (memcached APIs! global transaction ids! improved PERFORMANCE_SCHEMA!), I’m often curious about the new features that don’t make as big a splash. I thought I would look at one such new feature – WorkLog #5217. I’m not telling you what this WorkLog is yet; test your knowledge of 5.6 features by seeing if you can figure it out from the following scenario. Imagine the following table data:
mysql> SELECT * FROM p; +------+------+ | a | b | +------+------+ | 1 | 1 | | 11 | 1 | | 21 | 1 | +------+------+ 3 rows in set (0.00 sec)
OK, try to write an UPDATE statement that increments b for the row where a = 11. Easy, right?
UPDATE p SET b = b+1 WHERE a = 11;
OK, now do it without a …
[Read more]I’m pleased to announce a variety of prize winners associated with the Percona Live MySQL Conference and Expo 2012. The following people won prizes in the pre-conference registration promotion:
Kindle Fire Winners:
Tatiana B., Etsy, United States
Tom H., Cloudtree, United States
Loren A., HearSayCorp, United States
High Performance MySQL 3rd Edition Book Winners:
Marcus O., Discover Books Ltd., Canada
Steven P., Paciolan, United States
We also held a prize drawing for those who completed the post-conference survey:
Kindle Fire Winner:
Norman M., FlipKey, United States
$50 Amazon Gift Certificate …
[Read more]A big thanks goes out to everyone involved with the MySQL Connect Content Committee. We had a great response to the call for papers and realize that it took a considerable amount of time and effort to review the submitted sessions and BOFs. While Oracle employees aided with this effort, the MySQL Community deserves to be acknowledged for the time they took out of their busy schedules to help with our conference. Their input was invaluable to the support of the MySQL Community. Continued support such as this from the community is another reason that MySQL continues to be #1 open source database. We'll keep you posted as we finalize and publish the sessions, BoFs and HOLs for MySQL Connect.
Thanks to the following committee members:
MySQL Community:
[Read more]A recent question on a mailing list was the best practices for UTF-8 and PHP/MySQL. The following are the configurations I used in my multi-language projects.
MySQL UTF-8 Configuration
# my.cnf [mysqld] default_character_set = utf8 character_set_client = utf8 character_set_server = utf8 [client] default_character_set = utf8
PHP UTF-8 Configuration
#php.ini default_charset = "utf-8"
Apache UTF-8 Configuration
#httpd.conf AddDefaultCharset UTF-8 <VirtualHost> AddCharset UTF-8 .htm </VirtualHost>
HTML file UTF-8 Configuration
<meta charset="utf-8">
PHP file UTF-8 Configuration
header('Content-type: text/html; charset=UTF-8');
MySQL connection (extra precaution)
SET NAMES utf8;
Shell UTF-8
And last but not least, even editing files in shell can be affected (.e.g UTF-8 data to be …
[Read more]NoSQL and NewSQL database technologies pose a long-term competitive threat to MySQL’s position as the default database for Web applications, according to a new report published by 451 Research.
The report, MySQL vs. NoSQL and NewSQL: 2011-2015, examines the competitive dynamic between MySQL and the emerging NoSQL non-relational, and NewSQL relational database technologies.
It concludes that while the current impact of NoSQL and NewSQL database technologies on MySQL is minimal, they pose a long-term competitive threat due to their adoption for new development projects. The report includes market sizing and growth estimates, with the key findings as follows:
• NoSQL software vendors generated revenue* of $20m in 2011. NoSQL software revenue is expected to rapidly grow at a CAGR of 82% to reach $215m by 2015.
• NewSQL software …
[Read more]On Wednesday May 16th, we ran a webinar to provide an overview of all of the new replication features and enhancements that are previewed in the MySQL 5.6 Development Release – including Global Transaction IDs, auto-failover and self-healing, multi-threaded, crash-safe slaves and more.
Collectively, these new capabilities enable MySQL users to scale for next generation web and cloud applications.
Attendees posted a number of great questions to the MySQL developers, serving to provide additional insights into how these new features are implemented. So I thought it would be useful to post those below, for the benefit of those unable to attend the live webinar (note, you can listen to the On-Demand replay which is available now).
Before getting to the Q&A, there are a couple of other resources that maybe useful to …
[Read more]MySQL is the most popular open source database management system. It allows you to quickly download and install and run a powerful database system on almost any platform available including Linux, Windows, and Mac OS X etc.
Every time I have a conversation on SSD, someone mentions
btrfs
filesystem. And usually it is colored as a
solution that will solve all our problems, improve overall
performance and SSD in particular, and it is a saviour. Of course
it caught my curiosity and I decided to perform a benchmark
similar to what I did on ext4 filesystem over Intel 520 SSD.
I was prepared for surprises, as even on formatting stage,
mkfs.btrfs
says that filesystem is EXPERIMENTAL. In
case with filesystems I kind of agree with Stewart, so
question #1, what you should ask deciding on what filesystem to
use, is “Was this filesystem used in a production more than 5
years?”, so from this point, btrfs has a long way ahead.
How you can get btrfs? …