【问题标题】:cakephp connection to remote MySqlcakephp 连接到远程 MySql
【发布时间】:2013-10-09 10:55:05
【问题描述】:

我正在尝试将我的 Cakephp 项目 (2.3.8) 连接到远程 mySQL 数据库。我在同一台电脑上连接 MySQL 命令行

mysql -u testconection -p -h someserver.somewhere.net
完美运行。 但是database.php中的这个连接:

public $default = array(
    'datasource' => 'Database/Mysql',
    'persistent' => false,
    'host' => 'someserver.somewhere.net',
    'login' => 'testconnection',
    'password' => 'testpassword',
    'database' => 'db10',
    'prefix' => '',
    //'encoding' => 'utf8',
)

在 Cake 中失败并出现此错误:

SQLSTATE[HY000] [2003] 无法连接到“someserver.somewhere.net”上的 MySQL 服务器 (13)

根据文档错误 13 是权限被拒绝错误。

谢谢

【问题讨论】:

  • 您检查过登录名和密码吗?在您的示例中,您的登录名是“test4”,但在您的代码中是“testconection”(带有单个“n”)
  • 嗨,它的 mysql 问题,请联系您的支持以获得更多帮助。检查该数据库中是否存在表,并打开端口以供访问
  • 你在使用 selinux 吗?
  • 嗨,airila,它是相同的登录名和密码。我被仔细检查了(在我的帖子中,出于安全原因,我没有使用真实的用户名和密码)我将检查 SeLinux——我的开发机器是 CentOS,它肯定使用 SELinux。服务器是 Ubuntu Server 12.04 我会仔细检查一下
  • 如果你谷歌“SQLSTATE[HY000] [2003] Can't connect to MySQL”,没有13,你会得到一些与selinux相关的类似问题的链接。

标签: mysql cakephp cakephp-2.3


【解决方案1】:

你必须让httpd可以建立网络连接(到MySQL)

[roo@web ~]# setsebool -P httpd_can_network_connect=1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-24
    • 2017-07-16
    • 2017-06-19
    • 2018-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多