databasejournal.com databasejournal.com

MySQL and Character Sets

In spite of the dominance of English for business purposes, we still live in a multilingual world. At some point, most serious MySQL developers and DBA's will come across the need to store data from other languages and these may require other character sets or collations. What are character sets and collations? A character set is a set of characters, and the specific encoding for each character. A collation is a set of rules applied...

databasejournal.com databasejournal.com

A Database Journal Guide to MySQL 5 Certification: The DBA Stream

Introduction Last time we looked at the Developer Stream of the MySQL 5 certification. Now, in the last part of this series, we look at the DBA stream. Passing the DBA exam, (the title you can use once qualified is the Certified MySQL 5.0 Database Administrator (DBA)), requires more in-depth knowledge of MySQL's intricacies than the Developer exam. Although the two streams have been separated, and it's possible to follow either stream...

databasejournal.com databasejournal.com

A Database Journal Guide to MySQL 5 Certification

Introduction Last year I wrote a two-part series entitled the Database Journal Guide to MySQL certification. Part one covered the core certification, and part two the professional certification. Those two articles covered the MySQL 4 certification. Although it is still possible to achieve MySQL 4 certification, MySQL development has been rapid over the last year, and MySQL 5 is now the latest stable version. MySQL AB has released their...

databasejournal.com databasejournal.com

MySQL, today's contender

In May 2003, I wrote an article entitled MySQL--Yesterday's Toy, Tomorrow's Contender. I followed it up a year later with MySQL, Still tomorrow's contender? Two years have now passed, and, since it is May once again, I thought it is time to follow up and see where MySQL stands today. With MySQL 5.0 now well established, the prevalence of the toy database brigade has greatly diminished. MySQL has a rich feature set catering to a...

databasejournal.com databasejournal.com

MySQL 5.1 - the next generation

There are still people using MySQL 4.0 (and I even came across a MySQL 3.23 installation recently), but MySQL 5.1 is now the latest of the MySQL releases--with 5.1.7, the latest as I write; it has just moved from alpha to beta status. Recently I have been writing about what the future holds for MySQL what with all the Oracle moves. This month's article changes focus and I examine some of the new features in MySQL 5.1. New types of...

databasejournal.com databasejournal.com

Pressure on MySQL increases as Oracle purchases Sleepycat, with more to come

In November, I looked at Oracle's purchase of InnoDB, as well as their release of Oracle Express, and the effect on MySQL. In short, I concluded that the positives for Oracle were clear, but that MySQL must be feeling outmaneuvered. Since InnoDB, with its full transactional capability, has become an integral part of their product offering, I suggested that both BerkleyDB (their first transactional storage engine, but which has never...

databasejournal.com databasejournal.com

Date and Time in MySQL 5 - Page 2

The effects of the SQL MODE on date and time behavior The concept of a TIMESTAMP is rather different in MaxDB. With MySQL AB working towards greater integration between MaxDB and 'ordinary' MySQL, you can now run MySQL in MAXDB mode. In this mode, all TIMESTAMP fields are treated as ordinary DATETIME fields. Let's run the identical commands we ran earlier, but this time in MAXDB mode. We will change to MAXDB mode (and the later modes...

databasejournal.com databasejournal.com

MySQL Stored Functions

Introduction Continuing with our series on Stored Procedures and Functions (see part 1, part 2, or part 3), this month we focus on Stored Functions. Most of what we have covered in those earlier tutorials is relevant here, so I suggest you read those first if you haven't already. What's a Stored Function If procedural programming is new to you, you may be wondering what the difference is between a Stored Procedure and a Stored...

databasejournal.com databasejournal.com

Oracle's purchase of InnoDB, their release of Oracle Express, and the effect on MySQL

As most of you will know, the big news recently in the MySQL world, besides the launch of the long-awaited MySQL 5, involves Oracle. Oracle has done two things that will catch the attention of MySQL users. First was the purchase of Finnish company Innobase OY, who develop the code for the InnoDB storage engine, and secondly Oracle's release of their free Express edition database software. Oracle Express is limited to single-processor...

databasejournal.com databasejournal.com

MySQL Stored Procedures: Part 3

Introduction In part 3 of the ongoing series about MySQL's stored procedures, we look at handlers and cursors in particular - both logical constructs that allow added functionality. Handlers allow you to run statements if a certain condition is met, while cursors, although only nominally supported in MySQL 5, allow looping through a resultset, processing it row by row. If you have not yet done so, look at part 1 and part 2 of the...

databasejournal.com databasejournal.com

MySQL Stored Procedures: Part 3 - Page 2

Cursors Cursors are another of the frequently demanded features now supported by MySQL 5. For those familiar with other DBMS implementations, MySQL 5 does not yet support them completely. In fact, it has some quite severe restrictions. MySQL 5's cursors are asensitive (so you should not update the table while using a cursor, otherwise you will get unpredictable results), read-only (you cannot update using the cursor position) and...

databasejournal.com databasejournal.com

MySQL Stored Procedures: Part 2 - Page 2

Loops: WHILE Loops are a vital component of procedures - they allow the same portion of code to be repeated a number of time. WHILE loops, the first type of loop we are going to look at, continuously repeat a block while a particular condition is true.WHILE condition DO statement/s END WHILE Here is an example. Be careful when entering it though, and with all loops! Always create your procedures on a test server first. All novice (and...

databasejournal.com databasejournal.com

MySQL 5 Storage Engines

New Storage Engines in MySQL 5 MySQL 5 offers a number of new storage engines (previously called table types). In addition to the default MyISAM storage engine, and the InnoDB, BDB, HEAP and MERGE storage engines, there are four new types: CSV, ARCHIVE, FEDERATED and EXAMPLE, as well as a new name for the HEAP storage engine. It is now called the MEMORY storage engine. None of the new types are available by default - you can check for...

databasejournal.com databasejournal.com

A Database Journal Guide to MySQL Certification: Part 2, Professional Certification

MySQL Professional Certification Last month we looked at the MySQL Core certification, aimed at MySQL users and developers. For people wanting to go even further, there is another MySQL certification - the MySQL Professional certification, aimed at database administrators. The Core certification is a prerequisite for the Professional certification. The Pro test is more difficult, and requires experience in administrating...