Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Connect to MySQL database on vagrant machine in PhpStorm

Tags:

I can not create a connection to a MySQL database in a vagrant machine with PhpStorm.

My settings are:

DATABASE tab:
- Host: 127.0.0.1
- Port: 3306
- User: root
- Password: root_passsword

SSH/SSL tab:
- Proxy host: 192.168.56.102
- Port: 22
- Proxy user: vagrant
- Proxy password: vagrant

Can someone help me? Thanks

like image 400
gnardell Avatar asked Jun 13 '15 21:06

gnardell


3 Answers

In SSH/SSL tab, select Auth type Key pair, then copy the path to private key file define in IdentityFile. For instance C:/virtualM/deb56/puphpet/files/dot/ssh/id_rsa

$vagrant up $vagrant ssh-config Host local   HostName 127.0.0.1   User vagrant   Port 2222   UserKnownHostsFile /dev/null   StrictHostKeyChecking no   PasswordAuthentication no   IdentityFile "C:/virtualM/deb56/puphpet/files/dot/ssh/id_rsa"   IdentityFile "C:/Users/User/.vagrant.d/insecure_private_key"   IdentitiesOnly yes   LogLevel FATAL 
like image 159
oussaka Avatar answered Oct 09 '22 05:10

oussaka


Here is a really nice article on this subject:

https://www.theodo.fr/blog/2017/03/how-to-manipulate-the-mysql-database-of-your-vagrant-from-phpstorm/

That is:

  1. In PhpStorm click on View -> Tool Windows -> Database
  2. Click on the Database sidebar, click on new -> Datasource -> MySQL The configuration window will appear
  3. Open your terminal.
  4. Go to your project: cd ~/path/to/your/project
  5. Run vagrant ssh-config command from the terminal
  6. At PhpStorm configuration window for connection you are creating go to SSH/SSL tab
  7. Select "Use SSH tunnel" and enter data from the terminal. Auth type should be "Key pair (Open SSH)".
  8. Copy "Host name" to "Proxy host", "Port" to "port", "User" to "Proxy user" and "Identity file" to "Private key file"
  9. At "General" tab you should enter your database connection data as you would on virtual machine (i.e. copy from your project DB settings).
  10. Test your connection.

Or just visit the page which URL I posted at top.

like image 39
MilanG Avatar answered Oct 09 '22 06:10

MilanG


If you're using Homestead, these settings worked just fine for my Vagrant box:

Host: 192.168.10.10
Port: 3306
Username: homestead
Password: secret

Then again, so did MilanG's answer, so pick whatever you feel comfortable with. Since it's just local for me I did this and then I won't have to update my keyfile path should I move my Vagrant box. But that's really minor so do whatever you feel is best.

like image 38
Wotuu Avatar answered Oct 09 '22 05:10

Wotuu