I know how do skip this problem on ubuntu, but how can i do it on MAC OS?
How can i set password for mysql on MAC?
1) Doesn\'t work
mysqladm
For MySQL 5.7 I had to use:
UPDATE user SET authentication_string = PASSWORD('YourNewPassword'), password_expired = 'N' WHERE User = 'root';
MACOS 10.14 MOJAVE || MYSQL 8.0.15
This didn't work on my mac:
sudo /usr/local/mysql/support-files/mysql.server stop
BUT THIS ACTUALLY WORKED:
sudo /usr/local/mysql-8.0.15-macos10.14-x86_64/support-files/mysql.server stop
The installation folder might vary per user, BE AWARE!
Or just Check > System preferences > MySQL > if the server is running, stop it.
then,
Start MySQL with this command:
sudo /usr/local/mysql-8.0.15-macos10.14-x86_64/bin/mysqld_safe --skip-grant-tables
Open a new terminal window/tab:
sudo /usr/local/mysql-8.0.15-macos10.14-x86_64/bin/mysql -u root
This should open "mysql" prompt. Execute the following command (*scroll right if you don't the full query):
UPDATE mysql.user SET authentication_string='your-password-goes-here' WHERE user='root' and host='localhost';
REMEMBER THAT
mysql-8.0.15-macos10.14-x86_64
(in my case) is the installation folder on your local machine, and it might or might not be different than mine because of OS versions, mysql versions, installation methods used, etc.
Very Simple Fix for MariaDB version: 10.4.6-MariaD on Mojave macOS
I have gone through all the answers. Some of them worked for me some of them not. I found one simple way to fix this on macOS or OSX. Here are the steps:
Prerequisites:
Homebrew should be installed. Use the following link to install homebrew on macOS or OSX.
Install mariadb:
brew install mariadbmysql.server start or run brew services start mariadb
to start MySQL Server at login to the computer.sudo mysql -u rootNOTE: mysql -u root will throw error ERROR 1698 (28000): Access denied for user 'root'@'localhost' so use sudo to run this command.
Now to change the password of the root user I tried the following commands:
UPDATE user SET password=PASSWORD("mypassword") WHERE User='root';
ERROR 1348 (HY000): Column 'Password' is not updatableUPDATE user SET authentication_string=PASSWORD("mypassword") WHERE User='root';
ERROR 1348 (HY000): Column 'authentication_string' is not updatableBut the following command worked:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mypassword';
Query OK, 0 rows affected (0.009 sec)So, it was a simple fix for me for the version 10.4.6-MariaD installed through brew. Hope this will help you too.
You can do the following on iMac or Mac (High Sierra)
Open a Terminal window, and stop the mysql if it's already running. You can also check this System Preferences > MySQL > see if it is running.
Start MySQL with this command for skipping the main table
sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables
Open a new terminal window/tab..
sudo /usr/local/mysql/bin/mysql -u root
This should open "mysql" prompt. Execute the below command:
A ) MySQL 5.6 and below
UPDATE mysql.user SET password=PASSWORD('NewPassord') WHERE user='root';
-- or --
B) MySQL 5.7+
UPDATE mysql.user SET authentication_string=PASSWORD('NewPassord') WHERE user='root';
Restart MySQL, either through System Preferences > MySql or using a command.