MySQL5からMySQL4へのダウングレードの方法 for Debian Etch
●ダウングレードの背景
Debian Sargeをapt-get upgradeでEtchにアップグレードしたことに伴い、
MySQLのバージョンが4から5に変更なった。
その影響から(SQLの文法が変更になっている為)、ZenCartにおいて下記のエラーが発生するようになってしまった。
1054 Unknown column 'p.products_id' in 'on clause'
下記URL等を参考にZenCartを修正するのも考えたが、かなりの工数であることが予想されたため断念し、結局MySQLをダウングレードすることに相成った。
http://blog.livedoor.jp/blog4taka/archives/50340118.html
●MySQLのダウングレードの手順
参考:http://mytso.net/server/debian-etch-und-mysql-41/
1.データベースのバックアップ
mysqldump -u root --password='*****' --opt test > /var/tmp/test.sql
2.コールドバックアップ(必須ではありません)
# /etc/init.d/mysql stop
# cd /var/lib
# tar czvf mysql5.tar.gz mysql
3.データベースを退避
# /etc/init.d/mysql stop
# cd /var/lib
# mv mysql mysql_bak
4.MySQL5を削除
# apt-get remove mysql-common
# apt-get remove libapache2-mod-php4(依存関係からこれも再インストールが必要)
5.ソースリストを編集
# vi /etc/apt/sources.list
最下行に下記行を追加し、既存のソースリストはコメントアウト
deb http://debian.mytso.net/etch/ /
6.PHPとmysql-server-4.1のインストール
apt-get update
apt-get install libapache2-mod-php4
apt-get install mysql-server-4.1 mysql-client-4.1 mysql-common-4.1 libmysqlclient14
apt-get install php4-mysql
7.データベースをリストア
mysqladmin -u root -p
mysql> select version(); ちゃんと4.1になっているかバージョンを確認
mysql> create database test;
mysql> quit
mysql -u root --password='*****' test < /var/tmp/test.sql
8.phpを有効にする
ln -s /etc/apache2/mods-available/php4.conf /etc/apache2/mods-enabled/php4.conf
ln -s /etc/apache2/mods-available/php4.load /etc/apache2/mods-enabled/php4.load
9.アパッチの再起動
/etc/init.d/apache2 restart
Copyright(c)1997-2006,Logistech Co.,Ltd. All rights reserved
|