我正在尝试在我的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®ion=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®ion=us-west-2: (28, 'Connection timed out after 10001 milliseconds')
Trying other mirror.
这是安装mysql服务器的正确方法吗?
感谢。
答案 0 :(得分:1)
安装并启动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目录中的所有文件