[PHP-users 18533]mysqlを3.2系から4.0系にバージョンアップ後mod_phpでmysql関数にエラーが発生

hogehoge hogehoge @ ss.iij4u.or.jp
2003年 10月 21日 (火) 14:54:36 JST


初めまして、久松と申します。

環境
Redhat7.3
apache-1.3.27
mod_auth_mysql2.20+patch5
mod_ssl
# rpm -qa | grep MySQL
MySQL-client-4.0.15-0
MySQL-server-4.0.15-0
MySQL-devel-4.0.15-0
MySQL-shared-compat-4.0.15-0


php-4.3.3で、configureはphpinfoより
--------------------------------------------
'./configure' '--enable-mbstring' '--enable-mbstr-enc-trans'
'--enable-mbregex' '--with-curl=/usr/local' '--with-openssl'
'--with-gd-dir=/usr/lib' '--with-jpeg-dir=/usr/lib'
'--with-png-dir=/usr/lib' '--with-tiff-dir=/usr/lib'
'--with-zlib-dir=/usr/lib' '--enable-zend-multibyte'
'--with-apxs=/www/bin/apxs' '--with-mysql'
--------------------------------------------

上記環境にてmysql関数以外を利用したphpは問題なく処理されますが
mysql系の関数を利用するとapacheのerror_logに
[Tue Oct 21 14:45:18 2003] [notice] child pid 21716 exit signal Segmentation
fault (11)
といったエラーが出力されブラウザには何も帰してきません。
MySQLのバージョンが3.23系ですと問題はなかったのですがバージョンを上げた途端
に
このような現象が発生しております。
また、このスクリプトをcgi(suexec環境下)として扱うと問題なく動作しておりま
す。
以下に上記のエラーが発生するスクリプト及びcgiとして利用する為にスクリプトを
記述致します。
mysql.cgiとmysql.phpは同一ディレクトリに存在致します。

どなたか解決方法がおわかりの方はいらっしゃいますでしょうか?

# cat mysql.cgi
#!/usr/local/bin/php
<?
print "Content-type: text/html\n\n";
include("./mysql.php");
?>

# cat mysql.php
<?
// データベースに接続し、選択する
$link = mysql_connect("localhost", "hogehoge", "hogehoge")
    or die("Could not connect");
print "Connected successfully";
mysql_select_db("hogehoge")
    or die("Could not select database");

// SQLクエリを実行する
$query = "SELECT * FROM mysql_auth";
$result = mysql_query($query)
    or die("Query failed");

// HTMLに結果を出力する
print "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
    print "\t<tr>\n";
    foreach ($line as $col_value) {
        print "\t\t<td>$col_value</td>\n";
    }
    print "\t</tr>\n";
}
print "</table>\n";

// 接続を閉じる
mysql_close($link);
?>




PHP-users メーリングリストの案内