The first step is to download MySQL server. Go to the MySQL web site and select the version that matches your version of Mac OS. Select the DMG archive version. After the DMG file finishes downloading click on it to open. Step by Step process to Download MySQL. To download MySQL Server, first Go to the MySQL website by clicking this link Download. Next, If you or your organization had Enterprise Edition license, then download the enterprise edition. It will ask you for the Oracle sigh in credentials, and then you have to download it. Mysql free download - MySQL Database Server, MySQL Workbench, MySQL Query Browser, and many more programs. MAC - ETL Google Analytics Data to MySQL / MS SQL Server.
Recommend switching to Docker
I finally switched to using Docker for local development on macOS. While the following tutorial works for macOS Catalina, it has limitations. I recommend following my latest tutorial on installing Apache, MySQL, and PHP on macOS using Docker.
Note: This post is for new installations. If you have installed Apache, PHP, and MySQL for Mac OS Mojave, read my post on Updating Apache, PHP, and MySQL for macOS Catalina.
I am aware of the web server software available for macOS, notably MAMP, as well as package managers like brew
. These get you started quickly. But they forego the learning experience and, as most developers report, can become difficult to manage.
macOS runs atop UNIX. Most UNIX software installs easily on macOS. In Additional, Apache and PHP come preinstalled with macOS. So to create a local web server, all you need to do is configure Apache and install MySQL.
Running Commands
First, open the Terminal app and switch to the root
user so you can run the commands in this post without any permission issues:
Enable Apache on macOS
Verify It works! by accessing http://localhost
Enable PHP for Apache
First, make a backup of the default Apache configuration. This is good practice and serves as a comparison against future versions of macOS.
Now edit the Apache configuration. Feel free to use a different editor if you are not familiar with vi.
Uncomment the following line (remove #
):
Restart Apache:
You can verify PHP is enabled by creating a phpinfo()
page in your DocumentRoot
.
The default DocumentRoot
for macOS Catalina is /Library/WebServer/Documents
. You can verify this from your Apache configuration.
Now create the phpinfo()
page in your DocumentRoot
:
Verify PHP by accessing http://localhost/phpinfo.php
Install MySQL on macOS Catalina
Download and install the latest MySQL generally available release DMG for macOS. MySQL 8 is the latest version. But older versions are available if you need to support older applications.
When the install completes it will provide you with a temporary password. Copy this password before closing the installer. You will use it again in a few steps.
The README suggests creating aliases for mysql
and mysqladmin
. However there are other commands that are helpful such as mysqldump
. Instead, you can update your path to include /usr/local/mysql/bin
.
Note: You will need to open a new Terminal window or run the command above for your path to update.
Finally, you should run mysql_secure_installation
. While this isn't necessary, it's good practice to secure your database. This is also where you can change that nasty temporary password to something more manageable for local development.
Connect PHP and MySQL
You need to ensure PHP and MySQL can communicate with one another. There are several options to do so. I like the following as it doesn't require changing lots of configuration:
Additional Configuration (optional)
The default configuration for Apache 2.4 on macOS seemed pretty lean. For example, common modules like mod_rewrite
were disabled. You may consider enabling this now to avoid forgetting they are disabled in the future.
I edited my Apache Configuration:
I uncommented the following lines (remove #
):
If you develop multiple projects and would like each to have a unique url, you can configure Apache VirtualHosts for macOS.
If you would like to install PHPMyAdmin, return to my original post on installing Apache, PHP, and MySQL on macOS.
Find this interesting? Let's continue the conversation on Twitter.
I’m trying to setup up MySQL on mac os 10.6 using Homebrew by brew install mysql 5.1.52
.
Download Mysql Server 5.6 For Mac
Everything goes well and I am also successful with the mysql_install_db
.
However when I try to connect to the server using:
I get:
I’ve tried to access mysqladmin or mysql using -u root -proot
as well,
but it doesn’t work with or without password.
This is a brand new installation on a brand new machine and as far as I know the new installation must be accessible without a root password. I also tried:
but I also get
I think one can end up in this position with older versions of mysql already installed. I had the same problem and none of the above solutions worked for me. I fixed it thus:
Used brew’s remove
& cleanup
commands, unloaded the launchctl
script, then deleted the mysql directory in /usr/local/var
, deleted my existing /etc/my.cnf
(leave that one up to you, should it apply) and launchctl plist
Updated the string for the plist. Note also your alternate security script directory will be based on which version of MySQL you are installing.
Step-by-step:
I then started from scratch:
- installed mysql with
brew install mysql
ran the commands brew suggested: (see note: below)
Start mysql with
mysql.server start
command, to be able to log on itUsed the alternate security script:
Followed the
launchctl
section from the brew package script output such as, Aliwangwang download for mac.Boom.
Hope that helps someone!
Note: the --force
bit on brew cleanup
will also cleanup outdated kegs, think it’s a new-ish homebrew feature.
Note the second: a commenter says step 2 is not required. I don’t want to test it, so YMMV!
Had the same problem. Seems like there is something wrong with the set up instructions or the initial tables that are being created. This is how I got mysqld running on my machine.
If the mysqld server is already running on your Mac, stop it first with:
launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist
Start the mysqld server with the following command which lets anyone log in with full permissions.
mysqld_safe --skip-grant-tables
Then run mysql -u root
which should now let you log in successfully without a password. The following command should reset all the root passwords.
Autocad 2015 for mac free. download full version. UPDATE mysql.user SET Password=PASSWORD('NewPassword') WHERE User='root'; FLUSH PRIVILEGES;
Now if you kill the running copy of mysqld_safe and start it up again without the skip-grant-tables option, you should be able to log in with mysql -u root -p
and the new password you just set.

Here are detailed instructions combining getting rid of all MySQL from your Mac then installing it The Brew Way as Sedorner wrote above:
Sql Management Studio For Mac
Remove MySQL completely per The Tech Lab
ps -ax | grep mysql
- stop and
kill
any MySQL processes sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
- edit
/etc/hostconfig
and remove the lineMYSQLCOM=-YES-
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*
- try to run
mysql
, it shouldn’t work
Brew install MySQL per user Sedorner from this StackOverflow answer
brew doctor
and fix any errorsbrew remove mysql
brew cleanup
brew update
brew install mysql
unset TMPDIR
mysql_install_db --verbose --user=
whoami--basedir='$(brew --prefix mysql)' --datadir=/usr/local/var/mysql --tmpdir=/tmp
mysql.server start
- run the commands Brew suggests, add MySQL to
launchctl
so it automatically launches at startup
mysql
should now work and be running all the time as expected
Godspeed.
I had the same problem just now. If you brew info mysql
and follow the steps it looks like the root password should be new-password
if I remember correctly. I was seeing the same thing you are seeing. This article helped me the most.
It turned out I didn’t have any accounts created for me. When I logged in after running mysqld_safe
and did select * from user;
no rows were returned. I opened the MySQLWorkbench with the mysqld_safe
running and added a root
account with all the privs I expected. This are working well for me now.
Okay I had the same issue and solved it. For some reason the mysql_secure_installation script doesn’t work out of the box when using Homebrew to install mysql, so I did it manually. On the CLI enter:
That should get you into mysql. Now do the following (taken from mysql_secure_installation):
Now exit and get back into mysql with: mysql -u root -p
If brew installed MySQL 5.7, the process is a bit different than for previous versions.
In order to reset the root password, proceed as follows:
Install Sql Server On Mac
A temporary password will be printed to the console and it can only be used for updating the root password:
brew info mysql
mysql.service start
or mysql -u root
I’m looking for a solution for some time but I can not solve my problem. I tried several solutions in stackoverflow.com but no this helping me.
Stop mysql completely.

mysql.server stop
<– may need editing based on your versionps -ef | grep mysql
<– lists processes with mysql in their namekill [PID]
<– kill the processes by PID
Remove files. Instructions above are good. I’ll add:
sudo find /. -name '*mysql*'
- Using your judgement,
rm -rf
these files. Note that many programs have drivers for mysql which you do not want to remove. For example, don’t delete stuff in a PHP install’s directory. Do remove stuff in its own mysql directory.
Install Mysql Server

Hopefully you have homebrew. If not, download it.
I like to run brew as root, but I don’t think you have to.
sudo brew update
sudo brew install cmake
<– dependency for mysql, usefulsudo brew install openssl
<– dependency for mysql, usefulsudo brew info mysql
<– skim through this… it gives you some idea of what’s coming nextsudo brew install mysql --with-embedded; say done
<– Installs mysql with the embedded server. Tells you when it finishes (my install took 10 minutes)

sudo chown -R mysql /usr/local/var/mysql/
<– mysql wouldn’t work for me until I ran this commandsudo mysql.server start
<– once again, the exact syntax may vary- Create users in mysql (http://dev.mysql.com/doc/refman/5.7/en/create-user.html). Remember to add a password for the root user.
None of the above answers (or any of the dozens of answers I saw elsewhere) worked for me when using brew with the most recent version of mysql and yosemite. I ended up installing a different mysql version via brew.
Specifying an older version by saying (for example)
Worked for me. Hope this helps someone. This was a frustrating problem that I felt like I was stuck on forever.
TL;DR
MySQL server might not be running after installation with Brew. Try brew services start mysql
or just mysql.server start
if you don’t want MySQL to run as a background service.
Full Story:
I just installed MySQL (stable) 5.7.17 on a new MacBook Pro running Sierra and also got an error when running mysql_secure_installation
:
Say what?

According to the installation info from Brew, mysql_secure_installation
should prompt me to… secure the installation. I figured the MySQL server might not be running and rightly so. Running brew services start mysql
and then mysql_secure_installation
worked like a charm.
I had the same issue after I tried to restart mysql.
I use the following two aliases in my .profile for convenience
After stoping mysql and then trying to restart I experienced the issue you were having. I looked into the launchctl load and it was reporting a “nothing found to load” error.
After a quick search I found this.
So I updated me mysql-start
alias as follows
This solved my issue which may be useful for you.
The “Base-Path” for Mysql is stored in /etc/my.cnf
which is not updated when you do brew upgrade. Just open it and change the basedir value
For example, change this:
to point to the new version:
Restart mysql with:
Tags: mysql, sql