IlohaMailを使って、ウェブメール環境をということで、
IlohaMail.orgインストールは、簡単にいきました。
中古Linuxサーバーでも快適。
さて、さらに自宅実験用のMovableTypeのための
MySQLを組み込んでみようと思いました。
TurboLinux7Serverなので、MySQLもインストール済み。
ただし、turbopkgでMySQL-develを加えておく必要があります。
これがないとあとでエラーが出ます。
perl -MCPAN -e shell
のあと、
cpan> install DBI
cpan> install DBD::mysql
です。
これで、PerlからMySQLを呼び出すことができるようになります。
しかし、うまくつながらない。
IlohaMailもMovableTypeも。
かなり悩んだのですが、データベースのホストを
自宅サーバーのアドレスを入れていたのですが、
Apacheのwwwは、自分自身なので、localhostと指定するんですね。
こうやって書くと簡単ですが、半日以上を費やしてしまいました。
Software Architecture 2003
rootがパスワード無しになっているので、パスワードを設定します。
% bin/mysqladmin -u root password <パスワード>
実習用のDBを作成します
% bin/mysqladmin -u root -p create mydb
Enter password: <パスワード>
rootでDBに接続します。データベースmydbが見えれば接続成功です
% bin/mysql -u root -p
Enter password: <パスワード>
mysql>show databases;
(結果)
mysql>quit
実習用のユーザを作成します(説明ではユーザ名/パスワードをmush/potatoとします)
PASSWORD()はハッシュを作成する関数です
mysql> insert into mysql.user (Host,User,Password)
values ('localhost','mush',PASSWORD('potato'));
mysql> insert into mysql.db (Host, Db, User,Select_priv,Insert_priv,
Update_priv,Delete_priv,Create_priv,Drop_priv)
values ('localhost','mydb','mush','Y','Y','Y','Y','Y','Y');
mysql> flush privileges;
mysql> quit
実践MySQL / perlモジュールを使用するには
shell$ perl -MCPAN -e shell
cpan> install DBI
とすると、DBI の最新版を持って来て、compile, make test, make install がおこなわれます。
MySQL module は、以下のようにしてインストールできます
cpan> install DBD::mysql
CPAN経由でLinuxにモジュールを組み込む
よくあるエラー、
Can't exec "mysql_config": No such file or directory at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.
これは、この辺 を参考に、mysql_config にシンボリックリンクを張って解決できます。
ln -s /usr/local/mysql/bin/mysql_config /usr/local/bin/mysql_config
という感じです。
そして次に出てきたエラーは、
Note (probably harmless): No library found for -lmysqlclient
これは解決に手間取りました。この辺 が参考になります。
まず、先ほどの「mysql_config」を使い、
/usr/local/mysql/bin/mysql_config --libs
で、吐き出されたデータをメモ。次に、
/usr/local/mysql/bin/mysql_config --cflags
で、吐き出されたデータをメモします。
CPANでインストール途中だったソースのあるディレクトリに移動します。
cd /root/.cpan/build/DBD-mysql-2.9003/
メモしたパスをつなげて、
perl Makefile.PL --cflags=-I/usr/local/mysql/include/mysql "--libs=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm"
とタイプします。(一行で。)
「Makefile」ファイルが正常に生成されたらOKです。後は、
make
make test
make install
で、残りのインストールを完了します。(2004年03月19日)
INSTALL - DBD::mysqlのインストールと構成設定の方法
バージョン7.1ではRed Hat LinuxはMySQLとDBD::mysqlがついてきます。 以下のRPMがインストールされているかを確認する必要があります:
mysql
perl-DBI
perl-DBD-MySQL
ソースからインストールするためには、以下のRPMが必要です
mysql-devel
libz-devel
コメント