无法在CakePHP中使用MySQL
这是我第一次安装框架,我很无能为力.
我在OSX 10.7上,我将cakephp框架加载到/ Library / WebServer / Documents / cakephp中,我已经能够加载测试页面并摆脱一些错误和警告.现在我正在努力解决这个问题 Warning (2): PDO::__construct() [pdo.--construct]: [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock) [CORE/Cake/Model/Datasource/Database/Mysql.php,line 160] Cake is NOT able to connect to the database. Database connection "SQLSTATE[HY000] [2002] No such file or directory" is missing,or could not be created. 我真的不知道该怎么做.我已经安装了MySQL. MySQL PDO是否默认安装在OSX上?或者我需要安装吗?如果这似乎是问题,我该如何检查是否已安装. 更新: PDO Mysql驱动程序已启用. Directive Local Value Master Value pdo_mysql.default_socket /var/mysql/mysql.sock /var/mysql/mysql.sock 但是mysql目录没有出现在我的文件系统中.我应该创建它吗?或者我是否需要在某处改变这条路? 更新: 我想我现在会尝试解决这个问题. 更新: 最终解决这个问题的是,蛋糕正在寻找/var/mysql/mysql.sock中数据库的Unix套接字但是mysql正在使用/tmp/mysql.sock中的套接字 解决方法
它看起来更像是MySQL本身没有安装,但是PDO库是用你的web服务器编译的.我不知道如何在OSX中检查这个,但你可以尝试检查这个链接:
http://www.sequelpro.com/docs/Install_MySQL_on_Mac_OS_X
编辑 登录MySQL(mysql -u root -p)并创建数据库: create database cakephp 然后创建一个新的用户名/密码并授予他们访问该数据库的权限.假设您要创建用户名cakephp和密码cakepass: GRANT ALL ON cakephp.* TO cakephp@localhost IDENTIFIED BY 'cakepass'; FLUSH PRIVILEGES; 现在你的database.php配置文件应如下所示: <?php class DATABASE_CONFIG { public $default = array( 'datasource' => 'Database/Mysql','persistent' => false,'host' => 'localhost','login' => 'cakephp','password' => 'cakepass','database' => 'cakephp','prefix' => '' ); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |