What is MySQL?
From web-based apps and e-commerce stores to popular social networking sites, MySQL powers some of the most trafficked websites on the internet. It functions as an open source Relational Database Management System (RDBMS) – which is where all of an application's data lives – with the use of SQL (Structured Query Language), the most widely-used language for managing content within a database.
When installing a blog platform such as WordPress, the first step is to copy the application's files to your web host and then configure WordPress to use MySQL as the database back-end. Once installed, blog entries are stored as records in the database. An e-commerce site, for example, would use MySQL or a similar database program to store product information, customer data, and order details. This database is separate from other aspects of the site, such as the business logic, code, and such presentation items as graphics and UI buttons.
MySQL and LAMP
LAMP is an open source web development platform which includes 4 layers, and thus sometimes referred to as LAMP stack. Since the platform uses Linux as its OS, Apache as its web server, MySQL as the database management system and PHP as its scripting language, the acronym stands for "Linux, Apache, MySQL, and PHP”.
It’s the most common web server configuration in use today. In fact, if your hosting provider offers PHP MySQL hosting, it’s likely that it uses the LAMP stack. PHP applications usually run on top of the LAMP stack and plug directly into MySQL for database functions such as retrieving and saving data.
Working with MySQL
Are you using Linux web hosting? Then it’s likely you already have a MySQL database allocated to your account. If not, your provider can usually offer it free of charge. Windows versions of MySQL are also available, although less common. Advanced setup and configuration is usually left to your MySQL host, however you'll need several critical pieces of information when installing applications on your database:
- Database Name
- User Name
- Database Host (usually "local host")
Some web applications will also require you to provide a "Table Prefix" to differentiate between other applications using the same MySQL database. For example, the table prefix for WordPress is "wp_" so all table names with that prefix belong to MySQL.
Managing Your MySQL Database
Your Linux-based web hosting account often comes with a default MySQL database already set-up. Credentials for accessing the database should be provided alongside other account info for your hosting plan, such as FTP accounts, email, etc. Such hosting accounts usually provide a web interface for customers to manage their accounts, mostly using cPanel. The management tools for MySQL should also be accessible through this web interface.
In short, anything beyond a basic website will likely require a database back-end of some sort. MySQL is a free and ubiquitous RDBS that comes with most web hosting packages and may already be a part of your plan – especially if your site supports PHP or uses LAMP. As MySQL is the most common free database, more familiarity with its features can truly benefit you in the long run.
Visit our web hosting feature comparison for a complete overview of the best MySQL database hosting providers.