MySQL is an open source relational database.
MySQL is cross platform which means it runs on a number of different platforms such as Windows, Linux, and Mac OS etc.
In this tutorial, you will learn-
- What is MySQL?
- Why use MySQL?
- Introducing MySQL Workbench
- MySQL workbench- Modeling and Design tool
- MySQL workbench - SQL development tool
- MySQL workbench - Administration tool
- Install MySQL workbench Guide
There are a number of relational database management systems on the market.
Examples of relational databases include Microsoft SQL Server, Microsoft Access, Oracle, DB2 etc.
One may ask why we would choose MySQL over the other database management systems.
The answer to this question depends on a number of factors.
Let's look at the strengths of MySQL compared to over relational databases such as SQL Server-
- MySQL supports multiple storage engines each with its own specifications while other systems like SQL server only support a single storage engine. In order to appreciate this statement, let's look at two of the storage engines supported by MySQL.
- InnoDB: - its default storage engine provided with MySQL as of version 5.5. InnoDB supports foreign keys for referential integrity and also supports ACID-standard transactions.
- MyISAM: - it was the default storage engine for MySQL prior to version 5.5. MyISAM lacks support for transactions. Its advantages over InnoDB include simplicity and high performance.
- MySQL has high performance compared to other relation database systems. This is due to its simplicity in design and support for multiple-storage engines.
- Cost effective, it's relatively cheaper in terms of cost when compared to other relational databases. In fact, the community edition is free. The commercial edition has a licensing fee which is also cost effective compared to licensing fees for products such as Microsoft SQL Server.
- Cross platform - MySQL works on many platforms which means it can be deployed on most machines. Other systems such as MS SQL Server only run on the windows platform.
In order to interact with MySQL, you will need a server access tool that can communicate with MySQL server. MySQL supports multiple user connections.
MySQLWorkbench is a Visual database designing and modeling access tool for MySQL server relational database. It facilitates creation of new physical data models and modification of existing MySQL databases with reverse/forward engineering and change management functions.
- Models are at the core of most valid and high performance databases. MySQLworkbench has tools that allow developers and database administrators visually create physical database design models that can be easily translated into MySQL databases using forward engineering.
- MySQL workbench supports creation of multiple models in the same environment.
- It supports all objects such as tables, views, stored procedures, triggers, etc. that make up a database.
- MySQL workbench has a built in model validating utility that reports any issues that might be found to the data modeler.
- It also allows for different modeling notations and can be extended by using LUA a scripting language.
The figure shown below shows the modeling window for MySQLWorkbench.
Structured Query Language (SQL) allows us to manipulate our relational databases. SQL is at the heart of all relational databases.
- MySQLworkbench, has built in SQL visual editor.
- The Visual SQL editor allows developers to build, edit and run queries against MySQL server databases. It has utilities for viewing data and exporting it.
- Its syntax color highlighters help developers easily write and debug SQL statements.
- Multiple queries can be run and results automatically displayed in different tabs.
- The queries are also saved in the history panel for later retrieval and running.
The figure shown below shows the SQL development window for MySQL Workbench.
Server administration plays a critical role in securing the data of the company. The major issues concerning server administration are users' management, server configuration, server logs and many more. Workbench MySQL has the following features that simplify the process of MySQL server administration;
- User administration - visual utility for managing users that lets database administrators easily add new and remove existing users if need arises, grant and drop privileges and view user profiles.
- Server configuration - allows for advanced configuration of the server and fine tuning for optimal performance.
- Database backup and restorations - visual tool for exporting/importing MySQL dump files. MySQL dump files contain SQL scripts for creating databases, tables, views, stored procedures and insertion of data.
- Server logs - visual tool for viewing MySQL server logs. The logs include error logs, binary logs and InnodDB logs. These logs come in handy when performing diagnosis on the server. The figure shown below shows the modeling window for MySQL Workbench.
The figure shown below shows the Admin panel for Workbench MySQL .
This is a 2 step process
1) Install MySQL Community Server
2) Install MySQL workbench. - You can install the workbench using a zip file or an msi installer (recommended)
Note: You will require Administrator or Power User Privileges to perform installation.
Once you have finished installing above you need to set up MySQL Workbench as shown below -
1. First step is launching the Workbench MySQL . What you see is called Home Window
2. Next you need to create your MySQL Server Connection which contains details about target database server including how to connect to it. Click " + " in MySQL Workbench Home Window. This will open Setup New Connection . Wizard
3. As a beginner you can create a connection for a locally installed server. Click Configure Server Management button in Setup New Connection window to check the cofiguration of the MySQL server.
4. A new window opens named Configure Local Management . Click Next button to continue.
5. Next the Wizard will test connections to database. If test fails, go back and correct database connection parameters.5. Next it will open a pop up window asking your root password to test your connection with the local mysql server instance. The password is the one you set during installation of MySQL Workbench. Enter your password and press OK
6. Next the Wizard will test connections to database. If test fails, go back and correct database connection parameters. Else if all tests are sucessful click Next to continue.
7. After that a new wizard will open about Local Service Management - It lets you switch between multiple mysql severs installed on one machines. As a beginner you can bypass this and click Next to continue.
8. The Wizard will then check ability to access MySQL Server Configuration File, and test start/stop commands.
9. Next you can review current configurations. After reviewing the configurations, Click Finish to finsh server cofiguration
10. Next Step is to setup a connection, which can be used to connect to server. If you have not created a connection already, you can use the default values given. Click on Test Connection [ 2 ] after entering the Connection Name [ 1 ].
11. A new dialog box will open asking you password to root/selected user. If your MySQL root user has a password, you can enter that using Store in Vault feature. Click OK.
If the entered password for the user is correct then the following screen will show. Click on both OK buttons and you will be good to go.
A new instance is shown in the homepage
Double click and start querying.
- MySQL is an open source relational database that is cross platform.
- MySQL supports multiple storage engines which greatly improve the server performance tuning and flexibility. Prior to version 5.5, the default storage engine was MyISAM which lacked support for transactions, as of version 5.5; the default storage engine is InnoDB which supports transactions and foreign keys.
- MySQL server can be administered using a number of server access mysql tools which include both commercial and open source products. Popular examples include;
- phpMyAdmin - cross platform web based open source server access tool
- SQLYog - targeted at the windows platform, desktop commercial server access tool
- MySQL workbench - cross platform open source server access tool.
- MySQL workbench is an integrated development environment for MySQL server. It has utilities for database modeling and designing, SQL development and server administration.