CentOS 3.8 に MySQL 4.1 をインストールする(yum.conf をいじる方法)

  • 投稿日:
  • by

以前に書いた、MySQL のアップグレード方法より簡単な方法はないかと、Google 先生に聞いていたところ、yum が参照するリポジトリを変更するれば出来るんじゃないのか!?という考えにたどり着いた。

先に結論から述べておくと、この試みは失敗に終わった。自分の知識不足かもしれないが。。
以下が、行った作業だ。

まず、yum.conf を修正する。まず、[main]、[base]、[update]、[addons]、[extras] の5つのセクションを修正する。「$releasever」を「4」に変えてみる。

[main]
cachedir=/var/cache/
yumdebuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
installonlypkgs=kernel kernel-smp kernel-hugemem kernel-enterprise kernel-debug kernel-unsupported kernel-smp-unsupported kernel-hugemem-unsupported
tolerant=1
exactarch=1

[base]
#name=CentOS-$releasever - Base
name=CentOS-4 - Base
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
baseurl=http://mirror.centos.org/centos/4/os/$basearch/
gpgcheck=1

#released updates
[update]
#name=CentOS-$releasever - Updatesname=CentOS-4 - Updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
baseurl=http://mirror.centos.org/centos/4/updates/$basearch/
gpgcheck=1

#packages used/produced in the build but not released
[addons]
#name=CentOS-$releasever - Addonsname=CentOS-4 - Addons
#baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
baseurl=http://mirror.centos.org/centos/4/addons/$basearch/
gpgcheck=1

#additional packages that may be useful
[extras]
#name=CentOS-$releasever - Extras
name=CentOS-4 - Extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
baseurl=http://mirror.centos.org/centos/4/extras/$basearch/
gpgcheck=1

#additional packages that extend functionality of existing packages
#[centosplus]
#name=CentOS-$releasever - Plus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
#gpgcheck=1

#packages in testing
#[testing]
#name=CentOS-$releasever - Testing
#baseurl=http://mirror.centos.org/centos/$releasever/testing/$basearch/
#gpgcheck=1

#between point release supported updates
#[fasttrack]
#name=CentOS-$releasever - Fasttrack
#baseurl=http://mirror.centos.org/centos/$releasever/fasttrack/$basearch/
#gpgcheck=1
保存して、yum で MySQL をアップデートしてみる。
[root@centos3 root]# yum update mysql
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
Resolving dependencies
....Package compat-libstdc++-devel needs compat-libstdc++ = 7.3-2.96.128, this is not available.
Package compat-gcc-c++ needs compat-libstdc++ = 7.3, this is not available.

。。。何でしょうか、これ。「compat-libstdc++」が利用可能な状態になっていない。。では、アップデートしてみましょうか。

[root@centos3 root]# yum update compat-libstdc++
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
compat-libstdc++ is installed and the latest version.
No actions to take

最新版が入ってるのかぁ。。まぁ一応、PGP Key をインポートして、

[root@centos3 root]# rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-4

yum で MySQL をアップデート。

[root@centos3 root]# yum update mysql
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
libgsf-devel-0-1.10.1-2.i 100% |=========================| 3.4 kB    00:00
openoffice.org-0-1.1.5-6. 100% |=========================|  99 kB    00:01
openoffice.org-libs-0-1.1 100% |=========================|  19 kB    00:00
libgsf-0-1.10.1-2.i386.hd 100% |=========================| 2.3 kB    00:00
openoffice.org-i18n-0-1.1 100% |=========================| 148 kB    00:02
xorg-x11-xauth-0-6.8.2-1. 100% |=========================|  81 kB    00:01
xorg-x11-Xvfb-0-6.8.2-1.E 100% |=========================|  82 kB    00:01
xorg-x11-tools-0-6.8.2-1. 100% |=========================|  83 kB    00:01
openoffice.org-kde-0-1.1. 100% |=========================| 8.5 kB    00:00
xorg-x11-0-6.8.2-1.EL.13. 100% |=========================| 109 kB    00:01
xorg-x11-twm-0-6.8.2-1.EL 100% |=========================|  81 kB    00:01
xorg-x11-font-utils-0-6.8 100% |=========================|  82 kB    00:01
xorg-x11-deprecated-libs- 100% |=========================|  81 kB    00:01
xorg-x11-Mesa-libGLU-0-6. 100% |=========================|  82 kB    00:01
xorg-x11-devel-0-6.8.2-1. 100% |=========================| 136 kB    00:02
xorg-x11-Xdmx-0-6.8.2-1.E 100% |=========================|  82 kB    00:01
xorg-x11-doc-0-6.8.2-1.EL 100% |=========================|  85 kB    00:01
xorg-x11-xfs-0-6.8.2-1.EL 100% |=========================|  84 kB    00:00
xorg-x11-libs-0-6.8.2-1.E 100% |=========================|  90 kB    00:00
xorg-x11-Mesa-libGL-0-6.8 100% |=========================|  82 kB    00:01
xorg-x11-deprecated-libs- 100% |=========================|  81 kB    00:01
xorg-x11-Xnest-0-6.8.2-1. 100% |=========================|  81 kB    00:01
xorg-x11-sdk-0-6.8.2-1.EL 100% |=========================| 115 kB    00:01
xorg-x11-xdm-0-6.8.2-1.EL 100% |=========================|  82 kB    00:01

Resolving dependencies
....Package compat-libstdc++-devel needs compat-libstdc++ = 7.3-2.96.128, this is not available.
Package compat-gcc-c++ needs compat-libstdc++ = 7.3, this is not available.

あああぁぁぁ、何で MySQL アップデートされずに、意図しないパッケージがダウンロードされてるのおおおぉぉぉ!しかも、やっぱりエラー解消されないし。。

んじゃ、古い MySQL アンインストールして、新たにインストールしてみたらどうだろうか。

[root@centos3 root]# yum remove mysql
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
Resolving dependencies
.Dependencies resolved

I will do the following:
[erase: mysql 3.23.58-16.RHEL3.1.i386]
I will erase these to satisfy the dependencies:
[deps: mysql-server 3.23.58-16.RHEL3.1.i386]
[deps: php-mysql 4.3.2-33.ent.i386]
[deps: perl-DBD-MySQL 2.1021-4.EL3.i386]
[deps: mysql-devel 3.23.58-16.RHEL3.1.i386]
[deps: libdbi-dbd-mysql 0.6.5-5.i386]
[deps: MySQL-python 0.9.1-6.i386]
[deps: MyODBC 2.50.39-12.1.i386]
[deps: qt-MySQL 1:3.1.2-13.4.i386]
[deps: mysql-bench 3.23.58-16.RHEL3.1.i386]
[deps: mod_auth_mysql 20030510-2.ent.i386]
Is this ok [y/N]: y

Downloading Packages
Running test transaction:
Test transaction complete, Success!
Erasing: MySQL-python 1/11
Erasing: mysql-server 2/11
Erasing: php-mysql 3/11
Erasing: perl-DBD-MySQL 4/11
Erasing: mysql-devel 5/11
Erasing: libdbi-dbd-mysql 6/11
Erasing: MyODBC 7/11
Erasing: mysql 8/11
Erasing: qt-MySQL 9/11
Erasing: mysql-bench 10/11
Erasing: mod_auth_mysql 11/11
Erased:  mysql 3.23.58-16.RHEL3.1.i386 mysql-server 3.23.58-16.RHEL3.1.i386 php-mysql 4.3.2-33.ent.i386 perl-DBD-MySQL 2.1021-4.EL3.i386 mysql-devel 3.23.58-16.RHEL3.1.i386 libdbi-dbd-mysql 0.6.5-5.i386 MySQL-python 0.9.1-6.i386 MyODBC 2.50.39-12.1.i386 qt-MySQL 1:3.1.2-13.4.i386 mysql-bench 3.23.58-16.RHEL3.1.i386 mod_auth_mysql 20030510-2.ent.i386
Transaction(s) Complete

。。なんかこの時点で rpm でインストールしたときよりやっかいになってる気がする。
とりあえず、

[root@centos3 root]# yum install mysql
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
Resolving dependencies
Dependencies resolved

I will do the following:
[install: mysql 4.1.20-1.RHEL4.1.i386]
Is this ok [y/N]: y

Downloading Packages
Getting mysql-4.1.20-1.RHEL4.1.i386.rpm
mysql-4.1.20-1.RHEL4.1.i3 100% |=========================| 2.9 MB    00:10

Running test transaction:
Test transaction complete, Success!
mysql 100 % done 1/1 
Installed:  mysql 4.1.20-1.RHEL4.1.i386
Transaction(s) Complete

おー入った入った。
いったん MySQL を起動させてみる。

[root@centos3 root]# service mysql start
mysql: unrecognized service

ああ、必要なパッケージがまだインストールされてないのか。
じゃあ、以下を実行。

[root@centos3 root]# yum install mysql-server
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
Resolving dependencies
...Package compat-libstdc++-devel needs compat-libstdc++ = 7.3-2.96.128, this is not available.
Package compat-gcc-c++ needs compat-libstdc++ = 7.3, this is not available.

。。あはは、そうですか。やっぱりダメですか。じゃ先に他のを入れてみますか。

[root@centos3 /]# yum install mysql-devel
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
Resolving dependencies
Dependencies resolved

I will do the following:
[install: mysql-devel 4.1.20-1.RHEL4.1.i386]
Is this ok [y/N]: y

Downloading Packages
Getting mysql-devel-4.1.20-1.RHEL4.1.i386.rpm
mysql-devel-4.1.20-1.RHEL 100% |=========================| 2.1 MB    00:20

Running test transaction:
Test transaction complete, Success!
mysql-devel 100 % done 1/1 
Installed:  mysql-devel 4.1.20-1.RHEL4.1.i386
Transaction(s) Complete

入った。再度 mysql-server に挑戦。

[root@centos3 /]# yum install mysql-server
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
Resolving dependencies
...Package compat-libstdc++-devel needs compat-libstdc++ = 7.3-2.96.128, this is not available.
Package compat-gcc-c++ needs compat-libstdc++ = 7.3, this is not available.

。。ええい、やけだ!

[root@centos3 /]# yum install compat-libstdc++
Gathering header information file(s) from server(s)
Server: CentOS-4 - Addons
Server: CentOS-4 - Base
Server: CentOS-4 - Extras
Server: CentOS-4 - Updates
Finding updated packages
Downloading needed headers
compat-libstdc++ is installed and is the latest version.
No actions to take

。。撃沈。もうダメです。限界です。素直に rpm で入れます。ごめんなさい。