让MySQL的Archive Storage Engine在CentOS 5.4上工作的最简单的方法是什么?

归档存储引擎没有在CentOS / RHEL中默认的MySQL版本启用。 我想在我们的CentOS 5.4服务器上启用它。 我最初的反应是修改SRPMS文件的SPEC文件,但是这表明这可能不那么容易。 总是有从MySQL源代码构build的选项,但是我更希望能够保持在RPMS / Yum世界中。

有没有人通过使用RPMS / SRPMS / Yum有成功的方法? 一些修补程序使这项工作完美的SRPMS?

我用MySQL的SPECS文件进行了更改,启用了存档存储引擎。 下面是如何启动和运行的详细步骤:

安装yum-utils:

sudo yum install yum-utils 

将RedHat的SRPMS包含在CentOS回购中:

 sudo vi /etc/yum.repos.d/srpm.repo 

添加以下回购configuration:

 [rhel-src] name=Red Hat Enterprise Linux $releasever - $basearch - Source baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 

我无法在URL中使用$releasever ,但必须设置为5Server

下载SRPMS软件包:

  yumdownloader --source mysql-server 

为非root用户设置构build区域:

  yum install rpm-build redhat-rpm-config mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} echo '%_topdir %(echo $HOME)/rpmbuild' > ~/.rpmmacros rpm -i mysql-server-5.0.xx.src.rpm 

安装所需的开发工具:

  yum install gcc-c++ libtool gperf automake ncurses-devel readline-devel openssl-devel zlib-devel 

要find所有必需的库和工具,只需尝试以下命令:

  cd ~/rpmbuild/SPECS/ 

修改规格文件:

  vi ~/rpmbuild/SPECS/mysql.spec 

我在spec文件中添加了以下内容(我还想包含联合存储引擎):

  %configure \ ... --with-archive-storage-engine \ --with-federated-storage-engine \ ... 

请注意:在MySQL 5.1中,这可能发生了变化,其中plugin用于指定存储引擎。

为了加快构build过程,你应该考虑做这个改变:

  %{!?runselftest:%define runselftest 0} 

然后运行(作为非root用户):

  cd ~/rpmbuild/SPECS/ rpmbuild -ba mysql.spec 

你会在~/rpmbuild/RPMS/i386findRPM。 只需安装并运行MySQL,您将获得启用了存档存储引擎的MySQL版本。