管理ページに問題があります。管理者にログインした後、突然エラーメッセージが表示されます..
SQLSTATE [42S02]: ベース テーブルまたはビューが見つかりません: 1146 テーブル 'sinergi_luki.captcha_log' が存在しません
これは、magento 1.5.0.1 を新しいサーバーに移行したのに、新しいサーバーに magento 1.7.0.0 をインストールしたためですか? またはなぜですか?解決策を教えてください。ありがとう!
管理ページに問題があります。管理者にログインした後、突然エラーメッセージが表示されます..
SQLSTATE [42S02]: ベース テーブルまたはビューが見つかりません: 1146 テーブル 'sinergi_luki.captcha_log' が存在しません
これは、magento 1.5.0.1 を新しいサーバーに移行したのに、新しいサーバーに magento 1.7.0.0 をインストールしたためですか? またはなぜですか?解決策を教えてください。ありがとう!
Mage_Captcha は、Magento 1.7.0 で提供された新しいコア モジュールであり、インストール スクリプトの名前が間違っているようです。
app/code/core/Mage/Captcha/sql/captcha_setup/install-1.7.0.0.0.php の名前を mysql4-install-1.7.0.0.0.php に変更し、キャッシュ管理からキャッシュ ストレージをフラッシュします。
Magento 開発者が「mysql4-」プレフィックスを必要としないインストール スクリプトの新しい標準を実装しているかどうかはわかりませんが、そうであれば、1.7.0.2 にアップグレードしたときに機能しなかったため、このファイルの名前を変更すると騙す。
次のコードで sql ファイルを作成し、データベースにインポートします。
-- Server version 5.5.9
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Table structure for table `captcha_log`
--
DROP TABLE IF EXISTS `captcha_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `captcha_log` (
`type` varchar(32) NOT NULL COMMENT 'Type',
`value` varchar(32) NOT NULL COMMENT 'Value',
`count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Count',
`updated_at` timestamp NULL DEFAULT NULL COMMENT 'Update Time',
PRIMARY KEY (`type`,`value`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Count Login Attempts';
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `captcha_log`
--
LOCK TABLES `captcha_log` WRITE;
/*!40000 ALTER TABLE `captcha_log` DISABLE KEYS */;
/*!40000 ALTER TABLE `captcha_log` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2012-07-10 14:41:53
sinergi_luki
は、magento インストールのルート フォルダー名への参照であり、それ以上のものではありません。
1.4.2 から 1.5、1.6、1.7.0.1 (ssh アップグレード) にアップグレードしましたが、ログイン時に発生するエラーを除いて問題はありません。
SQLSTATE [42S02]: ベース テーブルまたはビューが見つかりません: 1146 テーブル 'apezooc_magento.captcha_log' が存在しません
もう一度押すEnterとエラーが消え、管理セクションに入ります。
この問題は、captcha モジュールのインストール スクリプトが実行または実行されていないために発生します。この問題を解決するには、テーブル 'captcha_setup'
からエントリを削除するか、または'core_resource'
delete FROM core_resource where code='captcha_setup';
ブラウザを更新します
悲しいことに、魔法のような答えはありません。次回は Magento を正しく移行してください。
新しいサーバーのシステムには、カスタム データベース テーブルを参照するコードがあります sinergi_luki
。このテーブルは、古いサーバーから新しいサーバーに移動しませんでした。また、基本の magento インストールの一部ではありません。Google 翻訳によると、sinergi という単語はインドネシア語で相乗効果を意味し、Luki はインドネシア語の名前のようです。そのため、以前の開発者はデータベースの移行を含めずにいくつかのカスタム機能を構築したと推測されます。
古いデータベースを見つけて、このテーブルをエクスポートし、新しいシステムにプルして戻す必要があります。それ以外はSOLです。
幸運を。