Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CakePHP WAMP-缺少数据库Mysql连接_Php_Mysql_Cakephp - Fatal编程技术网

CakePHP WAMP-缺少数据库Mysql连接

CakePHP WAMP-缺少数据库Mysql连接,php,mysql,cakephp,Php,Mysql,Cakephp,我在网上搜寻答案,但到目前为止都没有成功。我正在尝试将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/M

我在网上搜寻答案,但到目前为止都没有成功。我正在尝试将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:\ProgramFiles(x86)\PHP\PHP.ini”处加载文件,而不是在“C:\wamp…”下加载文件。如何将其设置为指向正确的文件


然而,我在这两个文件中都添加了“extension=php_pdo_mysql.dll”一行,但仍然没有成功。任何帮助都将不胜感激。

首先检查您的本地主机/phpmyadmin中是否有名为cake的数据库,如果该mysql使用用户名root而不使用密码,并且确保您在正确的php.ini文件(
extension=php\u mysql.dll
)上设置了php\u mysql

其次,如果您认为问题是由于php.ini文件位置造成的,可以设置:

  • 转到wamp文件夹(C:\wamp)并
  • 在该文件夹下,您将找到wampmanager.ini文件和
  • 在该文件中找到php.ini单词,您将得到这样一行
    (类型:item;标题:“php.ini”;字形:6;操作:run;文件名:“notepad.exe”;参数:“…path here…”)
    并找到路径并设置
    “C:/wamp/bin/apache2.2.21/bin/php.ini”
  • 请告诉我(投票)是否有效。我希望有帮助


    谢谢

    我也有同样的问题。mysql数据库没有问题,因为它可以通过phpMyadmin和服务器上运行的其他应用程序访问。该问题是由于主机未提及mysql端口引起的。将端口附加到主机,如…'主机'=>'本地主机:3307'

    public $default = array(
        'datasource' => 'Database/Mysql',
        'persistent' => false,
        'host' => 'localhost:3307',
        'login' => 'root',
        'password' => 'mypass',
        'database' => 'cake_todos',
        'prefix' => '',
        //'encoding' => 'utf8',
    );
    
    现在,如何知道mysql端口?为此,您需要转到服务器配置文件。。e、 g.在我的例子中,它是wamp文件夹主目录中的properties.ini文件。打开该文件,您很可能会发现如下条目:

    mysql_端口=3307 mysql_host=127.0.0.1


    这就是mysql_端口。希望有帮助。

    mysql是否在本地主机上运行?请查看此链接。这似乎是同一个问题。