当我的隧道连接(af隧道)我正在尝试运行一个cakephp控制台应用程序,它将连接到我的mysql数据库(通过隧道)。
我在我的数据库配置中有这个:
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => '11111111ZQyI',
'password' => '11111111111MR',
'database' => '111111111111115bc',
'port' => '10000',
'prefix' => '',
//'encoding' => 'utf8',
);
我会收到此错误消息:
Error: exception 'MissingConnectionException' with message
'Database connection "Mysql" is missing, or could not be
created.' in /.../lib/Cake/Model/Datasource/Database/Mysql.php:161
Stack trace:
#0 /..../lib/Cake/Model/Datasource/DboSource.php(262): Mysql->connect()
答案 0 :(得分:2)
答案是我需要以某种方式调用mysql连接TCP而不是套接字。显然,当您使用localhost时,它会自动触发Socket连接,如果使用12.0.0.1,则会触发TCP连接。所以这就是解决方案:
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => '127.0.0.1',
'login' => '11111111ZQyI',
'password' => '11111111111MR',
'database' => '111111111111115bc',
'port' => '10000',
'prefix' => '',
//'encoding' => 'utf8',
);