搭建MHA时 yum 安装perl模块提示 baseurl 错误

Posted xuliuzai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建MHA时 yum 安装perl模块提示 baseurl 错误相关的知识,希望对你有一定的参考价值。

今天在搭建mysql MHA  安装MHA node所需的perl模块(DBD:mysql)时遇到了一个小的错误,如果思路不对的话,还是产生不少麻烦。

现梳理记录下来。

问题现象

执行的命令 

yum install perl-DBD-MySQL -y

报错信息如下:

技术分享图片

可以看出错误的关键字为 :Cannot find a valid baseurl for repo: base/7/x86_64。

这个问题 说明url 无效。

分析处理

在这个错误提示中其实有显示url的数据,我们可以从错误信息中的二、三两行来定位。数据如下:

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"

判读是否有效,我们可以首先看是否可以ping通。

执行命令:

ping mirrorlist.centos.org

技术分享图片

发现此时是ping 不通的,说明确实有问题。但此时尚不可以判断是源主机(网址)不存在或非法,也有一种可能,就是本地请求没有成功发出去。

怎么验证呢?其实很简单,我们只要Ping下百度就可以了。

执行命令

ping www.baidu.com

技术分享图片

从以上截图中可以看出百度也ping不通,此时说明不是url的问题。问题在于我们request请求,根本就没有发送出到host主机。

所以,问题很可能在我们本机的网络设置。但是考虑到,本机已成功分配到IP地址,ip addr 显示正常,可以在局域网内互联。

此时感觉很是奇怪。

忽然想到,可能是DNS的问题。

安装本机时同事使用的老的装机模板,所以DNS参数没有及时更新。

问题基本定位到了,下一步修改。

马上进入 /etc/sysconfig/network-scripts目录,修改文件 ifcfg-ens32 中的DNS1参数。

修改DNS1配置后,记得一定要重启 network 服务,否则无效。

执行重启的命令如下: 

service network restart

结果验证

此时  ping 百度正常

技术分享图片

ping 安装程序的url正常

技术分享图片

再次安装perl模块(DBD:mysql),成功执行

技术分享图片

技术分享图片

后记

这只是个小问题,没有太大的科技含量。我们在yum安装模块时,经常会遇到各种各样的坑。总结下,记于此,更多的是经常提醒自己,怎么处理问题。如果能对初学者有所裨益,那是更好。


以上是关于搭建MHA时 yum 安装perl模块提示 baseurl 错误的主要内容,如果未能解决你的问题,请参考以下文章

MySQL集群搭建-MHA高可用架构

MHA+ProxySQL,mysql的高可用集群+读写分离MHA搭建与VIP策略

MySQL之MHA+keepalived方案演示

MHA搭建

通过 MHA 0.58 搭建一个数据库集群结构

搭建MHA问题汇总