The 8.0.26 version of Mysql for Mac is available as a free download on our software library. This free software for Mac OS X was originally produced by Oracle Corporation. The file size of the latest installation package available is 418.3 M. MySQL is often deployed in a LAMP (Linux-Apache-MySQL-PHP), WAMP (Windows-Apache-MySQL-PHP), or MAMP (macOS-Apache-MySQL-PHP) environment. All components in LAMP is free and open-source, inclusive of the Operating System. The mother site for MySQL is https://www.mysql.com.

In addition to the core installation, the Package Installer also includes Section 2.4.3, “Installing and Using the MySQL Launch Daemon” and Section 2.4.4, “Installing and Using the MySQL Preference Pane” to simplify the management of your installation.

  • Apr 29, 2017 I am writing down the post to help beginners who want to set up MySQL on MAC. Download MySQL community edition from the mysql website. Select the operating system in my case its Mac OS X. And download the DMG archive. In the next step you can skip the login and directly download the file.
  • Installing MySQL Using the Native Installation Package. The free download for the Mac is the MySQL Community Server edition. Go to the MySQL website and download the latest version of MySQL for MacOS. Select the native package DMG archive version, not the compressed TAR version. Click the Download button next to the version you choose.

This article is applicable to MySQL 8.0, which is the successor of MySQL 5.7, where 5 was dropped?!

  • Double-click the MySQL installer package from the disk. It is named according to the version of MySQL you have downloaded. For example, for MySQL server 8.0.26 it might be named mysql-8.0.26-macos- 10.13-x8664.pkg. The initial wizard introduction screen references the MySQL server version to install.
  • In this video learn how to install MySQL on macOS (OSX).This video is from my online course SQL Beginner to Guru: MySQL Edition.Checkout the full course here.

I also got the same problem in mac OS X 10.10.4(Yosemite).SET PASSWORD work for me.Alter password for mysql- mysql SET PASSWORD = PASSWORD('yourpassword'); Query OK, 0 rows affected, 1 warning (0.01 sec) set your Mysql environment path variable in.bashprofile and add the below line. MySQL is often deployed in a LAMP (Linux-Apache-MySQL-PHP), WAMP (Windows-Apache-MySQL-PHP), or MAMP (macOS-Apache-MySQL-PHP) environment. All components in LAMP is free and open-source, inclusive of the Operating System. The mother site for MySQL is https://www.mysql.com. MySQL Shell is a component that you can install separately. MySQL Shell supports X Protocol and enables you to use X DevAPI in JavaScript or Python to develop applications that communicate with a MySQL Server functioning as a document store. For information about using MySQL as a document store, see Using MySQL as a Document Store. For installation on macOS, including using both the binary package and native PKG formats, see Section 2.4, “Installing MySQL on OS X”. For information on making use of an macOS Launch Daemon to automatically start and stop MySQL, see Section 2.4.3, “Installing a MySQL Launch Daemon”.

Introduction to Relational Database and SQL

Relational Databases

A relational database organizes data in tables. A table has rows (or records) and columns (or fields). Tables are related based on common columns to eliminate data redundancy and ensure data integrity.

Popular Relationship Database Management System (RDBMS) includes:

  • the commercial Oracle, IBM DB2, Microsoft SQL Server and Access, SAP Hana.
  • the open-source MySQL, PostgreSQL, mariaDB, Embedded Apache Derby (Java DB), mSQL (mini-SQL), SQLite, Apache OpenOffice's Base, and mongoDB (non-relational).

Structure Query Language (SQL)

A high-level programming language, called Structure Query Language (SQL), is designed for interacting with the relational databases. SQL defines a set of commands, such as SELECT, INSERT, UPDATE, DELETE, CREATE TABLE, DROP TABLE, and etc.

Edgar F. Codd of IBM proposed the Relational Database Model in 1970. SQL, one of the earlier programming language, was subsequently developed by Donald D. Chamberlin and Raymond F. Boyce at IBM in the early 1970s. Oracle, subsequently, took it to a new height.

Mysql Client Macos Install

ANSI (American National Standard Institute) established the first SQL standard in 1986 (SQL-86 or SQL-87) - adopted by ISO/IEC as 'ISO/IEC 9075' - followed in 1989 (SQL-89), 1992 (SQL-92 or SQL2), 1999 (SQL-99 or SQL3), 2003 (SQL:2003), 2006 (SQL:2006), 2011 (SQL:2011) and 2016 (SQL:2016). However, most of the database vendors have their own directs, e.g., PL/SQL (Oracle), Transact-SQL (Microsoft, SAP), PL/pgSQL (PostgreSQL).

SQL By Examples

A relational database system organizes data in the following hierarchy:

  1. A relational database system contains many databases.
  2. A database comprises tables.
  3. A table have rows (or records) and columns (or fields).

Suppose we have a database called studentdb, a table called class101 in the database with 3 columns (id, name, gpa) and 4 rows as illustrated below. Each column has a data type. We choose: INT (integer) for column id, VARCHAR(50) (variable-length string of up to 50 characters) for name, and FLOAT (floating-point number) for gpa.

SQL (Structure Query Language) defines a set of intuitive commands (such as SELECT, INSERT, DELETE, UPDATE) to interact with relational database system.

SELECT
DELETE
INSERT
UPDATE
CREATE TABLE
DROP TABLE
Notes:
  1. Case Sensitivity: SQL keywords, names (identifiers), strings may or may not be case-sensitive, depending on the implementation.
    • In MySQL, the keywords are NOT case-sensitive. For clarity, I show the keywords in UPPERCASE in this article.
    • For programmers, it is BEST to treat the names (identifiers) and strings as case-sensitive.
      (In MySQL, column-names are always case insensitive; but table-names are case-sensitive in Unix, but case-insensitive in Windows (confused!!). Case-sensitivity in string comparison depends on the collating sequence used (?!).)
  2. String: SQL strings are enclosed in single quotes. But most implementations (such as MySQL) accept both single and double quotes.

Introduction to MySQL Relational Database Management System (RDBMS)

SQL is a programming language for interacting with relational databases. On the other hand, MySQL is a software - a Relational Database Management System.

MySQL is one of the most used, industrial-strength, open-source and free Relational Database Management System (RDBMS). MySQL was developed by Michael 'Monty' Widenius and David Axmark in 1995. It was owned by a Swedish company called MySQL AB, which was bought over by Sun Microsystems in 2008. Sun Microsystems was acquired by Oracle in 2010.

MySQL is successful, not only because it is free and open-source (there are many free and open-source databases, such as PostgreSQL, Apache Derby (Java DB), mSQL (mini SQL), SQLite and Apache OpenOffice's Base), but also for its speed, ease of use, reliability, performance, connectivity (full networking support), portability (run on most OSes, such as Unix, Windows, macOS), security (SSL support), small size, and rich features. MySQL supports all features expected in a high-performance relational database, such as transactions, foreign key, replication, subqueries, stored procedures, views and triggers.

MySQL is often deployed in a LAMP (Linux-Apache-MySQL-PHP), WAMP (Windows-Apache-MySQL-PHP), or MAMP (macOS-Apache-MySQL-PHP) environment. All components in LAMP is free and open-source, inclusive of the Operating System.

The mother site for MySQL is https://www.mysql.com. The ultimate reference for MySQL is the 'MySQL Reference Manual', available at https://dev.mysql.com/doc. The reference manual is huge - the PDF has over 3700 pages!!!

MySQL operates as a client-server system over TCP/IP network. The server runs on a machine with an IP address on a chosen TCP port number. The default TCP port number for MySQL is 3306. Users can access the server via a client program, connecting to the server at the given IP address and TCP port number.

MariaDB

Extracted from Wiki: MariaDB is a community-developed, commercially supported fork of the MySQL relational database management system (RDBMS), intended to remain free and open-source software under the GNU General Public License. Development is led by some of the original developers of MySQL, who forked it due to concerns over its acquisition by Oracle Corporation in 2009.

How to Install MySQL 8.0 and Get Started with SQL Programming

I want you to install MySQL on your own machine, because I want you to learn how to install, customize and operate complex industrial software system. Installation could be the hardest part in this exercise.

Step 0: Create a directory to keep all your works

IMPORTANT: Before getting started, check that you have a few GBs of Free Spaces.

Create a directory to keep all your works called:

  • (For Windows) 'c:myWebProject'.
  • (For macOS/Linux) '~/myWebProject' where '~' denotes your home directory.

Macos Mysql Install Location

Use your graphical interface, e.g., File Explorer (Windows), or Finder (macOS) to verify this directory. (Of course you can use your graphical interface to create this directory!)

For novices: It is important to follow this step. Otherwise, you will be out-of-sync with this article and will not be able to find your files later.

Step 1: Download and Install MySQL

For Windows

  1. Download MySQL Community Server 'ZIP ARCHIVE' from https://dev.mysql.com/downloads/mysql/:
    1. Under 'General Availability (GA) Releases' tab.
    2. Under 'MySQL Community Server 8.0.{xx}', where {xx} is the latest update number ⇒ In 'Select Operating System', choose 'Microsoft Windows'.
    3. Under 'Other Downloads', download 'Windows (x86, 64-bit), ZIP ARCHIVE (193MB) (mysql-8.0.{xx}-winx64.zip)'.
    4. Under 'MySQL Community Downloads', there is NO need to 'Login' or 'Sign up' - Just click 'No thanks, just start my downloads!'.
  2. UNZIP the downloaded file into your project directory 'C:myWebProject'. MySQL will be unzipped as 'c:myWebProjectmysql-8.0.{xx}-winx64'. (Right click on the file ⇒ Extract All ⇒ Choose the destination folder as 'c:myWebProject'.)
    For EASE OF USE, we shall shorten and rename the directory to 'c:myWebProjectmysql'. Take note and remember your MySQL installed directory!!!
  3. (NEW since MySQL 5.7.7) Initialize the database: Start a CMD (as administrator) ('Search' button ⇒ Enter 'cmd' ⇒ Right-Click on 'Command Prompt' ⇒ Run as Administrator) and issue these commands: During the installation, a superuser called root is created with a temporary password, as shown above. TAKE NOTE of the PASSWORD, COPY and SAVE it somewhere, and also TAKE A PICTURE!!!
    NOTE: If error 'VCRUNTIME140_1.dll was not found' occurs, check HERE.
  4. If you make a mistake or forgot your password, DELETE the entire MySQL directory 'C:myWebProjectmysql', and REPEAT step 2 and 3.

For macOS

Notes: The latest version of MySQL (8.0.23) works with macOS Catalina (10.15) and Big Slur (11). If you are running older version of macOS, you may need to find an archived version of MySQL @ https://dev.mysql.com/downloads/ ⇒ Archive.

  1. Download the MySQL Community Server 'DMG Archive' from https://dev.mysql.com/downloads/mysql/:
    1. Under 'General Availability (GA) Releases' tab.
    2. Under 'MySQL Community Server 8.0.{xx}', where {xx} is the latest update number ⇒ In 'Select Operating System', choose the 'macOS'.
    3. Select the appropriate 'macOS 10.15 (x86, 64-bit) DMG Archive' for macOS 10.15 or 11 (mysql-8.0.{xx}-macos10.15-x86_64.dmg).
      • To check your OS version ⇒ Click the 'Apple' logo ⇒ 'About this Mac'.
      • To check whether your macOS is 32-bit or 64-bit ⇒ Read http://support.apple.com/kb/ht3696. Unless you have a dinosaur-era machine, it should be 64-bit!
    4. There is NO need to 'Login' or 'Sign up' - Just click 'No thanks, just start my download'.
  2. To install MySQL (See https://dev.mysql.com/doc/refman/8.0/en/osx-installation-pkg.html for screen shots):
    1. Go to 'Downloads' ⇒ Double-click '.dmg' file downloaded.
    2. Double-click the 'mysql-8.0.{xx}-osx-10.{xx}-x86_64.pkg'.
    3. In 'Introduction', click 'Continue'.
    4. In 'License', choose 'Agree'.
    5. In 'Installation Type', click 'Install'.
    6. In 'Configuration', choose 'Use Strong Password Encryption', and enter a password for the 'root' user. Make sure you remember your password.
    7. MySQL will be installed in '/usr/local/mysql'. Take note of this installed directory!!
    8. Eject the '.dmg' file.
  3. If you make a mistake or forgot your password, stop the server (Click 'Apple' Icon ⇒ System Preferences ⇒ MySQL ⇒ Stop).
    Goto /usr/local (via Finder ⇒ Go ⇒ GoTo Folder ⇒ type /usr/local) and remove all the folders beginning with 'mysql...', e.g., 'mysql-8.0.{xx}...' and 'mysql', and Re-run Step 2.

For Ubuntu

Refer to 'How to install MySQL on Ubuntu'.


I shall assume that MySQL is installed in directory 'c:myWebProjectmysql' (for Windows) or '/usr/local/mysql' (for macOS). But you need to TAKE NOTE OF YOUR MySQL INSTALLED DIRECTORY. Hereafter, I shall denote the MySQL installed directory as <MYSQL_HOME> in this article.

Step 3: Start the 'Server'

The MySQL is a client-server system. The database is run as a server application. Users access the database server via a client program, locally or remotely thru the network, as illustrated:

  1. The server program is called 'mysqld' (with a suffix 'd', which stands for daemon - a daemon is a non-interactive process running in the background).
  2. The client program is called 'mysql' (without the 'd').

The programs mysqld and mysql are kept in the 'bin' sub-directory of the MySQL installed directory.

Startup Server

For Windows

To start the database server, launch a new CMD shell:

Note: The --console option directs the output messages to the console. Without this option, you will see a blank screen.

For macOS

The EASY WAY: Via graphical control. Click 'Apple' Icon ⇒ System Preferences ⇒ MySQL ⇒ Start or Stop.

The MySQL database server is now started, and ready to handle clients' requests.

Anything that can possibly go wrong, does! Read 'How to Debug'.

Shutdown Server

For Windows

The quickest way to shut down the database server is to press Ctrl-C to initiate a normal shutdown. DO NOT KILL the server via the window's CLOSE button.

Observe these messages from the MySQL server console:

For macOS

The EASY WAY: Via the graphical control. Click 'Apple' Icon ⇒ System Preferences ⇒ MySQL ⇒ Stop.

Macos Mysql Install Location

WARNING: You should properly shutdown the MySQL server. Otherwise, you might corrupt the database and might have problems restarting it. BUT, if you encounter problem shutting down the server normally, you may kill the 'mysqld' process in Task Manager (for Windows); or Activity Monitor (for macOS); or System Monitor (for Ubuntu).

Step 4: Start a 'Client'

Recall that the MySQL is a client-server system. Once the server is started, one or more clients can be connected to the database server. A client could be run on the same machine (local client); or from another machine over the network (remote client).

To login to the MySQL server, you need to provide a username and password. During the installation, MySQL creates a superuser called 'root' with a temporary password. I hope that you have taken note of this password! (Otherwise, re-install!)

The MySQL installation provides a command-line client program called 'mysql'. (Recall that the server program is called 'mysqld' with a suffix 'd'; the client program does not have the suffix 'd').

Let's start a command-line client with the superuser 'root'.

First, make sure that the server is running. See previous step to re-start the server if it has been shutdown.

For Windows

Start Another NEW CMD shell to run the client (You need to keep the CMD that run the server):

For macOS

Open a NEW 'Terminal' and issue these commands to start a MySQL client with superuser root:

(Skip Unless...) Read 'How to Debug'.

Step 5: Change the Password for the Superuser 'root'

As mentioned earlier, the MySQL installation creates a superuser called 'root' with a temporary random password. 'root' is a privileged user that can do anything, including deleting all the databases. You are required to change the root's password immediately after logging in.

Notes: If you get stuck entering a command, press Ctrl-C to abort the current command.

Changing the Password for 'root'

Let's continue with our client session started earlier.

Re-Start a Client as 'root' with the New Password

We have just changed the password for root and exited the client. Start a client and login as root again. Enter the password when prompted.

For macOS

Step 6: Create a New User

The superuser 'root' is privileged, which is meant for database administration and is not meant for operational. We shall create a new user - let's call it 'myuser' - with a lesser privilege. To create a new user, start a client with superuser 'root':

Explanation
  • CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'xxxx'
    We use the command 'create user' to create a new user called 'myuser'@'localhost', who can login to the server locally from the same machine (but not remotely from another machine), with password 'xxxx'.
  • GRANT ALL ON *.* TO 'myuser'@'localhost'
    The newly created user has NO privilege to perform any database operation including select. We use the 'grant' command to grant 'all' the privileges (including select, insert, delete, and so on) to this new user on ALL the databases and ALL the tables ('on *.*'). This new user, in practice, has the same privilege as root, except that it cannot issue grant command. For production, you should grant only the necessary privileges on selected databases and selected tables, e.g., 'grant select, insert, update on studentdb.*' - it can issue select, insert and update (but no delete, create/drop table) on ALL the tables of the database studentdb only.

Step 7: Create a new Database, a new Table in the Database, Insert Records, Query and Update

Recall that the MySQL server organizes data in the following hierarchy:

  1. A system contains many databases.
  2. A database contains many tables.
  3. A table contains rows (records) and columns (fields).

Let's create a database called 'studentdb', and a table called 'class101' in the database. The table shall have three columns: id (of the type INT - integer), name (of the type VARCHAR(50) - variable-length string of up to 50 characters), gpa (of the type FLOAT - floating-point number).

CAUTION: Programmers don't use blank and special characters in NAMES (database names, table names, column names). It is either not supported, or will pose you many more challenges.

Tips on Client's Session

Before we proceed, here are some tips on using the client:

  • You need to terminate your command with a semicolon (;), which sends the command to the server for processing. E.g.,
  • A command can span several lines. The prompt for subsequent lines changes to -> to denote continuation. You need to terminate the command with a semicolon (;). E.g., In other words, if you forget to type ';', you can type the ';' on the next line.
  • You can use c to cancel (abort) the current command. E.g.,
  • If you open a single/double quote, without closing it, the continuation prompt changes to '> or '> (instead of ->). For example,
  • You can also press Ctrl-C to abort the current command.
  • You can use up/down arrow keys to retrieve the previous/next commands, from the 'command history'.
  • (For Windows 10) You should enable Copy/Paste functions of CMD shell. To enable Copy/Paste, click the CMD's icon ⇒ Properties ⇒ Options ⇒ Edit Options ⇒ Check 'Enable Ctrl key shortcuts'. You can then use Ctrl-C/Ctrl-V for Copy/Paste.
SQL Programming

Let's start a client with our newly-created user 'myuser'.

Exercises:
  1. Select records with names starting with letter 'K'. (Hints: name like 'K%', see Section 'SQL by Examples')
  2. Select records with names NOT starting with letter 'K'. (Hints: name NOT like ...)
  3. Select records with gpa between 4.35 and 4.65. (Hints: test-1 AND test-2)
  4. Select records with names having a letter 'e'. (Hints: name like '%e%')
  5. Select records with names having a letter 'e' or 'a'. (Hints: test-1 OR test-2)
  6. Select records with names having a letter 'e' and gpa ≥ 4.5.

(Skip Unless... ) Read 'How to Debug'.

More Exercises

  1. Show all the databases.
  2. Create a new database called 'ABCTrading'.
  3. Set the 'ABCTrading' database as the default database.
  4. Show all the tables in the default database.
  5. Create a new table called 'products' with the columns and type indicated below.
  6. Show the table description.
  7. Insert the above records and list all the records.
  8. List records with name containing 'Pencil'.
  9. List records with price ≥ 1.0.
  10. Increase the price of all items by 10%, and list all the records.
  11. Remove 'Pen Red' from the table, and list all the records.

Many-to-many Relationship

In a bookstore, a book is written by one or more authors; an author may write zero or more books. This is known as a many-to-many relationship. It is IMPOSSIBLE to capture many-to-many relationship in a SINGLE table (or one spreadsheet) with a fixed number of columns, without duplicating any piece of information! For example, if you organize the data in the table below, you will not know how many author columns to be used; and you need to repeat all the data for repeating authors.

The many-to-many relationship between books and authors can be modeled with 3 tables, as shown below. A books table contains data about books (such as title and price); an authors table contains data about the authors (such as name and email). A table called books_authors joins the books and authors tables and captures the many-to-many relationship between books and authors.

Exercises
  1. Create a database called 'mybookstore'.
  2. Use 'mybookstore' as the default database.
  3. Create 3 tables 'books', 'authors', and 'books_authors' in the database 'mybookstore', with column names and types as shown in the database diagram.
  4. Insert the respective records into the tables, and list the contents of each of the tables.
  5. Try this query and explain the output:
  6. Try this query and observe how the tables are joined:
  7. List all the books (title, price, qty) by 'Tan Ah Teck' with price less than 20.
  8. List all the authors (name and email) for the book title 'Java for Dummies'.
  9. List all the books (title, price, qty) and all the authors (name and email) for books with title beginning with 'Java' (Hints: title LIKE 'Java%').

(Optional) Backup and Restore Databases

Backup via 'mysqldump' Utility Program

You can use the 'mysqldump' utility program to back up (i) the entire server (all databases), (ii) selected databases, or (ii) selected tables of a database. The 'mysqldump' program generates a SQL script that can later be executed to re-create the databases, tables and their rows.

For example, the following command backups the entire 'studentdb' database to a SQL script called 'backup_studentdb.sql'.

For macOS

Study the output file, which contains CREATE DATABASE, CREATE TABLE and INSERT statements to re-create the database and tables dumped earlier.

Restore via 'source' command in a mysql client

You can restore from the backup by running the 'source' command in a MySQL client. For example, to restore the studentdb backup earlier:

For macOS

Summary of Frequently-Used Commands

(For Windows) Starting MySQL Server and Client
(For macOS) Starting MySQL Server and Client
Frequently-used MySQL Commands

MySQL commands are NOT case sensitive.

(Skip Unless...) How to Debug?

'Everything that can possibly go wrong will go wrong.' The most important thing to do is to find the ERROR MESSAGES!!!

'VCRUNTIME140_1.dll was not found' when Running the Initialization for Windows

CAUSE: You do not have the required 'Microsoft Visual C++ redistributable runtime'.

SOLUTION: Goto 'The latest supported Visual C++ downloads' @ https://support.microsoft.com/en-gb/help/2977003/the-latest-supported-visual-c-downloads ⇒ Download 'x64: vc_redist.x64.exe' ⇒ run the executable to install 'Microsoft Visual C++ 2015-2019 redistributable (x64)' ⇒ Restart your computer ⇒ You can find 'vcruntime140_1.dll' under 'C:WindowsSystem32'.

Cannot Start the MySQL Server after Installation

First of all, check if you have already started an instance of MySQL Server:

  • For Windows, start the 'Task Manager', select 'Processes' and look for 'mysqld' processes. 'End' all the 'mysqld' processes.
  • For macOS, start the 'Activity Monitor', select 'All Processes' and look for 'mysqld' processes. 'Kill' all the 'mysqld' processes.
  • For Ubuntu, start the 'System Monitor' and look for 'mysqld' processes. 'Kill' all the 'mysqld' processes.

'Permission Denied' in creating temp files under macOS

No more disk space?!

Cannot Start the 'mysql' Client

Error Using the 'mysql' Client

Link to MySQL References & Resources

Table of Contents

Install Mysql On Macos Sierra

2.1 General Installation Guidance
2.1.1 Supported Platforms
2.1.2 Which MySQL Version and Distribution to Install
2.1.3 How to Get MySQL
2.1.4 Verifying Package Integrity Using MD5 Checksums or GnuPG
2.1.5 Installation Layouts
2.1.6 Compiler-Specific Build Characteristics
2.2 Installing MySQL on Unix/Linux Using Generic Binaries
2.3 Installing MySQL on Microsoft Windows
2.3.1 MySQL Installation Layout on Microsoft Windows
2.3.2 Choosing an Installation Package
2.3.3 MySQL Installer for Windows
2.3.4 Installing MySQL on Microsoft Windows Using a noinstall ZIP Archive
2.3.5 Troubleshooting a Microsoft Windows MySQL Server Installation
2.3.6 Windows Postinstallation Procedures
2.3.7 Windows Platform Restrictions
2.4 Installing MySQL on OS X
2.4.1 General Notes on Installing MySQL on OS X
2.4.2 Installing MySQL on OS X Using Native Packages
2.4.3 Installing a MySQL Launch Daemon
2.4.4 Installing and Using the MySQL Preference Pane
2.5 Installing MySQL on Linux
2.5.1 Installing MySQL on Linux Using the MySQL Yum Repository
2.5.2 Replacing a Third-Party Distribution of MySQL Using the MySQL YumRepository
2.5.3 Installing MySQL on Linux Using the MySQL APT Repository
2.5.4 Installing MySQL on Linux Using the MySQL SLES Repository
2.5.5 Installing MySQL on Linux Using RPM Packages from Oracle
2.5.6 Installing MySQL on Linux Using Debian Packages from Oracle
2.5.7 Installing MySQL on Linux from the Native Software Repositories
2.5.8 Deploying MySQL on Linux with Docker
2.5.9 Installing MySQL on Linux with Juju
2.6 Installing MySQL Using Unbreakable Linux Network (ULN)
2.7 Installing MySQL on Solaris
2.7.1 Installing MySQL on Solaris Using a Solaris PKG
2.8 Installing MySQL on FreeBSD
2.9 Installing MySQL from Source
2.9.1 Source Installation Methods
2.9.2 Source Installation Prerequisites
2.9.3 MySQL Layout for Source Installation
2.9.4 Installing MySQL Using a Standard Source Distribution
2.9.5 Installing MySQL Using a Development Source Tree
2.9.6 Configuring SSL Library Support
2.9.7 MySQL Source-Configuration Options
2.9.8 Dealing with Problems Compiling MySQL
2.9.9 MySQL Configuration and Third-Party Tools
2.10 Postinstallation Setup and Testing
2.10.1 Initializing the Data Directory
2.10.2 Starting the Server
2.10.3 Testing the Server
2.10.4 Securing the Initial MySQL Accounts
2.10.5 Starting and Stopping MySQL Automatically
2.11 Upgrading MySQL
2.11.1 Before You Begin
2.11.2 Upgrade Paths
2.11.3 Changes in MySQL 5.6
2.11.4 Upgrading MySQL Binary or Package-based Installations on Unix/Linux
2.11.5 Upgrading MySQL with the MySQL Yum Repository
2.11.6 Upgrading MySQL with the MySQL APT Repository
2.11.7 Upgrading MySQL with the MySQL SLES Repository
2.11.8 Upgrading MySQL on Windows
2.11.9 Upgrade Troubleshooting
2.11.10 Rebuilding or Repairing Tables or Indexes
2.11.11 Copying MySQL Databases to Another Machine
2.12 Downgrading MySQL
2.12.1 Before You Begin
2.12.2 Downgrade Paths
2.12.3 Downgrade Notes
2.12.4 Downgrading Binary and Package-based Installations on Unix/Linux
2.12.5 Downgrade Troubleshooting
2.13 Perl Installation Notes
2.13.1 Installing Perl on Unix
2.13.2 Installing ActiveState Perl on Windows
2.13.3 Problems Using the Perl DBI/DBD Interface

This chapter describes how to obtain and install MySQL. A summary of the procedure follows and later sections provide the details. If you plan to upgrade an existing version of MySQL to a newer version rather than install MySQL for the first time, see Section 2.11, “Upgrading MySQL”, for information about upgrade procedures and about issues that you should consider before upgrading.

If you are interested in migrating to MySQL from another database system, see Section A.8, “MySQL 5.6 FAQ: Migration”, which contains answers to some common questions concerning migration issues.

Installation of MySQL generally follows the steps outlined here:

  1. Determine whether MySQL runs and is supported on your platform.

    Please note that not all platforms are equally suitable for running MySQL, and that not all platforms on which MySQL is known to run are officially supported by Oracle Corporation. For information about those platforms that are officially supported, see https://www.mysql.com/support/supportedplatforms/database.html on the MySQL website.

  2. Choose which distribution to install.

    Several versions of MySQL are available, and most are available in several distribution formats. You can choose from pre-packaged distributions containing binary (precompiled) programs or source code. When in doubt, use a binary distribution. Oracle also provides access to the MySQL source code for those who want to see recent developments and test new code. To determine which version and type of distribution you should use, see Section 2.1.2, “Which MySQL Version and Distribution to Install”.

  3. Download the distribution that you want to install.

    For instructions, see Section 2.1.3, “How to Get MySQL”. To verify the integrity of the distribution, use the instructions in Section 2.1.4, “Verifying Package Integrity Using MD5 Checksums or GnuPG”.

  4. Install the distribution.

    To install MySQL from a binary distribution, use the instructions in Section 2.2, “Installing MySQL on Unix/Linux Using Generic Binaries”.

    To install MySQL from a source distribution or from the current development source tree, use the instructions in Section 2.9, “Installing MySQL from Source”.

  5. Perform any necessary postinstallation setup.

    After installing MySQL, see Section 2.10, “Postinstallation Setup and Testing” for information about making sure the MySQL server is working properly. Also refer to the information provided in Section 2.10.4, “Securing the Initial MySQL Accounts”. This section describes how to secure the initial MySQL user accounts, which have no passwords until you assign passwords. The section applies whether you install MySQL using a binary or source distribution.

  6. If you want to run the MySQL benchmark scripts, Perl support for MySQL must be available. See Section 2.13, “Perl Installation Notes”.

Install Mysql Macos Catalina

Instructions for installing MySQL on different platforms and environments is available on a platform by platform basis:

Install Mysql On Macos

  • Unix, Linux, FreeBSD

    For instructions on installing MySQL on most Linux and Unix platforms using a generic binary (for example, a .tar.gz package), see Section 2.2, “Installing MySQL on Unix/Linux Using Generic Binaries”.

    For information on building MySQL entirely from the source code distributions or the source code repositories, see Section 2.9, “Installing MySQL from Source”

    For specific platform help on installation, configuration, and building from source see the corresponding platform section:

    • Linux, including notes on distribution specific methods, see Section 2.5, “Installing MySQL on Linux”.

    • Solaris, including PKG and IPS formats, see Section 2.7, “Installing MySQL on Solaris”.

    • IBM AIX, see Section 2.7, “Installing MySQL on Solaris”.

    • FreeBSD, see Section 2.8, “Installing MySQL on FreeBSD”.

  • Microsoft Windows

    For instructions on installing MySQL on Microsoft Windows, using either the MySQL Installer or Zipped binary, see Section 2.3, “Installing MySQL on Microsoft Windows”.

    For details and instructions on building MySQL from source code using Microsoft Visual Studio, see Section 2.9, “Installing MySQL from Source”.

  • macOS

    For installation on macOS, including using both the binary package and native PKG formats, see Section 2.4, “Installing MySQL on OS X”.

    For information on making use of an macOS Launch Daemon to automatically start and stop MySQL, see Section 2.4.3, “Installing a MySQL Launch Daemon”.

    For information on the MySQL Preference Pane, see Section 2.4.4, “Installing and Using the MySQL Preference Pane”.

This article is applicable to MySQL 8.0, which is the successor of MySQL 5.7, where 5 was dropped?!

Introduction to Relational Database and SQL

Relational Databases

A relational database organizes data in tables. A table has rows (or records) and columns (or fields). Tables are related based on common columns to eliminate data redundancy and ensure data integrity.

Popular Relationship Database Management System (RDBMS) includes:

  • the commercial Oracle, IBM DB2, Microsoft SQL Server and Access, SAP Hana.
  • the open-source MySQL, PostgreSQL, mariaDB, Embedded Apache Derby (Java DB), mSQL (mini-SQL), SQLite, Apache OpenOffice's Base, and mongoDB (non-relational).

Structure Query Language (SQL)

A high-level programming language, called Structure Query Language (SQL), is designed for interacting with the relational databases. SQL defines a set of commands, such as SELECT, INSERT, UPDATE, DELETE, CREATE TABLE, DROP TABLE, and etc.

Edgar F. Codd of IBM proposed the Relational Database Model in 1970. SQL, one of the earlier programming language, was subsequently developed by Donald D. Chamberlin and Raymond F. Boyce at IBM in the early 1970s. Oracle, subsequently, took it to a new height.

ANSI (American National Standard Institute) established the first SQL standard in 1986 (SQL-86 or SQL-87) - adopted by ISO/IEC as 'ISO/IEC 9075' - followed in 1989 (SQL-89), 1992 (SQL-92 or SQL2), 1999 (SQL-99 or SQL3), 2003 (SQL:2003), 2006 (SQL:2006), 2011 (SQL:2011) and 2016 (SQL:2016). However, most of the database vendors have their own directs, e.g., PL/SQL (Oracle), Transact-SQL (Microsoft, SAP), PL/pgSQL (PostgreSQL).

SQL By Examples

A relational database system organizes data in the following hierarchy:

  1. A relational database system contains many databases.
  2. A database comprises tables.
  3. A table have rows (or records) and columns (or fields).

Suppose we have a database called studentdb, a table called class101 in the database with 3 columns (id, name, gpa) and 4 rows as illustrated below. Each column has a data type. We choose: INT (integer) for column id, VARCHAR(50) (variable-length string of up to 50 characters) for name, and FLOAT (floating-point number) for gpa.

SQL (Structure Query Language) defines a set of intuitive commands (such as SELECT, INSERT, DELETE, UPDATE) to interact with relational database system.

SELECT
DELETE
INSERT
UPDATE
CREATE TABLE
DROP TABLE
Notes:
  1. Case Sensitivity: SQL keywords, names (identifiers), strings may or may not be case-sensitive, depending on the implementation.
    • In MySQL, the keywords are NOT case-sensitive. For clarity, I show the keywords in UPPERCASE in this article.
    • For programmers, it is BEST to treat the names (identifiers) and strings as case-sensitive.
      (In MySQL, column-names are always case insensitive; but table-names are case-sensitive in Unix, but case-insensitive in Windows (confused!!). Case-sensitivity in string comparison depends on the collating sequence used (?!).)
  2. String: SQL strings are enclosed in single quotes. But most implementations (such as MySQL) accept both single and double quotes.

Introduction to MySQL Relational Database Management System (RDBMS)

SQL is a programming language for interacting with relational databases. On the other hand, MySQL is a software - a Relational Database Management System.

MySQL is one of the most used, industrial-strength, open-source and free Relational Database Management System (RDBMS). MySQL was developed by Michael 'Monty' Widenius and David Axmark in 1995. It was owned by a Swedish company called MySQL AB, which was bought over by Sun Microsystems in 2008. Sun Microsystems was acquired by Oracle in 2010.

MySQL is successful, not only because it is free and open-source (there are many free and open-source databases, such as PostgreSQL, Apache Derby (Java DB), mSQL (mini SQL), SQLite and Apache OpenOffice's Base), but also for its speed, ease of use, reliability, performance, connectivity (full networking support), portability (run on most OSes, such as Unix, Windows, macOS), security (SSL support), small size, and rich features. MySQL supports all features expected in a high-performance relational database, such as transactions, foreign key, replication, subqueries, stored procedures, views and triggers.

MySQL is often deployed in a LAMP (Linux-Apache-MySQL-PHP), WAMP (Windows-Apache-MySQL-PHP), or MAMP (macOS-Apache-MySQL-PHP) environment. All components in LAMP is free and open-source, inclusive of the Operating System.

The mother site for MySQL is https://www.mysql.com. The ultimate reference for MySQL is the 'MySQL Reference Manual', available at https://dev.mysql.com/doc. The reference manual is huge - the PDF has over 3700 pages!!!

MySQL operates as a client-server system over TCP/IP network. The server runs on a machine with an IP address on a chosen TCP port number. The default TCP port number for MySQL is 3306. Users can access the server via a client program, connecting to the server at the given IP address and TCP port number.

MariaDB

Extracted from Wiki: MariaDB is a community-developed, commercially supported fork of the MySQL relational database management system (RDBMS), intended to remain free and open-source software under the GNU General Public License. Development is led by some of the original developers of MySQL, who forked it due to concerns over its acquisition by Oracle Corporation in 2009.

How to Install MySQL 8.0 and Get Started with SQL Programming

I want you to install MySQL on your own machine, because I want you to learn how to install, customize and operate complex industrial software system. Installation could be the hardest part in this exercise.

Step 0: Create a directory to keep all your works

IMPORTANT: Before getting started, check that you have a few GBs of Free Spaces.

Create a directory to keep all your works called:

  • (For Windows) 'c:myWebProject'.
  • (For macOS/Linux) '~/myWebProject' where '~' denotes your home directory.

Use your graphical interface, e.g., File Explorer (Windows), or Finder (macOS) to verify this directory. (Of course you can use your graphical interface to create this directory!)

For novices: It is important to follow this step. Otherwise, you will be out-of-sync with this article and will not be able to find your files later.

Step 1: Download and Install MySQL

For Windows

  1. Download MySQL Community Server 'ZIP ARCHIVE' from https://dev.mysql.com/downloads/mysql/:
    1. Under 'General Availability (GA) Releases' tab.
    2. Under 'MySQL Community Server 8.0.{xx}', where {xx} is the latest update number ⇒ In 'Select Operating System', choose 'Microsoft Windows'.
    3. Under 'Other Downloads', download 'Windows (x86, 64-bit), ZIP ARCHIVE (193MB) (mysql-8.0.{xx}-winx64.zip)'.
    4. Under 'MySQL Community Downloads', there is NO need to 'Login' or 'Sign up' - Just click 'No thanks, just start my downloads!'.
  2. UNZIP the downloaded file into your project directory 'C:myWebProject'. MySQL will be unzipped as 'c:myWebProjectmysql-8.0.{xx}-winx64'. (Right click on the file ⇒ Extract All ⇒ Choose the destination folder as 'c:myWebProject'.)
    For EASE OF USE, we shall shorten and rename the directory to 'c:myWebProjectmysql'. Take note and remember your MySQL installed directory!!!
  3. (NEW since MySQL 5.7.7) Initialize the database: Start a CMD (as administrator) ('Search' button ⇒ Enter 'cmd' ⇒ Right-Click on 'Command Prompt' ⇒ Run as Administrator) and issue these commands: During the installation, a superuser called root is created with a temporary password, as shown above. TAKE NOTE of the PASSWORD, COPY and SAVE it somewhere, and also TAKE A PICTURE!!!
    NOTE: If error 'VCRUNTIME140_1.dll was not found' occurs, check HERE.
  4. If you make a mistake or forgot your password, DELETE the entire MySQL directory 'C:myWebProjectmysql', and REPEAT step 2 and 3.

For macOS

Notes: The latest version of MySQL (8.0.23) works with macOS Catalina (10.15) and Big Slur (11). If you are running older version of macOS, you may need to find an archived version of MySQL @ https://dev.mysql.com/downloads/ ⇒ Archive.

  1. Download the MySQL Community Server 'DMG Archive' from https://dev.mysql.com/downloads/mysql/:
    1. Under 'General Availability (GA) Releases' tab.
    2. Under 'MySQL Community Server 8.0.{xx}', where {xx} is the latest update number ⇒ In 'Select Operating System', choose the 'macOS'.
    3. Select the appropriate 'macOS 10.15 (x86, 64-bit) DMG Archive' for macOS 10.15 or 11 (mysql-8.0.{xx}-macos10.15-x86_64.dmg).
      • To check your OS version ⇒ Click the 'Apple' logo ⇒ 'About this Mac'.
      • To check whether your macOS is 32-bit or 64-bit ⇒ Read http://support.apple.com/kb/ht3696. Unless you have a dinosaur-era machine, it should be 64-bit!
    4. There is NO need to 'Login' or 'Sign up' - Just click 'No thanks, just start my download'.
  2. To install MySQL (See https://dev.mysql.com/doc/refman/8.0/en/osx-installation-pkg.html for screen shots):
    1. Go to 'Downloads' ⇒ Double-click '.dmg' file downloaded.
    2. Double-click the 'mysql-8.0.{xx}-osx-10.{xx}-x86_64.pkg'.
    3. In 'Introduction', click 'Continue'.
    4. In 'License', choose 'Agree'.
    5. In 'Installation Type', click 'Install'.
    6. In 'Configuration', choose 'Use Strong Password Encryption', and enter a password for the 'root' user. Make sure you remember your password.
    7. MySQL will be installed in '/usr/local/mysql'. Take note of this installed directory!!
    8. Eject the '.dmg' file.
  3. If you make a mistake or forgot your password, stop the server (Click 'Apple' Icon ⇒ System Preferences ⇒ MySQL ⇒ Stop).
    Goto /usr/local (via Finder ⇒ Go ⇒ GoTo Folder ⇒ type /usr/local) and remove all the folders beginning with 'mysql...', e.g., 'mysql-8.0.{xx}...' and 'mysql', and Re-run Step 2.

For Ubuntu

Refer to 'How to install MySQL on Ubuntu'.


I shall assume that MySQL is installed in directory 'c:myWebProjectmysql' (for Windows) or '/usr/local/mysql' (for macOS). But you need to TAKE NOTE OF YOUR MySQL INSTALLED DIRECTORY. Hereafter, I shall denote the MySQL installed directory as <MYSQL_HOME> in this article.

Step 3: Start the 'Server'

The MySQL is a client-server system. The database is run as a server application. Users access the database server via a client program, locally or remotely thru the network, as illustrated:

  1. The server program is called 'mysqld' (with a suffix 'd', which stands for daemon - a daemon is a non-interactive process running in the background).
  2. The client program is called 'mysql' (without the 'd').

The programs mysqld and mysql are kept in the 'bin' sub-directory of the MySQL installed directory.

Startup Server

For Windows

To start the database server, launch a new CMD shell:

Note: The --console option directs the output messages to the console. Without this option, you will see a blank screen.

For macOS

The EASY WAY: Via graphical control. Click 'Apple' Icon ⇒ System Preferences ⇒ MySQL ⇒ Start or Stop.

The MySQL database server is now started, and ready to handle clients' requests.

Anything that can possibly go wrong, does! Read 'How to Debug'.

Shutdown Server

For Windows

The quickest way to shut down the database server is to press Ctrl-C to initiate a normal shutdown. DO NOT KILL the server via the window's CLOSE button.

Observe these messages from the MySQL server console:

For macOS

The EASY WAY: Via the graphical control. Click 'Apple' Icon ⇒ System Preferences ⇒ MySQL ⇒ Stop.

Mysql Mac Download Archives Online

WARNING: You should properly shutdown the MySQL server. Otherwise, you might corrupt the database and might have problems restarting it. BUT, if you encounter problem shutting down the server normally, you may kill the 'mysqld' process in Task Manager (for Windows); or Activity Monitor (for macOS); or System Monitor (for Ubuntu).

Step 4: Start a 'Client'

Recall that the MySQL is a client-server system. Once the server is started, one or more clients can be connected to the database server. A client could be run on the same machine (local client); or from another machine over the network (remote client).

To login to the MySQL server, you need to provide a username and password. During the installation, MySQL creates a superuser called 'root' with a temporary password. I hope that you have taken note of this password! (Otherwise, re-install!)

The MySQL installation provides a command-line client program called 'mysql'. (Recall that the server program is called 'mysqld' with a suffix 'd'; the client program does not have the suffix 'd').

Let's start a command-line client with the superuser 'root'.

First, make sure that the server is running. See previous step to re-start the server if it has been shutdown.

For Windows

Start Another NEW CMD shell to run the client (You need to keep the CMD that run the server):

For macOS

Open a NEW 'Terminal' and issue these commands to start a MySQL client with superuser root:

(Skip Unless...) Read 'How to Debug'.

Step 5: Change the Password for the Superuser 'root'

As mentioned earlier, the MySQL installation creates a superuser called 'root' with a temporary random password. 'root' is a privileged user that can do anything, including deleting all the databases. You are required to change the root's password immediately after logging in.

Notes: If you get stuck entering a command, press Ctrl-C to abort the current command.

Changing the Password for 'root'

Let's continue with our client session started earlier.

Re-Start a Client as 'root' with the New Password

We have just changed the password for root and exited the client. Start a client and login as root again. Enter the password when prompted.

For macOS

Step 6: Create a New User

The superuser 'root' is privileged, which is meant for database administration and is not meant for operational. We shall create a new user - let's call it 'myuser' - with a lesser privilege. To create a new user, start a client with superuser 'root':

Explanation
  • CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'xxxx'
    We use the command 'create user' to create a new user called 'myuser'@'localhost', who can login to the server locally from the same machine (but not remotely from another machine), with password 'xxxx'.
  • GRANT ALL ON *.* TO 'myuser'@'localhost'
    The newly created user has NO privilege to perform any database operation including select. We use the 'grant' command to grant 'all' the privileges (including select, insert, delete, and so on) to this new user on ALL the databases and ALL the tables ('on *.*'). This new user, in practice, has the same privilege as root, except that it cannot issue grant command. For production, you should grant only the necessary privileges on selected databases and selected tables, e.g., 'grant select, insert, update on studentdb.*' - it can issue select, insert and update (but no delete, create/drop table) on ALL the tables of the database studentdb only.

Step 7: Create a new Database, a new Table in the Database, Insert Records, Query and Update

Recall that the MySQL server organizes data in the following hierarchy:

  1. A system contains many databases.
  2. A database contains many tables.
  3. A table contains rows (records) and columns (fields).

Let's create a database called 'studentdb', and a table called 'class101' in the database. The table shall have three columns: id (of the type INT - integer), name (of the type VARCHAR(50) - variable-length string of up to 50 characters), gpa (of the type FLOAT - floating-point number).

CAUTION: Programmers don't use blank and special characters in NAMES (database names, table names, column names). It is either not supported, or will pose you many more challenges.

Tips on Client's Session (Come Back to this Section If You Get Stuck in Running Command)

Before we proceed, here are some tips on using the client:

Mysql Mac Download Archives Software

  • You need to terminate your command with a semicolon (;), which sends the command to the server for processing. E.g.,
  • A command can span several lines. The prompt for subsequent lines changes to -> to denote continuation. You need to terminate the command with a semicolon (;). E.g., In other words, if you forget to type ';', you can type the ';' on the next line.
  • You can use c to cancel (abort) the current command. E.g.,
  • If you open a single/double quote, without closing it, the continuation prompt changes to '> or '> (instead of ->). For example,
  • You can also press Ctrl-C to abort the current command.
  • You can use up/down arrow keys to retrieve the previous/next commands, from the 'command history'.
  • (For Windows 10) You should enable Copy/Paste functions of CMD shell. To enable Copy/Paste, click the CMD's icon ⇒ Properties ⇒ Options ⇒ Edit Options ⇒ Check 'Enable Ctrl key shortcuts'. You can then use Ctrl-C/Ctrl-V for Copy/Paste.
SQL Programming

Let's start a client with our newly-created user 'myuser'.

Exercises:
  1. Select records with names starting with letter 'K'. (Hints: name like 'K%', see Section 'SQL by Examples')
  2. Select records with names NOT starting with letter 'K'. (Hints: name NOT like ...)
  3. Select records with gpa between 4.35 and 4.65. (Hints: test-1 AND test-2)
  4. Select records with names having a letter 'e'. (Hints: name like '%e%')
  5. Select records with names having a letter 'e' or 'a'. (Hints: test-1 OR test-2)
  6. Select records with names having a letter 'e' and gpa ≥ 4.5.

(Skip Unless... ) Read 'How to Debug'.

More Exercises

  1. Show all the databases.
  2. Create a new database called 'ABCTrading'.
  3. Set the 'ABCTrading' database as the default database.
  4. Show all the tables in the default database.
  5. Create a new table called 'products' with the columns and type indicated below.
  6. Show the table description.
  7. Insert the above records and list all the records.
  8. List records with name containing 'Pencil'.
  9. List records with price ≥ 1.0.
  10. Increase the price of all items by 10%, and list all the records.
  11. Remove 'Pen Red' from the table, and list all the records.

Many-to-many Relationship

In a bookstore, a book is written by one or more authors; an author may write zero or more books. This is known as a many-to-many relationship. It is IMPOSSIBLE to capture many-to-many relationship in a SINGLE table (or one spreadsheet) with a fixed number of columns, without duplicating any piece of information! For example, if you organize the data in the table below, you will not know how many author columns to be used; and you need to repeat all the data for repeating authors.

The many-to-many relationship between books and authors can be modeled with 3 tables, as shown below. A books table contains data about books (such as title and price); an authors table contains data about the authors (such as name and email). A table called books_authors joins the books and authors tables and captures the many-to-many relationship between books and authors.

Exercises
  1. Create a database called 'mybookstore'.
  2. Use 'mybookstore' as the default database.
  3. Create 3 tables 'books', 'authors', and 'books_authors' in the database 'mybookstore', with column names and types as shown in the database diagram.
  4. Insert the respective records into the tables, and list the contents of each of the tables.
  5. Try this query and explain the output:
  6. Try this query and observe how the tables are joined:
  7. List all the books (title, price, qty) by 'Tan Ah Teck' with price less than 20.
  8. List all the authors (name and email) for the book title 'Java for Dummies'.
  9. List all the books (title, price, qty) and all the authors (name and email) for books with title beginning with 'Java' (Hints: title LIKE 'Java%').

(Optional) Backup and Restore Databases

Backup via 'mysqldump' Utility Program

You can use the 'mysqldump' utility program to back up (i) the entire server (all databases), (ii) selected databases, or (ii) selected tables of a database. The 'mysqldump' program generates a SQL script that can later be executed to re-create the databases, tables and their rows.

For example, the following command backups the entire 'studentdb' database to a SQL script called 'backup_studentdb.sql'.

For macOS

Study the output file, which contains CREATE DATABASE, CREATE TABLE and INSERT statements to re-create the database and tables dumped earlier.

Download Mysql Client For Mac

Restore via 'source' command in a mysql client

You can restore from the backup by running the 'source' command in a MySQL client. For example, to restore the studentdb backup earlier:

For macOS

Summary of Frequently-Used Commands

(For Windows) Starting MySQL Server and Client
(For macOS) Starting MySQL Server and Client
Frequently-used MySQL Commands

MySQL commands are NOT case sensitive.

(Skip Unless...) How to Debug?

'Everything that can possibly go wrong will go wrong.' The most important thing to do is to find the ERROR MESSAGES!!!

'VCRUNTIME140_1.dll was not found' when Running the Initialization for Windows

CAUSE: You do not have the required 'Microsoft Visual C++ redistributable runtime'.

SOLUTION: Goto 'The latest supported Visual C++ downloads' @ https://support.microsoft.com/en-gb/help/2977003/the-latest-supported-visual-c-downloads ⇒ Download 'x64: vc_redist.x64.exe' ⇒ run the executable to install 'Microsoft Visual C++ 2015-2019 redistributable (x64)' ⇒ Restart your computer ⇒ You can find 'vcruntime140_1.dll' under 'C:WindowsSystem32'.

Cannot Start the MySQL Server after Installation

First of all, check if you have already started an instance of MySQL Server:

  • For Windows, start the 'Task Manager', select 'Processes' and look for 'mysqld' processes. 'End' all the 'mysqld' processes.
  • For macOS, start the 'Activity Monitor', select 'All Processes' and look for 'mysqld' processes. 'Kill' all the 'mysqld' processes.
  • For Ubuntu, start the 'System Monitor' and look for 'mysqld' processes. 'Kill' all the 'mysqld' processes.

Macos Install Mysql 5.7


'Permission Denied' in creating temp files under macOS

No more disk space?!

Cannot Start the 'mysql' Client

Macos Mysql Install Command

Error Using the 'mysql' Client

Macos Mysql Installer

Link to MySQL References & Resources

Update: oracle has released version 6.3.10! I recently updated my macbook pro to macos high sierra. Like every other os update, this one was fairly uneventful – with the exception of having to do a hard reboot to get the mac to come back up after the upgrade. That was definitely a nail biter! Once the continue reading 'hidden results grid on mysql workbench and macos high sierra'. We can see that the root user can only connect to the embedded MySQL server on localhost, and the localhost is the XAMPP embedded Linux server, but MySQL workbench is running on the Mac OS. So you should grant root user access permission to the MySQL server from any machine with ‘%’ as the host value.

Mysql Workbench Quit Unexpectedly Macos Catalina

Server: The TCP/IP address or host name of the server running a MySQL server. 127.0.0.1 Port: The TCP/IP port on which the MySQL server is listening. 3306 Database: Name of the current database for the connection. If the Database is not specified, no current database is set up. MyDB UserName: The MySQL user ID. Root Password: The MySQL. MySQL Workbench is a unified visual tool for database architects, developers, and DBAs. MySQL Workbench provides data modeling, SQL development, and comprehensive administration tools for server configuration, user administration, backup, and much more. MySQL Workbench is available on Windows, Linux and Mac OS X.

In this tutorial we will learn to install Apache, MySQL, PHP on macOS Catalina 10.15. About macOS Catalina. Apple released macOS Catalina 10.15 on 7th October 2019 and it includes Apache and PHP. So, all we have to do is enable them. Then install MySQL and we are ready for development. So, lets get started. Tagged MacOS macos-carbon macos-catalina macos-high-sierra macos-mojave macos-sierra mysql mysql-error-1045 mysql-workbench mysqli workbench Post navigation Binding an element of an array of an ObservableObject: ‘subscript(:)’ is deprecated. Hello Friends,In this video tutorial, you will learn to install MySql workbench 8.0 on mac os x Catalina. I have explained the whole process of installation.

(mysql-8.0.22-winx64.zip) MD5: a78e5da2bb87b51b6df06690977be199 Signature Windows (x86, 64-bit), ZIP Archive Debug Binaries & Test Suite: Sep 23, 2020: 434.4M. MySQL Community Edition is a freely downloadable version of the world's most popular open source database that is supported by an active community of open source developers and enthusiasts. MySQL Cluster Community Edition is available as a separate download.

MySQL Community Edition is a freely downloadable version of the world's most popular open source database that is supported by an active community of open source developers and enthusiasts.

MySQL Cluster Community Edition is available as a separate download. The reason for this change is so that MySQL Cluster can provide more frequent updates and support using the latest sources of MySQL Cluster Carrier Grade Edition.

MySQL 8.0 is the most current GA release. Download MySQL 8.0 »

Learn What's New in MySQL 8.0 and view the Performance Benchmarks.

Online Documentation:

  • Installation Instructions, Documentation and Change History
    for the MySQL 8.0 Generally Available (GA) Release
  • Installation Instructions, Documentation and Change History
    for the MySQL 5.7 Generally Available (GA) Release
  • Installation Instructions, Documentation and Change History
    for the MySQL 5.6 Generally Available (GA) Release

Looking for previous GA versions?

Mysql Workbench Macos Catalina Download

Mysql Workbench Mac Os Catalina Download

Mysql Server Macos Catalina


Start Mysql Server Macos

Download

Mysql Workbench Download Mac Os Catalina

Please report any bugs or inconsistencies you observe to our Bugs Database.
Thank you for your support!