タグ付けされた質問 「table」


3
一部のMagentoテーブルはInnoDBではありませんが、すべてのテーブルをInnoDBに変換しても安全ですか?
AWS RDSリードレプリカを使用しています。Magentoのメモリエンジンテーブルには常に問題があります。バックアップとリードレプリカのために、RDSはInnoDBを愛しています。すべてのテーブルをInnoDBに安全に変更できますか? さらに、AWSから次の警告が表示されます。 DBインスタンスmagento-monin-prod-dbには、InnoDBに移行されていないMyISAMテーブルが含まれています。これらのテーブルは、ポイントインタイムリストアを実行する能力に影響を与える可能性があります。これらのテーブルをInnoDBに変換することを検討してください。http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html#MySQL.CommonDBATasks.Tablesを参照してください もっともらしい答え まだフィードバックに興味があります。24時間以内に問題が見つからない場合は、これを回答として追加します。これまでのところ、私が行った手順は安全なようです。私の最大の懸念は、Magentoのメモリエンジンテーブル(in_tmpで終わるテーブル)と、インデックス作成に与える影響でした。 ここに私がやったことがあります: SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE (ENGINE = 'Memory' OR ENGINE='MyIsam') AND TABLE_SCHEMA='magento_db' 私にとってこれは主に一時的なインデックステーブルとmagentoモジュールテーブルを返したので、重要なコアテーブルはそれほど多くなく、ファンがヒットした場合に別のalterテーブルを簡単に実行できるテーブルはほとんどありませんでした。 返された各テーブルに対して、私は実行しました: Alter table {table-name} ENGINE=InnoDB; いずれのテーブルもInnoDBでない場合は、これを試してみてください。ただし、前に言ったように、インスタンスには修正が必要なコアテーブルがわずかしかありませんでした。

1
Magento 2 getTableの動作
TL; DR: Magento 2にgetTableは、リソースコレクションモデルからメソッドを作成して、2つの異なるパラメーターに対して同じテーブル名を返す方法はありますか? 詳細な説明 Magento 1の例から始め ますmodule_entiti1_entity2。 このconfig.xmlようなテーブルをこのように宣言する必要がありました <module_resource> <class>....</class> <entities> <entity1_entity2> <table>module_entiti1_entity2</table> </entity1_entity2> </entities> </module_resource> 次に、たとえば次のようなリソースコレクションモデルからテーブル名を取得できます。 $collection->getTable('module/entity1_entity2'); しかし、必要であれば、同じテーブルに複数のエイリアスを使用できます。 私のconfig.xmlセクションが <module_resource> <class>....</class> <entities> <entity1_entity2> <table>module_entiti1_entity2</table> </entity1_entity2> <entity2_entity1> <table>module_entiti1_entity2</table> </entity2_entity1> </entities> </module_resource> 2つの方法でテーブルを取得できます。 $collection->getTable('module/entity1_entity2'); $collection->getTable('module/entity2_entity1'); Magento 2では、上記のようなテーブル宣言はもうありません。 このようにテーブル名を取得できます$collection->getTable('module_entity1_entity2')。 パラメーターがパラメーターmodule_entity2_entity1と同じテーブル名を返すようにmagentoに指示する方法はありますmodule_entity1_entity2か?

4
Magento2 InstallSchema.phpは指定されたテーブルを作成しません
データベースに必要なテーブルを作成しないInstallSchema.phpがあります。スキーマのコードは次のとおりです。 <?php namespace MyVendor\Helpdesk\Setup; use Magento\Framework\Setup\InstallSchemaInterface; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\SchemaSetupInterface; /** * @codeCoverageIgnore */ class InstallSchema implements InstallSchemaInterface { public function install(SchemaSetupInterface $setup, ModuleContextInterface $context) { $installer = $setup; $installer->startSetup(); $table = $installer->getConnection() ->newTable($installer->getTable('myvendor_helpdesk_ticket')) ->addColumn( 'ticket_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], …

1
自動インクリメント以外の主キーを持つテーブル
Magentoで、idとdateの2つのフィールドを持つテーブルをセットアップしました。日付は単に現在に設定されていますが、IDは実際には注文IDに添付された外部キーです。 私の問題は、Magentoがこれらのオブジェクトを保存しないことです。エラーは発生しませんが、データベースには何も追加されません。
9 database  model  table 

4
SQLSTATE [42S02]:ベーステーブルまたはビューが見つかりません:1146テーブル 'core_store'は存在しません
私は何時間も解決策を探し続けてきたので、誰かが私を助けてくれるとありがたいですが、それらはすべてかなりあいまいです。 Webサイトにアクセスしようとすると、次のエラーが表示されます。 リクエストの処理中にエラーが発生しましたSQLSTATE [42S02]:ベーステーブルまたはビューが見つかりません:1146テーブル 'shopstel_magento.core_store'が存在しませんトレース:#0 / home / shopstel / public_html / lib / Zend / Db / Statement。 php(300):Zend_Db_Statement_Pdo-> _ execute(Array)#1 /home/shopstel/public_html/lib/Zend/Db/Adapter/Abstract.php(479 ):Zend_Db_Statement-> execute(Array)#2 / home / shopstel / public_html / lib / Zend / Db / Adapter / Pdo / Abstract.php(238):Zend_Db_Adapter_Abstract-> query( 'SELECT main_ta ...'、Array)#3 / home / …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.