首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有这样的文件或目录通过EC2通过php连接到RDS

问没有这样的文件或目录通过EC2通过php连接到RDS
EN

Stack Overflow用户
提问于 2016-11-06 22:00:25
回答 1查看 1.3K关注 0票数 1

我已经在amazon web services上设置了RDS和EC2。RDS在一个安全组中,而EC2在另一个安全组中。EC2安全组接受来自任何位置的http、https和ssh通信(尽管我已尝试将其设置为所有通信),而RDS安全组接受来自自身和EC2安全组的所有入站通信。

我在EC2上有一些php文件,

代码语言:javascript
复制
$server = $_SERVER['DB_SERVER'];
$username = $_SERVER['DB_USERNAME'];
$password = $_SERVER['DB_PASSWORD'];
$database = $_SERVER['DB_DATABASE'];

$connection = new mysqli($server, $username, $password, $database);
echo $connection->connect_error;

在/var/www/inc/dbinfo.inc中的dbinfo.inc中列出了DB_SERVER等,如本教程所示:http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Tutorials.WebServerDB.CreateWebServer.html

这给出了响应“没有这样的文件或目录”,我被告知这是因为找不到mysql.sock文件。

在/etc/my.cnf中,我有:

代码语言:javascript
复制
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
*bunch of comments*

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

但是/var/lib/mysql (或/var/lib/mysql/mysql)中没有mysql.sock

正在运行

代码语言:javascript
复制
find . mysql.sock 

和

代码语言:javascript
复制
find . mysqld.sock 

两者都给出了“没有这样的文件或目录”

谢谢你的帮忙

EN

回答 1

Stack Overflow用户

发布于 2018-11-16 18:40:54

当我试图在aws ec2上部署php应用程序并在rds上托管数据库时,我也遇到了同样的问题

首先,不要按照亚马逊的文档连接rds数据库。原因$_server['anything']返回空值。所以

此处$server中的$server = $_SERVER['DB_SERVER'];只包含一个空值

请改用以下代码:

代码语言:javascript
复制
<?php
$dbhost = 'your rds instance endpoint';
$dbport = 'port numberdefault 3306 ';
$dbname = 'name of data base';
$charset = 'utf8' ;
$dsn = "mysql:host={$dbhost};port={$dbport};dbname={$dbname};charset=   {$charset}";
$username = 'username ';
$password = 'password';

try {

$pdo = new PDO($dsn, $username, $password);

$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "your sql query";

$pdo->exec($sql);
echo "successfully connected"; 
}
catch(PDOException $e)
{
t;    
echo "Connection failed: <br>  ". $e->getMessage(); 

}

$conn = null;

?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40450164

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档