1. 程式人生 > >搭建MHA時 yum 安裝perl模組提示 baseurl 錯誤

搭建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 was14: 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安裝模組時,經常會遇到各種各樣的坑。總結下,記於此,更多的是經常提醒自己,怎麼處理問題。如果能對初學者有所裨益,那是更好。