![](/img/trans.png)
[英]CakePHP Database connection "Mysql" is missing, or could not be created
[英]CakePHP WAMP - Database Mysql connection missing
我已经在网上搜寻了答案,但到目前为止仍未成功。 我正在尝试将CakePHP连接到数据库。 但我一直得到同样的回应:
CakePHP is NOT able to connect to the database.
Database connection "Mysql" is missing, or could not be created.
这是我的database.php文件的一部分
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'cake',
'prefix' => '',
//'encoding' => 'utf8',
);
^我还根据phpmyadmin中的访问权限列表尝试了不同的主机/登录组合。
我认为一个问题可能是Wampserver找到了错误的php.ini文件。 似乎它正在以下位置加载文件:“ C:\\ Program Files(x86)\\ PHP \\ php.ini”,而不是“ C:\\ wamp ...”下的内容。 我将如何设置它指向正确的文件?
但是,我在这两个文件中都添加了“ extension = php_pdo_mysql.dll”行,但仍然没有运气。 任何帮助,将不胜感激。
我有完全相同的问题。 mysql数据库中没有问题,因为可以通过phpMyadmin和服务器上运行的其他应用程序进行访问。 该问题是由于未与主机一起提到的mysql端口引起的。 将端口附加到主机,例如...'host'=>'localhost:3307'。
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost:3307',
'login' => 'root',
'password' => 'mypass',
'database' => 'cake_todos',
'prefix' => '',
//'encoding' => 'utf8',
);
现在,如何知道mysql的端口? 为此,您需要转到服务器配置文件。例如,在我的情况下,它是wamp文件夹的主目录中的properties.ini文件。 打开文件,您很可能会找到如下所示的条目:
mysql_port = 3307 mysql_host = 127.0.0.1
因此,这里是mysql_port。 希望能帮助到你。
首先检查您的localhost / phpmyadmin中是否有一个名为Cake的数据库,并且如果该mysql使用用户名root且没有密码,还请确保在正确的php.ini文件( extension=php_mysql.dll
)上设置了php_mysql。
其次,如果您认为问题是由于php.ini文件位置引起的,则可以进行设置:
(Type: item; Caption: "php.ini"; Glyph: 6; Action: run; FileName: "notepad.exe"; parameters: "...path here...")
然后找到路径并设置"C:/wamp/bin/apache/apache2.2.21/bin/php.ini"
请告诉我(投票)是否可行。 希望对您有所帮助。
谢谢
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.