MySQL Introduction

A look at the MySQL database—where it's been, where it is now, and where it's going.
MySQL User Base

As MySQL has about 50 mirrors over the world, and we don't get download statistics from them, it's hard to tell how many MySQL installations are out there.

The WWW and FTP log at http://www.mysql.com/ gives us the information shown in Tables 3 and 4; all counts are based on the number of distinct IPs.

Table 3.

Table 4.

In the Linux community, many sites use MySQL as a back end for dynamic web pages. Among those are http://slashdot.org/, http://freshmeat.net/ and http://www.linux.com/.

On linux.com, every page does somewhere between 10 and 20 queries to the database. And linux.com does anywhere between 500K and 800K page views per day. They run MySQL on its own server, a dual Xeon system with huge amounts of RAM and hard-disk space.

While writing this, I asked Linux Journal what they use as a web back end, and learned they also use MySQL. Among the awards we have been given, we highly value the “Most Used Database” 1998 award we got from Linux Journal's readers.

Where MySQL Is Today
  • Client/server

  • Multi-threaded, multi-user and very fast

  • APIs to many different languages

  • A good, free ODBC driver

  • Very portable

  • Many different column types which support all ANSI 92 and all ODBC 2.50 types as well as some new ones

  • Support for almost all ODBC 3.0 and SQL ANSI92 functions

  • Full support for SQL GROUP BY and ORDER BY clauses; support for group functions (COUNT, AVG, STD, SUM, MAX and MIN)

  • Ability to mix tables from different databases in the same query

  • Very flexible privilege system where privilege is based on host and user

  • Support for LEFT OUTER JOIN with both ANSI SQL and ODBC syntax

  • Fixed-length and variable-length records

  • Handles large databases; at TcX, we are using MySQL with some databases that contain over 50 million records.

  • Very robust with no memory leaks; all reported memory leaks have been in non-MySQL libraries, most notably some versions of glibc.

  • Ability to configure many different character sets, e.g., Japanese/Chinese

  • Error messages available in many languages

  • Many utilities and much contributed software

  • MySQL is extensively documented. Most questions can be resolved by reading the MySQL manual. We try to document everything to avoid getting too many questions on the MySQL mailing lists. The current manual has recently been improved considerably, thanks to the great work done by Paul DuBois.

  • Many small, extremely useful extensions that help you get your work done

New in the Latest Development Version (3.23)
  • Binary portable table format—it is now possible to copy MySQL table files between different architectures.

  • More and longer indexes—maximum is 32 which can be 500 bytes long (16/128 previously).

  • Even better index compression—it is faster and uses even less disk space.

  • Indexes on BLOB/TEXT columns just like a CHAR column.

  • Support for tables greater than 4GB on file systems which support files that big. The new limit is about 9 million terrabytes.

  • Has better fragmentation handling for the dynamic row format.

  • Added in-memory tables with hashed keys—an extremely fast way to have lookup tables.

  • Allows true floating-point columns with values such as 1.0E+10.

  • Includes example C code for a procedure that analyses the result from a SELECT.

  • Faster SELECT DISTINCT handling has been added.

  • Added much useful information in SHOW TABLE STATUS.

  • CREATE TABLE (...) SELECT * from a,c where something. This creates a table using data from a SELECT in one step. The data types and field names are automatically generated from the SELECT.

  • Removed the old limitation with big GROUP BY queries (with SQL_BIG_TABLES=0) that resulted in a “table is full” error.

  • Loads BLOBS from files with the LOAD_FILE function.

  • COUNT(DISTINCT) is supported.

______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

ok

Anonymous's picture

ok

Re: MySQL Introduction

Anonymous's picture

This articels is useful for plaing to use MySql database.

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState