我正在尝试使用WT-NMP安装cakePHP 3.0.0,但我收到此消息:
CakePHP无法连接到数据库.
由于缺少PHP扩展或未满足的依赖性,无法使用数据库驱动程序Cake\Database\Driver\Mysql
我的php.ini有这个:
extension = php_bz2.dll
extension = php_curl.dll
extension = php_gd2.dll
extension = php_imap.dll
extension = php_mbstring.dll
extension = php_exif.dll
extension = php_mysql.dll
extension = php_mysqli.dll
extension = php_pdo_mysql.dll
extension = php_pdo.dll
extension = php_soap.dll
extension = php_sockets.dll
extension = php_sqlite3.dll
extension = php_openssl.dll
extension = php_fileinfo.dll
extension = php_intl.dll
Run Code Online (Sandbox Code Playgroud)
app.php有这个
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
'port' => '3306',
'username' => 'root',
'password' => '',
'database' => 'test',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
Run Code Online (Sandbox Code Playgroud)
我错过了什么?或者这是cakePHP 3.0的错误?或者与WT-NMP有关.我被困了一整天.
Le *_*anh 11
运气解决了这个问题!:
extension = php_intl.dll
extension = php_pdo_mysql.dll
intl.default_locale = en_utf8
intl.error_level = E_WARNING
Run Code Online (Sandbox Code Playgroud)
为MySQL数据库连接安装模块为我解决了这个问题:
#Install the package
sudo apt-get install php5-mysql
#Restart Apache
sudo service apache2 restart
Run Code Online (Sandbox Code Playgroud)
资料来源:http://guru4cakephp.blogspot.nl/2015/04/install-cakephp-3-on-ubuntu.html
包详情:https://packages.debian.org/sid/php5-mysql
尝试这个:
对于 PHP 7.0
sudo apt-get install php7.0-mysql
Run Code Online (Sandbox Code Playgroud)
对于 PHP 5:
sudo apt-get install php5-mysql
Run Code Online (Sandbox Code Playgroud)
错误消息是因为extension = php_pdo_mysql.dll未在php.ini. 如果您没有php_intl.dll启用,您将在检查数据库连接之前收到错误消息。
您php.ini表示您已php_pdo_mysql.dll启用,但是您可能需要重新启动CakePHP 服务器 bin/cake server。
| 归档时间: |
|
| 查看次数: |
19290 次 |
| 最近记录: |