gpt4 book ai didi

mysql - Cakephp Shell无法连接到mysql

转载 作者:行者123 更新时间:2023-11-29 05:34:54 26 4
gpt4 key购买 nike

我正在尝试让一个 crontab 为 Cakephp 工作(目前在我的共享 Dreamhost 服务器上运行)。

我根据 book 设置了一个 shell ,通过 cron 运行或手动执行(均通过 shell 文件,例如:

cron.sh
#########
cd /pathToApp/app/Console
/usr/local/bin/php cake.php updater list_reports

其中 updater 是我的 shell,而 list_reports 是其中的一个方法。

当我尝试在 shell 中访问数据库时出现问题(“在您的 shell 中使用模型”,相同的链接)。

错误信息:

Error: Database connection "SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)" is missing, or could not be created.

我的数据库设置(站点适用于 http,是否需要添加 unix_socket 或其他内容?

array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'mysql.mydomain.net',
'port' => '3306',
'login' => '*******',
'password' => '*******',
'database' => '*******',
'prefix' => '',
);

我尝试过的事情:

  • 正在创建指向 /var/run/mysqld/mysqld.sock 的符号链接(symbolic link) - 权限被拒绝
  • 我什至可以通过共享主机做到这一点吗?
  • 尝试对上面的数据库设置进行各种更改,但没有成功。
  • 我注意到有人将 localhost 替换为 127.0.0.1 解决了类似的问题,但我使用的是共享主机,而不是本地主机。

最佳答案

这是官方的!我是数据库!

我可以确认这个问题不是由 Cakephp 或 Mysql 引起的,而是因为我自己做的事情而忘记了....

我在 database.php 中有一个小开关来自动检测我是否在开发、测试、暂存环境等中。我将默认设置为本地,因为 bash 脚本没有获取 $_SERVER['我用于切换的 SERVER_NAME'],它默认为我的本地数据库。

感谢 ifunk 发现了线索,使我能够解开这个问题并回到正轨!

:)

关于mysql - Cakephp Shell无法连接到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11592126/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com