3,467 reputation
1720
bio website karwin.com
location California
age 47
visits member for 3 years, 4 months
seen 1 hour ago

I'm Senior Knowledge Manager at Percona, a services company specializing in the MySQL database.

I've been a software engineer since 1987, and my specialty is as an SQL maven. I also have experience programming in Java, PHP, Perl, C, JavaScript, and I have many other coding skills.

I've written a book, SQL Antipatterns: Avoiding the Pitfalls of Database Programming from Pragmatic Bookshelf, based on the most common SQL problems I've answered on Stack Overflow and other forums, mailing lists, and newsgroups over the past 15 years.


Nov
25
comment Increase performance WITHOUT adding indexes
@RolandoMySQLDBA, have you gotten improvement from putting tmpdir on a tmpfs? I have tried it and found little to no improvement. The overhead of creating temp tables seems to be the bottleneck. The savings by using tmpfs isn't enough to fix performance issues. I suspect temp tables on disk use the filesystem cache and end up living in system memory anyway.
Nov
25
comment Increase performance WITHOUT adding indexes
@TobiasBaumeister, tmp tables on "disk" (even if it's a RAM disk or tmpfs) uses the MyISAM storage engine by default. You can also put a limit on the size of the RAM disk. Whereas tmp tables in memory use the MEMORY (aka HEAP) storage engine, and can use up to tmp_table_size memory per thread. Also, MEMORY storage engine does not support TEXT/BLOB columns.
Oct
29
comment How can i make dump of big mysql table?
"Connection timed out" or "No route to host" when you try to connect usually indicates that you cannot reach the server from the host you're running the mysqldump client on. Sounds like you have no access to the server at all, possibly because of a firewall. You should talk to the network administrator to find out if you can get a VPN connection or access to another client host on the same network.
Oct
16
revised 1 query using OR operator in where clause vs multiple query equal condition where clause in mysql
added 565 characters in body
Oct
16
answered 1 query using OR operator in where clause vs multiple query equal condition where clause in mysql
Oct
10
comment Percona MySQL 5.5 Unique key is duplicated
@PrakashK, here's a link: dev.mysql.com/doc/refman/5.6/en/binary-log.html
Oct
2
answered Upgrading to new cPanel Server with mySQL on SSD — What should I change in my.cnf?
Oct
2
comment Upgrading to new cPanel Server with mySQL on SSD — What should I change in my.cnf?
@ceejayoz, we at Percona frequently see scaling problems that are fixed by disabling the query cache. I advise to disable it unless you see a very favorable ratio of QC hits/misses, perhaps 10:1 or more.
Sep
28
answered What is the cost of adding a foreign key in mysql?
Sep
26
revised Using an index for both asc and desc on a string column
added 498 characters in body
Sep
26
comment Using an index for both asc and desc on a string column
@ypercube, yeah, you're right, I think I created the collation naively by just reversing the order of all the bytes. It turns out that designing collations is more complex than can be done in a few minutes in a StackOverflow post! :-) Anyway, this answer at least serves as a demo of how to do it.
Sep
26
comment Using an index for both asc and desc on a string column
@ypercube, see example of CHAR above.
Sep
26
revised Using an index for both asc and desc on a string column
added 625 characters in body
Sep
25
comment Using an index for both asc and desc on a string column
It's a pretty odd case.
Sep
25
comment Using an index for both asc and desc on a string column
@Cratylus, I just copied the block of codes from the latin1_general_ci collation in the same file, and reversed the order.
Sep
25
comment Speed Up Index Creation in MySQL
I guess I assume everyone using MySQL is using a Linux server. Because for the most part, they are. Running a Windows server on a VM seems to me like fighting a boxing match with both hands tied behind your back.
Sep
25
comment Speed Up Index Creation in MySQL
See msdn.microsoft.com/library/dn197896.aspx, it confirms that you only get 300 IOPS per disk in Azure. That's really disappointing.
Sep
25
comment Speed Up Index Creation in MySQL
Okay then go with the tmpfs solution. Based on this and your other question, it sounds like your VM disks are really slow.
Sep
25
answered Speed Up Index Creation in MySQL
Sep
25
revised Using an index for both asc and desc on a string column
added 4265 characters in body