From time to time dialogs need some usability refactoring. So
happened with the good old Copy table dialog in
HeidiSQL. New features:
- Select specific indexes or foreign keys to be created in the
new table
- An editor for a WHERE clause, for cases in which you only need
a subset of the original row data in the target table
- A menu for recently used WHERE clauses, so you don't need to
keep them all in mind
- Prompts for overwriting if the new table exists
Thanks to Daniel for ideas and feature request
number 2,000.
In case you haven't figured it out, I'm a fan of Guy Kawasaki and his "How to Change the World " blog. If you like his blog, you should check out his book "Reality Check." Yes, you can read most of the content for free on the web, but sometimes a printed copy is more convenient. Like if you're on an airplane. Or on the toilet. Or if you want to underline it. Or if you want to underline it while you're on the toilet on an airplane. Ok, you get the idea.
The book covers some of the best items from his blog, categorized into themes like starting a company, raising money, business planning, innovation, marketing, schmoozing, management, hiring and firing and more. It's not a bunch of high-falutin' theories either. It's hard …
[Read more]Today I received notice that next week’s Velocity conference is at maximum capacity. With just under 2 weeks before the start of ODTUG Kaleidoscope in Washington DC we still have room for late registrations. There is 4 days of MySQL content, free events and also a Sunday Symposium that includes talks on performance and high availability.
Contact any of the MySQL speakers directly and you can receive a special 50% discount code. This is only for MySQL attendees.
If you live in the DC area and only want the FREE option then come along and join use on Monday night for a free session and reception.
ODTUG Kaleidoscope 2010
July 27 – July 1
Marriott Wardman Part Hotel
2660 Woodley Road NW
Washington, District Of Columbia 20008
www.odtugkaleidoscope.com …
This post explains how to disable Arbitration when using MySQL Cluster. It gives a case where this could be useful.
First, a piece of advice: you do not want to run MySQL Cluster
with arbitration disabled. But if you must, e.g. because of
an oversight in your implementation, you can.
Arbitration is very important in MySQL Cluster. It makes sure you
don't end up with a Split Brain situation: 2 halves working
independently, continuing changing data, making it impossible for
them to work together later on.
However, Arbitration comes with a price: you need an extra machine. "Sure, what's …
[Read more]
What makes you think jdbc autoreconnect is needed?
Application is idle for long periods at a time?
Wait_timeout too short?
Network failure or glitches?
Some good suggestions form Mark Matthews - Bug #5020
Having encountered the problem again myself today, trying to make
jdbc for mysql reconnect any terminated connections using
autoreconnect=true I figured out a way to work it out from the
pooling side.
Introduction to the problem:
On the mysql side wait_timeout is set to default 8hrs and any connections idle for longer than that were beomg terminated despite setting the connection string to: url=jdbc:mysql://localhost:3306/dbname?autoReconnect=true. The application was thence throwing an exception.
The solution was to introduce a ping from the pooler which for “Ibatis”, the pooler technology used …
[Read more]The need: Often there is a requirement where data in a particular table has to be processed, and the data processing might be slow, while the table might be a one that is used by your application extensively. For example, a logging table that logs page hits. Or there might be an archiving operation that has to be performed on a particular table. Archiving / processing / aggregating records, all these operations are slow and can really blog down a website, combine that with the added overhead if the table that needs to have these operations performed is one that...
This chapter starts as:
Chapter 4. Miscellaneous.
There are cases when wrong output is just symptom of wrong input
made before.
For example, you start to receive wrong data at particular step
of the
scenario. After analysis of the SELECT query (or queries) is
clear what
queries are correct and return exactly same data which exists in
the
table (or tables).
This means wrong data was inserted at the earlier step.
How to know when it happened?
Start from the step of the scenario which exists just
before
step which does output, check every query as was described in
earlier
chapters. If everything works correctly, examine earlier step,
repeat
until you find the error.
I'm pleased to report that so far the Soccer World Cup has been
pulled off rather successfully, with only minor incidents
reported. I have however noticed local news showing some
'feel-good' stories that are obviously written to give a false impression to the international media of
the real situation here. Let's hope the unions and Eskom workers
don't mess things up by holding a gun to the Country's head with
protesting/striking too much in the
international media's light.. Hold thumbs..
BTW, I hate the vuvuzela :)
I thought I should share two important MySQL bugs with you today.
In case you ever used YaSSL to establish …
Update (8/7/2012): After setting up a new OS X (Lion), I had installed MySQL via MacPorts and just moved my db files over to the case sensitive partition. That works fine (been using it this way for a month). With exception to the note below, I didn’t have to go through the trouble of moving the entire MySQL install. So in my case, I moved /opt/local/var/db/mysql5 to my other partition /Volumes/Macintosh HD 2/mysql5. Then created a symbolic link pointing from the old to the new location. That’s it.
Original (2010):
MySQL Workbench doesn’t play nice with case
insensitive file systems when you try to use the
db synchronization feature on schemas with mixed case table
names. …And the lower_case_table_names option in MySQL
doesn’t quite fix it.
Ultimately, I decided to copy and move MySQL over to a …
[Read more]This chapter starts as:
Chapter 4. Miscellaneous.
There are cases when wrong output is just symptom of wrong input
made before.
For example, you start to receive wrong data at particular step
of the
scenario. After analysis of the SELECT query (or queries) is
clear what
queries are correct and return exactly same data which exists in
the
table (or tables).
This means wrong data was inserted at the earlier step.
How to know when it happened?
Start from the step of the scenario which exists just
before
step which does output, check every query as was described in
earlier
chapters. If everything works correctly, examine earlier step,
repeat
until you find the error.