解決したいこと
下記エラーでAWS環境が表示できない状況でAmazon RDS MariaDBのパラメータ周りを疑っています。
RDSで利用できないパラメータ、設定が必要なパラメータ等ご知見お持ちでしたらご教示頂けないでしょうか。
DBサーバのバージョンは異なりますが、MariaDB 10.5.5が動いている他サーバ(AWS環境ではありません)
では当該エラーはでず、サイトは正常に表示されます。
正常に表示されるサイトのほうのApache・OS・PHPバージョンはエラーがでているAWS環境と同じです。
発生している問題・エラーメッセージ
PHP Fatal error: Call to a member function fetchRow() on boolean in /opt/spf/htdocs/ja/usr-data/units/bSlideShow/bSlideShow.php on line 547
bSlideShow.php
).' asc'; 545 if (isset($this->_pageu_code) && is_numeric($this->_pageu_code)) { 546 $result = $this->db->prepare($sql, $this->_pageu_code); 547 $firstRow = $result->fetchRow(DB_FETCHMODE_ASSOC); 548 $firstRow = $this->replaceMultipleData($firstRow, $this->column_link); 549 $rtn = $firstRow; 550 if (is_numeric($firstRow['umlt_code'])) { 551 $rtn['umlt'][] = $row = $this->setResult($firstRow); 552 while ($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) { 553 $row = $this->setResult($row); 554 $row = $this->replaceMultipleData($row, $this->column_link); 555 $rtn['umlt'][] = $row; 556 } 557 } 558 } 559 560 return $rtn; 561 }
PDOデータベース接続テストプログラム
PHP
1<?php 2//PDO設定 3$pdo_dsn = 'mysql:host=xxx-xxx-db.xxxxxx.ap-northeast-1.rds.amazonaws.com;dbname=xxx_xxxxx;charset=utf8;'; 4$pdo_user = 'spfdb'; 5$pdo_pass = '4dGKqE3W'; 6$pdo_option = array( 7 PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, 8 PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, 9 PDO::ATTR_EMULATE_PREPARES => false, 10 PDO::ATTR_STRINGIFY_FETCHES => false 11); 12//データベース接続 13try { 14 $pdo = new PDO($pdo_dsn, $pdo_user, $pdo_pass, $pdo_option); 15} catch (Exception $e) { 16 header('Content-Type: text/plain; charset=UTF-8', true, 500); 17 exit($e->getMessage()); 18} 19?> 20<!DOCTYPE html> 21<html> 22<head> 23<meta charset="UTF-8"> 24<title>PDO接続テスト</title> 25</head> 26<body> 27<?php 28//SQL発行 29$stmt = $pdo->query("SELECT @@version"); 30while ($row = $stmt->fetch()) { 31 print_r($row); 32} 33?> 34</body> 35</html>
確認したこと
・WEBサーバ(AmazonEC2)からmysqlコマンドでDBサーバ(AmazonRDS)へ接続できる
・WEBサーバにPDOデータベース接続テストプログラムを配置、接続できること
・WEBサーバにインストールしているPHP・PHPモジュール、ライブラリーは以下
oniguruma5php.x86_64 6.9.5+rev1-3.el7.remi @remi-safe php.x86_64 5.6.40-23.el7.remi @remi-php56 php-cli.x86_64 5.6.40-23.el7.remi @remi-php56 php-common.x86_64 5.6.40-23.el7.remi @remi-php56 php-devel.x86_64 5.6.40-23.el7.remi @remi-php56 php-gd.x86_64 5.6.40-23.el7.remi @remi-php56 php-mbstring.x86_64 5.6.40-23.el7.remi @remi-php56 php-mcrypt.x86_64 5.6.40-23.el7.remi @remi-php56 php-mysqlnd.x86_64 5.6.40-23.el7.remi @remi-php56 php-opcache.x86_64 5.6.40-23.el7.remi @remi-php56 php-pdo.x86_64 5.6.40-23.el7.remi @remi-php56 php-pecl-jsonc.x86_64 1.3.10-2.el7.remi.5.6 @remi-php56 php-pecl-jsonc-devel.x86_64 1.3.10-2.el7.remi.5.6 @remi-php56 php-pecl-zip.x86_64 1.19.1-1.el7.remi.5.6 @remi-php56
・DBサーバのバージョンは異なるがMariaDB 10.5.5の他サーバでは当該エラーはでず、サイトは正常に表示される
Apache・OS・PHPのバージョンはエラーがでているサイトと同じ
補足情報(言語/FW/ツール等のバージョンなど)
・PHP 5.6.4
・Apache 2.4.6
・MariaDB 10.4.13(Amazon RDS)
・bingo!CMS 1.7.0a
・CentOS7.8
回答1件
あなたの回答
tips
プレビュー