How to install MySQL on macOS
Step by step instructions to install MySQL on macOS using Homebrew
On macOS, you can install MySQL easily using Homebrew.
Run:
brew install mysql
The above command should take a while, then print something like this:
You can now start the MySQL server by running:
brew services start mysql
Now we need to secure the MySQL server. By default the server comes without a root password, so we need to make sure it’s protected.
Run:
mysql_secure_installation
The procedure can take a while, but it gives a lot of power to make sure you get the best defaults out of the box:
Since we used brew services start mysql
to start MySQL, your Mac will re-start it at reboot. You can run:
brew services stop mysql
to stop this from happening, and also to immediately stop MySQL.
You can also avoid this daemon mode (that’s what we call programs that always run in the background and restart when the computer is restarted) by running:
mysql.server start
This will start MySQL and will keep it running until the computer is shut down, or until you run:
mysql.server stop
and it will not re-start it at reboot.
It’s up to you to decide which one you prefer.
Now you can connect to the server using the command:
mysql -u root -p
You will need to type the root
user password after you run this command, and once you are done you should see this screen:
A great GUI (graphical) software we can use to interact with a SQLite database is TablePlus.
It comes with a free trial that’s perfect for our usage, because it’s not time-based but rather it limits the amount of concurrent connections you can make to the database.
Download it from https://tableplus.com. I know there are macOS, Windows and Linux versions.
Click “Create a new connection…” and select MySQL in the list:
then set a name for the connection, and enter “root” and the password you set previously:
Click Connect
, and you should be connected to MySQL!
Note that we are connected using the root
user, which should only be used for administration purposes.
Day to day use of a database should be done using a normal user. We’ll see it in a separate tutorial.
→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
→ JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025