MySQL, the most popular Open Source SQL database management system, is developed, distributed, and supported by Oracle Corporation.
Many computer programs, including web-based programs like blogs, picture galleries and CMS need to store and retrieve data. For example, a blog needs to store the posts (ie, articles) written, and retrieve them when a visitor goes to the site.
Similarly, picture galleries store information about pictures (for example, for sites that allow users to rate the images, the numerical rating for each image is stored in a database).
Instead of reinventing the wheel and implementing their own system of storing and retrieving data, these softwares simply use the specialised database programs.
To make it easy for other programs to access data through them, many database software support a computer language called "SQL" (often pronounced as "sequel"). SQL was specially designed for such a purpose.
Programs that want the database software to handle the low-level work of managing data simply use that language to send it instructions.
There are many databases that support the use of SQL to access their data, among them MySQL and PostgreSQL. In other words, MySQL is a brand of database software, one of many. The same goes for PostgreSQL.
These two databases are very popular among programs that run on websites, which is why you often see one or both of them being advertised in the feature lists of web hosts, as well as being listed as one of the "system requirements" for certain web software (like blogs and content management systems).
A database is a structured collection of data. It may be anything from a simple shopping list to a photo gallery or the vast amounts of information in a corporate network.
To add, access, and process data stored in a computer database, you need a database management system(DBMS) such as MySQL Server. Since computers are very good at handling large amounts of data, database management systems play a central role in computing, as standalone utilities, or as parts of other applications.
The following list shows the most important properties of MySQL. This section is directed to the reader who already has some knowledge of relational databases.
We will use some terminology from the relational database world without defining our terms exactly. On the other hand, the explanations should make it possible for database novices to understand to some extent what we are talking about.
Relational Database System:
Like almost all other database systems on the market, MySQL is a relational database system.
Client/Server Architecture:
MySQL is a client/server system. There is a database server (MySQL) and arbitrarily many clients (application programs), which communicate with the server; that is, they query data, save changes and more. The clients can run on the same computer as the server or on another computer (communication via a local network or the Internet).
MySQL software is Open Source.
Almost all of the familiar large database systems (Oracle, Microsoft SQL Server, etc.) are client/server systems.
These are in contrast to the file-server systems, which include Microsoft Access, dBase and FoxPro.
The decisive drawback to file-server systems is that when run over a network, they become extremely inefficient as the number of users grows.
MySQL replication:
MySQL replication is a process that allows you to easily maintain multiple copies of a MySQL data by having them copied automatically from a master to a slave database.