Vagrantでポートフォワードの設定する。
Vagrant.configure("2") do |config|
config.vm.box = "scotch/box"
config.vm.network :forwarded_port, guest: 3306, host: 3306
config.vm.network :private_network, ip: "192.168.33.10" #自分の設定したIP
# 省略
end
vagrant reloadする
する。
CentOS7のひとはfirewallをオープンする
sudo firewall-cmd --add-port=3306/tcp --zone=public --permanent
sudo firewall-cmd --reload
mysqlの設定変更する
netstat -alnt
ってすると、mysqlのポート3306は、127.0.0.1からしか接続受け付けなくなってるので、mysqlの設定を変更する。
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
/etc/mysql/my.cnfの設定を修正する
このファイル /etc/mysql/my.cnf
の bind-address = 127.0.0.1
を bind-address = 0.0.0.0
に変更する。
変更した後mysqlを再起動とかsudo /etc/init.d/mysql restart
する
mysqlのリモート接続用ユーザーも作る。
ユーザーのIPは192.168.33.1
ってなってるけど、192.168.33
までは自分の環境に合わせて読み替えてください。パスワードも。
mysql> use mysql
mysql> GRANT ALL ON *.* to root@'192.168.33.1' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> exit
ローカルにあるER図とか書くツールからつなげた。SSLトンネルやりかたわかんないからこんな風なことしてる。