2

我是一个相对较新的 LAMP 开发人员,主要尝试通过 AWS 学习 Linux。我有一个正在运行的 Elastic Beanstalk 实例。我对以下软件包进行了 yum 安装:

mysql55.x86_64 mysql55-bench.x86_64 mysql55-common.x86_64 mysql55-devel.x86_64 mysql55-libs.x86_64 mysql55-server.x86_64 mysql55-test.x86_64 

这一切似乎都安装得很好......然后输入......

mysql -V 

这让我

mysql Ver 14.14 Distrib 5.5.20, for Linux (x86_64) using readline 5.1 

...确认安装了mysql ...但是当我输入...

mysql -u ec2-user -p
Enter password: /*leaving blank*/

我得到...

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

现在问题是我正在使用我在 AWS 控制台中创建的安全组密钥对 ssh 进入该服务器。因此,当我以 ec2-user 身份登录该框时,关键是对我进行身份验证(来自 .ppk 文件)。据我所知,那是我的“root”用户,没有密码,但我可能弄错了。

所以,基本上我不了解如何在 linux 环境中开始使用 MySQL 的基础知识。到目前为止,我只真正使用过 PHPMyAdmin 和 WAMP 中的 MySQL 命令行。

有人可以帮我解决我的电线交叉在这里吗?

4

1 回答 1

15

哇。耽误。在您执行任何其他操作之前,请在 beanstalk 之外停止并启动您的 mysql 机器,或者使用Amazon RDS。Beanstalk 旨在自动扩展应用程序的 Web 层,而不是保存数据库。当它扩展您的应用程序时,那台新机器将不会拥有您的数据。当它缩小时,它可能会删除您的数据库机器。如果该实例最终出现在退役或损坏的硬件上,beantalk 将替换它。

阅读 Beanstalk 架构概述。注意图表。您的数据库层存在于 beanstalk 环境之外,而不是其中。

在此图中,beantalk 环境由黄色虚线描绘。

于 2012-07-13T13:23:59.420 回答