Showing entries 521 to 530 of 1065
« 10 Newer Entries | 10 Older Entries »
Displaying posts with tag: Uncategorized (reset)
2010 in review

The stats helper monkeys at WordPress.com mulled over how this blog did in 2010, and here’s a high level summary of its overall blog health:

The Blog-Health-o-Meter reads Wow.

Crunchy numbers

A helper monkey made this abstract painting, inspired by your stats.

A Boeing 747-400 passenger jet can hold 416 passengers. This blog was viewed about 11,000 times in 2010. That’s about 26 full 747s.

 

In 2010, there were 13 new posts, not bad for the first year! There was 1 picture uploaded, taking a total of 5kb.

The busiest day of the year was April 26th with 779 views. The most popular post that day was Oracle starts to monetize Free Software, is it wrong?.

[Read more]
RethinkDB and SSD Databases. SSD was not a revolution.

Turns out RethinkDB is a SSD database to watch in 2011. I’ve known about it for a while but it hasn’t really stood out just yet (I don’t know anyone running it in production).

That said, I’m excited by the potential.

What’s really shocking to me, is that while SSD and flash storage is very exciting, it wasn’t as revolutionary in 2010 as I would have liked to have seen.

I’m not sure why this is… there are people running them at scale but not significantly enough to make them a revolution.

RethinkDB is a MySQL data store optimized for solid state drives. Solid-state drives do away with moving parts and are extremely low-latency. Most database stores are designed for traditional hard drives and assume relatively high-latency. RethinkDB aims to allow database developers to take full advantage of the performance benefits of solid-state drives.

[From …

[Read more]
All of Your Favorite People

With speaker confirmations going out this week, the MySQL track at COLLABORATE 11 – IOUG Forum is filling up with the folks you expect to hear when you go to a MySQL event. Giuseppe Maxia will be playing in the MySQL sandbox, Matt Yonkovit will outline the 7 Deadly Performance Sins, and we’ll have Kaj Arno presenting a look at the MySQL ecosystem.  Oh, and Morgan Tocker. And Alexander Rubin. AND Bill Karwin. It’s like a real MySQL conference – oh wait, it IS a real MySQL conference! Of course, we owe a huge debt of gratitude to our Track Manager, Sheeri Cabral. (She’s presenting too, btw.)

If you haven’t considered COLLABORATE before, think of it as a way to get the best of all educational opportunities – real users and community heroes, combined with the Oracle technical staff who helped to bring you release 5.5.8. Plus, MySQL community members can use offer code …

[Read more]
Prepared statements and code re-use

An SQL error which was a pain to get to the root of:
ERROR 1444 (HY000): The prepared statement contains a stored routine call that refers to that same statement. It’s not allowed to execute a prepared statement in such a recursive manner

Whist coding mysql reverse reconciliation for Securich (the Security plugin for MySQL) I kept getting the above error! We all learn from experience and I’m definitely not going to forget about this one :).

Having stored routines calling other stored routines in a cascading fashion for four or five levels can get complicated and what I was lazy about came to bite me right back. I copy code from one proc to the other (code re-use) thus end up having same variable names in different procs and prepared statements in cascading stored routines is not a smart idea, hence the above error.

Solution:
Give prepared …

[Read more]
PHP 5.3.4 and MySQL 5.5.8 GA (libmysql)

As you are probably aware, PHP 5.3.4 does not compile with MySQL 5.5 GA. The details can be seen in MySQL bug queue. Basically, the problem boils down to incorrect installation of MySQL headers. MySQL 5.5 build system does not install the headers under the include-prefix/mysql directly but instead installs under the include-prefix directory itself. So, when the PHP build system looks for the MySQL headers, it cannot find <mysql/psi/mysql_thread.h> and so forth.

What is the fix?

The MySQL dev team has committed patches to fix this issue in …

[Read more]
running mysql with “memlock”

The documentation says that we need to run mysql as “root” user for it to be effective. The code also indicates the same thing where it tries to do a getuid call to check if the server is running as root user (sql/mysqld.cc:  if (locked_in_memory && !getuid())). The general rule of thumb is that we don’t want to run mysql or rather any database as root user since that leads to vulnerabilities.

Historically memlock seems to cause issues on some OS flavors where “mlockall” implementation is not stable. This is documented in mysql code with the below warning message.

The "–memlock" argument, which was enabled, uses system calls that are

unreliable and unstable on some operating systems and operating-system

versions (notably, some versions of Linux).  This crash could be due to use

of those buggy OS calls.  You should consider whether you really …

[Read more]
running mysql with “memlock”

The documentation says that we need to run mysql as “root” user for it to be effective. The code also indicates the same thing where it tries to do a getuid call to check if the server is running as root user (sql/mysqld.cc:  if (locked_in_memory && !getuid())). The general rule of thumb is that we don’t want to run mysql or rather any database as root user since that leads to vulnerabilities.

Historically memlock seems to cause issues on some OS flavors where “mlockall” implementation is not stable. This is documented in mysql code with the below warning message.

The "–memlock" argument, which was enabled, uses system calls that are

unreliable and unstable on some operating systems and operating-system

versions (notably, some versions of Linux).  This crash could be due to use

of those buggy OS calls.  You should consider whether you really …

[Read more]
Distributed Software Testing

About me

A word about me first: My name is Daniel Mewes and I just came over to California to work at RethinkDB as an intern for the oncoming months. After having been an undergraduate student of computer science at Saarland University, Germany for the last two years, I am exited to work on an influential real-world project at RethinkDB now. Why RethinkDB? Not only does RethinkDB develop an exciting and novel piece of database technology, RethinkDB also provides the great “startup kind” of work experience.

Software testing

In complex software systems like database management systems, different components have to work together. These components can interact in complex ways, yielding a virtually infinite number of possible states that the overall system can reach. This has consequences for software testing. As bugs in the code might only show up in a small fraction of the possible …

[Read more]
Downloading, compiling, and installing MySQL Server from source code

If you are running any GNU/Linux server operating system like RHEL 5 or CentOS 5, you may probably install MySQL server that comes with the operating system packages either during the initial setup or later using yum(8). The advantage being addition/removal of packages either using the GUI package manager or rpm(8), yum(8). Fair enough. But unfortunately the MySQL package (mysql-server) that comes bundled with RHEL 5.5 or CentOS 5.5 is fairly old (5.0.77). What if you want to install the latest stable version of MySQL yet have the advantage of removing/re-installing the software using rpm(8)?

In this blog post, I will guide you with compiling MySQL from source code yet installing the software through rpm(8) so that we tune and configure the software for the target machine and yet uninstall the software using RedHat package manager.

Compiling and Installing MySQL using rpmbuild(8)

First make sure you have sudo(8) access and …

[Read more]
Cache pre-loading on mysqld startup

The following quirky dynamic SQL will scan each index of each table so that they’re loaded into the key_buffer (MyISAM) or innodb_buffer_pool (InnoDB). If you also use the PBXT engine which does have a row cache but no clustered primary key, you could also incorporate some full table scans.

To make mysqld execute this on startup, create /var/lib/mysql/initfile.sql and make it be owned by mysql:mysql

SET SESSION group_concat_max_len=100*1024*1024;
SELECT GROUP_CONCAT(CONCAT('SELECT COUNT(`',column_name,'`) FROM `',table_schema,'`.`',table_name,'` FORCE INDEX (`',index_name,'`)') SEPARATOR ' UNION ALL ') INTO @sql FROM information_schema.statistics WHERE table_schema NOT IN ('information_schema','mysql') AND seq_in_index = 1;
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET SESSION group_concat_max_len=@@group_concat_max_len;

and in my.cnf add a line in the [mysqld] block

init-file = …
[Read more]
Showing entries 521 to 530 of 1065
« 10 Newer Entries | 10 Older Entries »