|
|
Topic Category
|
|
|
|
Link Category
|
|
|
|
最新:09/28 10:12
|
|
|
|
最新:07/28 16:47
|
|
|
|
|
|
|
|
|
|
わけ分からないうちに出来てしまった
MySQLを最新版に置き換えようとジタバタしていたら、何げに出来てしまって・・・
MySQLを最新版(4.0.21)に上げるには色々とハードルがあるようだが、およその問題点は分かったので以下のような作戦を立ててやってみることにした。
- 何はともあれバックアップ。
- MySQLを最新版に置き換えるが、リブートやMySQLサーバの再起動をする前に(PerlのDBi,DBDが機能するうちに)DB形式を更新してしまう。
- Apacheの設定を変更してPHPモジュールを読み込まないようにしておく。
- リブートしてMySQLサーバ(mysqldデーモン)の最新版が動くようにする。
- PHPを作り直す。
- PHPをインストールしてリブート
しかし実際には色々やっているうちに出来てしまった感が強く、一応備忘録代わりに作業手順を記しておくが本当に正しい方法か確証はない。
1. DBのバックアップ
MySQL Ver.3.23.55 は "/usr/local/mysql" ディレクトリにインストールされているものと思う。このうちデータベースは "data" ディレクトリ下に構築されている。よって"data" ディレクトリをバックアップしておけば良い。以下ではホームディレクトリに "mysql-data.tar" としてバックアップしている。
$ cd /usr/local/mysql
$ sudo tar cvf ~/mysql-data.tar data
|
バックアップした後、mysqlディレクトリを上書きされないように名前を変えておく。
$ cd /usr/local
$ sudo mv mysql mysql.old
|
また、MySQLサーバ(mysqldデーモン) をMacOS-Xシステム起動時に立ち上げるために "/Library/StartupItems/StartupMySQL/" というディレクトリ(パッケージファイル) が置かれている。これもバックアップ(移動)しておく。
$ cd /Library/StartupItems
$ sudo mv StartupMySQL ~
|
2. MySQL最新版のインストール
MySQLの最新版への置き換えを行う。
- MySQL本家 から MySQLのMacOS-X用 Installer package (今回は Mac OS X v10.3 Max 4.0.21 :
"mysql-max-4.0.21-apple-darwin7.5.0-powerpc.dmg" ) をダウンロードする。
- ダウンロードしたディスクイメージファイルをダブルクリックしてマウントする。
- インストールパッケージ
"mysql-max-4.0.21-apple-darwin7.5.0-powerpc.pkg" をダブルクリックしてインストールする。
これで "/usr/local" の下の "mysql-max-4.0.21-apple-darwin7.5.0-powerpc" に MySQLがインストールされ、そこに"/usr/local/mysql" からシンボルリンクが張られているはず。
- 次にMySQLサーバ起動スクリプトをインストールする。インストールパッケージ
"MySQLStartupItem.pkg" をダブルクリックしてインストールする。
3. DB形式の変換
MySQLを3.23系から4.0系へアップする際の手順については Marc Liyanage氏のホームページ や、MySQL本家の"2.5.3 Upgrading from Version 3.23 to 4.0" に記載されている。
- phpMyAdmin等で作成されているDB名(おそらく mysql, test はあるはず。他にもアクセス解析や MovableTypeなどのために作ったものがあるだろう)をメモっておく。
- バックアップしておいたデータベースを復元する。
$ cd /usr/local/mysql
$ sudo rm -rf data
$ sudo tar xvf ~/mysql-data.tar
|
- DB形式変換する。
$ cd /usr/local/mysql/bin
$ ./mysql_fix_privilege_tables root-password
|
私のトコでは色々エラーが出まして、本当に成功したんだか極めて怪しい状態なんですが・・・
- ISAM ファイルを MyISAM ファイルに変換する。
$ ./mysql_convert_table_format DB名
|
DB名には先にメモっておいたもの (mysql, test, etc...) を入れる。
こちらも私のトコではエラーが出まして、こちらはダイナミックリンクに失敗したというエラーで、とても動いたとは思えない状況なんだが・・・
4. リブートする
一時的にPHPモジュールを読み込まない設定にしてMacを再起動する。
"/etc/httpd/httpd.conf" を適当なエディタで編集して、PHPモジュールを読み込まないようにする。編集箇所は、
LoadModule php4_module libexec/httpd/libphp4.so
↓
#LoadModule php4_module libexec/httpd/libphp4.so
|
と
AddModule mod_php4.c
↓
#AddModule mod_php4.c
|
の2箇所。
- Macを再起動する。
これで MySQLサーバ(mysqldデーモン) は最新版のもので起動するはず。
5. PHPを作り直す
PHPのビルド方法は以前にも書いた方法と変わりない。
$ ./configure --prefix=/usr/local/php ¥
--with-config-file-path=/usr/local/php/lib ¥
--with-apxs ¥
--with-iconv=/usr/local/php ¥
--with-zlib=/usr ¥
--with-mysql=/usr/local/mysql ¥
--enable-cgi ¥
--with-png-dir=/usr/local/php ¥
--with-freetype-dir=/usr/local/php ¥
--with-t1lib=/usr/local/php ¥
--with-jpeg-dir=/usr/local/php ¥
--with-tiff-dir=/usr/local/php ¥
--with-curl=/usr/local/php ¥
--with-dom=/usr/local/php ¥
--with-ldap ¥
--with-iodbc=/usr ¥
--enable-sockets ¥
--enable-dbx ¥
--enable-dbase ¥
--enable-trans-sid ¥
--enable-exif ¥
--enable-wddx ¥
--enable-ftp ¥
--enable-mbstring ¥
--enable-mbstr-enc-trans ¥
--enable-mbregex
$ make
$ sudo make install
|
これで先に書き換えた "/etc/httpd/httpd.conf" は再び PHPモジュールを読み込む設定に書き直されているはずだ。一応確認してから Mac を再起動する。
6. DBDを作り直す
DBDのビルド方法も以前に書いた方法と変わりない。同様に作り直してインストールしておく。
7. 確認
phpMyAdminなどを使ってデータベースが存在しているように見えるか、登録してあるユーザがあるか確認する。また Blogホームページが正常に表示され、記事がポストできるか確認する。
以上、私の記憶の中では上のように作業したつもりなんですが、特にDB形式変換のところでは盛大にエラーが出ていたりしたので、どこまで正しいか全く自信がありません。間違っていたらゴメンナサイです・・・
|
|
2004 calendar
最新:08/15 17:19
|
|