我在本地运行 phpmysql,我想连接到安装并运行在同一台机器上的 MySQL 实例。以下是相关的配置文件:
#流浪者文件
config.vm.network "forwarded_port", guest: 3306, host: 33060
config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
config.vm.network "private_network", ip: "192.168.33.10"
#phpMyAdmin/config.inc.php
$j++;
$cfg['Servers'][$j]['host'] = '192.168.33.10:8080'; //provide hostname and port if other than default
$cfg['Servers'][$j]['port'] = '33060'; //provide hostname and port if other than default
$cfg['Servers'][$j]['user'] = 'root'; //user name for your remote server
$cfg['Servers'][$j]['password'] = 'password'; //password
$cfg['Servers'][$j]['auth_type'] = 'config'; // keep it as config
我还在 vagrant box 上设置了 MySQL 以允许远程连接:
bind-address = 0.0.0.0
在 /etc/mysql/my.cnf.
当我尝试从 phpmyadmin 连接时,我看到错误“mysqli::real_connect(): (HY000/1130): Host '10.0.2.2' is not allowed to connect to this MySQL server”
有什么想法吗?
我想我遇到了多个问题。这是我现在的配置:
#流浪者文件
config.vm.network "forwarded_port", guest: 3306, host: 33060
config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
config.vm.network "private_network", ip: "192.168.33.10"
#phpMyAdmin/config.inc.php
$j++;
$cfg['Servers'][$j]['host'] = '127.0.0.1'; //provide hostname and port if other than default
$cfg['Servers'][$j]['port'] = '33060'; //provide hostname and port if other than default
$cfg['Servers'][$j]['user'] = 'root'; //user name for your remote server
$cfg['Servers'][$j]['password'] = 'password'; //password
$cfg['Servers'][$j]['auth_type'] = 'config'; // keep it as config
除此之外,我还必须在 MySQL 上运行此命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.0.2.2' IDENTIFIED BY 'password' WITH GRANT OPTION;