连接超时在unix中安装mysql服务器

时间:2014-06-27 04:44:24

标签: mysql unix amazon-web-services amazon-ec2

我正在尝试在我的AWS EC2实例中安装mysql服务器。我用Google搜索并在shell中执行了以下命令。

 sudo yum install mysql-server

它抛出以下连接超时异常

Loaded plugins: priorities, update-motd, upgrade-helper
http://packages.us-west- 2.amazonaws.com/2014.03/main/201403504e47/x86_64/repodata/repomd.xml?instance_id=i-c82c93c3&region=us-west-2: [Errno 12] Timeout on http://packages.us-west-2.amazonaws.com/2014.03/main/201403504e47/x86_64/repodata/repomd.xml?instance_id=i-c82c93c3&region=us-west-2: (28, 'Connection timed out after 10001 milliseconds')
Trying other mirror.

这是安装mysql服务器的正确方法吗?

感谢。

2 个答案:

答案 0 :(得分:1)

安装mysql

从当前AWS EC2 documentation

开始
  

安装并启动LAMP Web服务器

     

连接到您的实例。

     

要确保所有软件包都是最新的,请在您的实例上执行快速软件更新。此过程可能需要几分钟,但确保您拥有最新的安全更新和错误修复非常重要。

     

请注意   -y选项安装更新而不要求确认。如果您想在安装之前检查更新,可以省略此选项。

[ec2-user ~]$ sudo yum update -y
  

现在您的实例是最新的,您可以安装Apache Web服务器,MySQL和PHP软件包。使用yum groupinstall命令可以同时安装多个软件包和所有相关的依赖项。

[ec2-user ~]$ sudo yum groupinstall -y "Web Server" "MySQL Database" "PHP Support"
  

请注意   非Amazon Linux实例的组名可能存在细微差别。如果上述命令因组名无效而失败,请使用yum grouplist命令并扫描类似组的输出,例如" MySQL数据库服务器"而不是" MySQL数据库",并为您的发行使用适当的组名。

     

安装php-mysql包。

[ec2-user ~]$ sudo yum install -y php-mysql

我想你只需要安装mysql,所以你只需要运行第一个命令,调整第二个命令只从存储库中获取mysql,然后跳过最后一个:

[ec2-user ~]$ sudo yum update -y

[ec2-user ~]$ sudo yum groupinstall -y "MySQL Database"

根据您安装的Linux版本(Amazon,Red Hat或CentOS),您可能需要将字符串"MySQL Database"更改为其他内容。以下命令:

[ec2-user ~]$ sudo yum grouplist

将列出您可能执行的所有可能的组安装,因此您需要对其进行过滤以获得正确的字符串:

[ec2-user ~]$ sudo yum grouplist | grep -i mysql

并在过滤后的结果集中选择最合适的一个。

网络连接

现在,关于您的具体问题,FAQs将您的问题描述如下:

  

如果AMI无法访问yum存储库,它将超时并在完成引导过程之前重试多次。可能的原因是限制性防火墙设置或VPC设置,这会阻止访问Amazon Linux AMI软件包存储库。

     

如果遇到此问题,您可以修改环境,以便Amazon Linux AMI可以连接到其软件包存储库[...]

不幸的是,没有给出任何解释,因为您可以如何更改环境以启用连接。

显然,通过使用仪表板,您应该能够打开对yum服务器正在使用的端口的出站访问:

AWS dashboard > ec2 > security groups > default group > outbound rule: ??? (HTTP*) 0.0.0.0/???

yum服务器的常用端口是80,所以只需将上面的???替换为80即可访问repos。您还应该将0.0.0.0替换为实际的存储库服务器地址。

如果此解决方案不起作用,您可能还会尝试在更新期间完全禁用防火墙:

[ec2-user ~]$ sudo /etc/init.d/iptables stop

<...Update commands as listed above...>

[ec2-user ~]$ sudo /etc/init.d/iptables start

或者

[ec2-user ~]$ sudo /sbin/service iptables stop

<...>

[ec2-user ~]$ sudo /sbin/service iptables start

答案 1 :(得分:0)

我只是删除/etc/resolv.conf目录中的所有文件