2014-02-26 53 views
2

安裝(這是從ask.puppetlabs.com交叉後)CentOS的mysql5.5通過木偶

我設立使用流浪漢和木偶一個centos6.4 VM。首先,我的熟悉程度與Debian Linux和我是新的Puppet,所以很抱歉,如果我缺少一些基本的東西...

我使用puppetlabs的mysql模塊,並且默認安裝的mysql版本是5.1但我想安裝5.5。

從這個崗位,它看起來像我需要從一些額外的回購搶mysql5.5,

我Puppetfile樣子:

forge "http://forge.puppetlabs.com" 
mod 'puppetlabs/stdlib' 
mod 'puppetlabs/apache' 
mod 'puppetlabs/mysql' 

我加了一個yumrepo聲明

yumrepo { 
     'epel': 
      descr  => 'Extra Packages for Enterprise Linux 6 - $basearch', 
      enabled  => "1", 
      gpgcheck => "1", 
      failovermethod => 'priority',     
      gpgkey  => "http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm", 
      ; 
     'remi': 
      descr  => 'Extra Packages for Enterprise Linux 6 - $basearch', 
      enabled  => "1", 
      gpgcheck => "1", 
      failovermethod => 'priority', 
      gpgkey  => "http://rpms.famillecollet.com/enterprise/remi-release-6.rpm", 
      ; 
    } 

如果我添加package_ensure與目標版本,

class { '::mysql::server': 
     package_ensure => "5.5.36-1.el6.remi", 
    } 

我可以看到木偶試圖安裝該軟件包,但是mysql5.1已經被安裝,並且存在衝突的依賴關係。我嘗試過尋找一種好方法,但對於木偶還不夠熟悉,卻不知道要尋找什麼。

感謝您的幫助

+0

爲什麼要使用5.5而不是5.1 ...是否有充分理由在第一個位置使用它? – Hackerman

+0

針對上述評論,爲什麼不使用MariaDB? MySQL正在走出去。 – Spechal

+0

我剛碰到這個相同的問題。 MariaDB可能是一個選擇,但是長短的是5.5比5.1有更好的性能。你不能簡單地刪除mysql-libs,因爲cron *和postfix依賴於它。有一些「技巧」(百勝包替換),但我懷疑傀儡包提供商可以處理它。 – TommyTheKid

回答

0

先安裝mysql 5.5你有mysql刪除5.1添加下列行init.pp而且EPEL回購不會在您的系統上安裝5.5,你需要使用MySQL的RPM安裝使用rpm安裝它使用在int.pp文件中添加以下行

package { 'mysql-libs': 
        ensure => 'purged', 
    } 

    package { 'MySQL-server-5.5.8-1.rhel5.x86_64': 
        provider => 'rpm', 
        ensure => installed, 
        source => "/path_to_dir/MySQL-server-5.5.8-1.rhel5.x86_64.rpm", 
        require => Package['mysql-libs'], 
    }