How can you connect to MySQL from the command line in a Mac? (i.e. show me the code)

I'm doing a PHP/SQL tutorial, but it starts by assuming you're already in MySQL.

12 Answers

See here

mysql -u USERNAME -pPASSWORD -h HOSTNAMEORIP DATABASENAME 

The options above means:

-u: username -p: password (**no space between -p and the password text**) -h: host last one is name of the database that you wanted to connect. 

Look into the link, it's detailed there!


As already mentioned by Rick, you can avoid passing the password as the part of the command by not passing the password like this:

mysql -u USERNAME -h HOSTNAMEORIP DATABASENAME -p 

People editing this answer: PLEASE DONOT ADD A SPACE between -p and PASSWORD

8

Best practice would be to mysql -u root -p. Then MySQL will prompt for password after you hit enter.

4

After you run MySQL Shell and you have seen following:

mysql-js> 

Firstly, you should:

mysql-js>\sql 

Secondly:

 mysql-sql>\connect username@servername (root@localhost) 

And finally:

Enter password:********* 
1

Use the following command to get connected to your MySQL database

mysql -u USERNAME -h HOSTNAME -p

Short, sweet, and complete: (and also secure)

mysql -u <username> -h <hostname> -P <port> <database> -p

This will

  1. Connect you to a remote database (including port)
  2. Not store your password in your .bash_history

One way to connect to MySQL directly using proper MySQL username and password is:

mysql --user=root --password=mypass 

Here,

root is the MySQL username mypass is the MySQL user password 

This is useful if you have a blank password.

For example, if you have MySQL user called root with an empty password, just use

mysql --user=root --password= 

Sometimes you may need to add -P for port:

mysql -u USERNAME -pPASSWORD -h HOSTNAME -P PORTNUMBER DATABASE; 

Use below command to do the login to remote mysql server

mysql -u property_wlive -h 127.0.0.1 -P 3306 property_plive -p 

This worked for me ::-

mysql --host=hostNameorIp --user=username --password=password 

or

mysql --host=hostNameorIp --user=username --password=password database_name 

In my case, it worked with the following command on Mac.

After you run MySQL Shell and you have seen the following:

mysql-js> 

Firstly, you should:

mysql-js>\sql 

Second step:

MySQL SQL > \c --mysql username@host 

Then finally provide the password as prompted

Those steps worked for me with Windows 10

  1. go to MySQL installation directory then access to bin directory (mysql.exe must be showed in list of files)
  2. open cmd in the same location
  3. run mysql -u [username] -p (don't need to add -p if you didn't have set a password) then press enter

Oddly enough, despite there being a lot of (similar) answers, no one suggested this:

You can create a .my.cnf file in your $HOME folder, which contains:

[client] host=127.0.0.1 port=3306 database=google user=root password=root 

And you'll only have to do

$> mysql 

To connect to that database.

A few key notes to take into consideration :

  • Storing the password in that file is not a good idea. At worst, please do a chmod 400 .my.cnf. But best is to store the password elsewhere. Other threads on StackOverflow offer great answers for that.
  • You can customize the data in that file, and leave the rest to you. For instance, removing the database line allow you to do mysql another-db-name
1