คำถามติดแท็ก database

คำถามที่เกี่ยวข้องกับฐานข้อมูล MySQL ของ Magento ตัวอย่างเช่น schema ของตารางแบบสอบถาม SQL ธรรมดาหรือการกำหนดค่าฐานข้อมูล สำหรับคำถามเกี่ยวกับเลเยอร์การเข้าถึงฐานข้อมูล Magento ให้ใช้แท็กอื่นเช่น: eav, model, resource-model, collection, install-script สำหรับคำถามเกี่ยวกับแบบสอบถาม SQL โดยเฉพาะแท็ก SQL ก็เหมาะสมเช่นกัน

2
Magento การเพิ่มรหัสการแจ้งหนี้ใหม่แต่ละครั้งเพิ่มขึ้น 5 หรือไม่
ฉันต้องเพิ่มรหัสใบแจ้งหนี้ใหม่แต่ละรายการด้วย 5 ฉันได้ลองใช้รหัสด้านล่าง แต่เปลี่ยนใบแจ้งหนี้การจัดส่งคำสั่งซื้อและใบลดหนี้ทั้งหมด ฉันต้องการรหัสใบแจ้งหนี้ใหม่แต่ละใบเพิ่มขึ้น 5 รายการเพิ่มขึ้น 5 ครั้งและเพิ่มใบลดหนี้ 3 รวมทั้งคำสั่งขายที่เพิ่มขึ้น 1 (ปกติ) ฉันจะทำสิ่งนี้ได้อย่างไร คนใดคนหนึ่งช่วยฉัน class Mage_Eav_Model_Entity_Increment_Numeric extends Mage_Eav_Model_Entity_Increment_Abstract { public function getNextId() { $last = $this->getLastId(); if (strpos($last, $this->getPrefix()) === 0) { $last = (int)substr($last, strlen($this->getPrefix())); } else { $last = (int)$last; } $next = $last + 5; return …

5
Magento 2: วิธีรีเซ็ตรหัสผ่านลูกค้าจากฐานข้อมูล
มันแฮสำหรับรหัสผ่านลูกค้าในฐานข้อมูล MD5 และ Sha1 ไม่ทำงาน UPDATE `customer_entity` SET `password` = MD5('test123') WHERE `email` = 'X@X.com'; ดังนั้นวิธีอัพเดทรหัสผ่านโดยใช้การสืบค้นฐานข้อมูล อาจจะเป็นMD5(Sha1('test123'))อย่างไร วีโอไอพีทำรหัสผ่านได้อย่างไร ไปที่vendor\magento\module-customer\Console\Command\UpgradeHashAlgorithmCommand.php protected function execute(InputInterface $input, OutputInterface $output) { $this->collection = $this->customerCollectionFactory->create(); $this->collection->addAttributeToSelect('*'); $customerCollection = $this->collection->getItems(); /** @var $customer Customer */ foreach ($customerCollection as $customer) { $customer->load($customer->getId()); if (!$this->encryptor->validateHashVersion($customer->getPasswordHash())) { list($hash, $salt, $version) …

3
วัตถุประสงค์ของตาราง 'eav_'
ฉันสงสัยอยู่เสมอว่าอะไรคือความหมายของตาราง: eav_entity eav_entity_datetime eav_entity_decimal eav_entity_int eav_entity_store eav_entity_text มันว่างเปล่าเสมอ พวกเขาถูกสร้างขึ้นในรุ่นก่อน 1.6 ในapp/code/core/Mage/Eav/sql/eav_setup/mysql4-install-0.7.0.phpและต่อมาพวกเขาดำเนินการกับสคริปต์การติดตั้งสำหรับรุ่น 1.6+ /app/code/core/Mage/Eav/sql/eav_setup/install-1.6.0.0.php ฉันเห็นว่ามีรูปแบบทรัพยากรที่เชื่อมโยงกับหนึ่งในตารางMage_Eav_Model_Resource_Entity_Store(อาจมีคนอื่น ๆ ) แต่ไม่มีอะไรเกิดขึ้น จะมีการใช้งานใด ๆ กับตารางเหล่านี้หรือนี่คือ "คุณสมบัติ" อื่น ๆ ที่ได้รับการเริ่มต้นและไม่ได้ดำเนินการเช่นเดียวกับรุ่นรูปแบบหรือผู้ดูแลระบบสวดมนต์ยกตัวอย่างเช่น
19 database  eav 

6
Magento 2 - วิธีการรับค่าตัวเลือกคุณลักษณะของเอนทิตี eav?
ฉันจะรับค่าตัวเลือกคุณลักษณะของเอนทิตี eav ได้อย่างไร ฉันพบวิธีแก้ปัญหาเฉพาะสำหรับ magento 1.x แต่ M2 ฉันไม่รู้ M1: $attr = Mage::getResourceModel('eav/entity_attribute_collection')->setCodeFilter('specialty')->getData()[0]; $attributeModel = Mage::getModel('eav/entity_attribute')->load($attr['attribute_id']); $src = $attributeModel->getSource()->getAllOptions(); ใครรู้แสดงทีละขั้นตอนขอบคุณ!
18 magento2  database  eav 

2
Magento 2: ไดอะแกรมของตารางฐานข้อมูลเช่นคำสั่งซื้อผลิตภัณฑ์ ฯลฯ และความสัมพันธ์
ฉันกำลังมองหาไดอะแกรมหรือสคีมาของตารางฐานข้อมูล Magento 2 ทั้งหมดเช่นคำสั่งซื้อผลิตภัณฑ์ ฯลฯ และความสัมพันธ์ระหว่างกัน

4
Magento Development Workflow: วิธีการ "ควบคุมแหล่งข้อมูล" และอัพเดตการติดตั้ง Magento แบบสดจากการติดตั้ง Test Magento?
ฉันกำลังโพสต์คำถามนี้เพราะฉันต้องการทราบว่าเวิร์กโฟลว์การพัฒนาที่ดีที่สุดสำหรับใครบางคนที่ต้องการจัดการทุกด้านของร้านค้าออนไลน์ เช่นเดียวกับการพัฒนาเว็บทั้งหมดแน่นอนว่าการมีสำเนาสดและสำเนาพัฒนาซอฟต์แวร์อย่างน้อยหนึ่งชุดเป็นสิ่งที่สำคัญมาก อย่างไรก็ตามการจัดการข้อมูลวีโอไอพีนั้นไม่เหมือนกับการจัดการซอฟต์แวร์ "ไฟล์ที่ใช้ไฟล์อื่น ๆ " เพราะยังมีส่วนประกอบฐานข้อมูลที่เข้ามาเล่นดังนั้นนอกเหนือจากความจริงที่ว่าฉันสามารถใช้เครื่องมือเช่น Git เป็นเครื่องมือ VCS สำหรับการควบคุมแหล่งที่มาได้อย่างไร ฉันไปเกี่ยวกับการจัดการความแตกต่างในฐานข้อมูลระหว่างเวอร์ชันสดและการพัฒนาหรือไม่ แน่นอนว่าฉันสามารถทำการสำรองข้อมูลของฐานข้อมูลสดผ่าน cron และแทรกคำสั่ง SQL INSERT จากการสำรองข้อมูลลงในการควบคุมแหล่งที่มา แต่หลังจากนั้นฐานข้อมูลทั้งสองจะพัฒนาแยกกันในขณะที่ลูกค้าลงทะเบียนและสั่งซื้อสินค้าด้วยมือเดียว เป็นการอัพเดตที่ทำกับฐานข้อมูลการพัฒนาแยกต่างหาก เมื่อมันมาถึงการรวมการพัฒนาและเวอร์ชันสดไฟล์ php สามารถอัปเดตได้โดยไม่มีปัญหาผ่าน git (โดยใช้ gitignore บนไฟล์เดียวซึ่งรายละเอียดการกำหนดค่าฐานข้อมูลโฮสต์) แต่ไฟล์ฐานข้อมูลล่ะ? ฉันจะรวมสองไฟล์ที่มีคำสั่ง INSERT SQL จากการสำรองข้อมูลสองรายการโดยไม่ก่อให้เกิดความเสียหายและทำลายระบบได้อย่างไร นี่คือพื้นที่ร่มรื่นของวงจรการพัฒนาวีโอไอพีที่ฉันกำลังเผชิญอยู่: การจัดการความแตกต่างของฐานข้อมูล สำหรับฉันดูเหมือนโซลูชันเดียวที่จะซิงโครไนซ์เนื้อหาของฐานข้อมูลซึ่งแตกต่างกันระหว่างการพัฒนา / ทดสอบและเวอร์ชั่นสดของ Magento store คือการเขียนลงบนกระดาษแผ่นหนึ่งการเปลี่ยนแปลงทั้งหมดที่เกิดขึ้นในเวอร์ชันการพัฒนาผ่าน Magento Admin Panel และหวังว่าจะไม่ทำผิดพลาดหลังจากนั้นเมื่อทุกอย่างถูกทดสอบและทำงานเพื่อไปยังเวอร์ชันสดและดำเนินการเปลี่ยนแปลงเหล่านั้นในขณะที่ Magento ถูกออฟไลน์และเข้าสู่โหมดการบำรุงรักษา เนื่องจากนี่เป็นกระบวนการที่ทำด้วยมือจึงมีแนวโน้มที่จะเกิดข้อผิดพลาด ดังนั้นวิธีที่ดีกว่าในการจัดการการซิงโครไนซ์ฐานข้อมูลระหว่างเซิร์ฟเวอร์วีโอไอพีทดสอบและเซิร์ฟเวอร์วีโอไอพีสดคืออะไร ขอบคุณ

3
วิธีการเชื่อมต่อฐานข้อมูลอื่นจากวีโอไอพี
เป็นไปได้หรือไม่ที่จะเชื่อมต่อกับฐานข้อมูลอื่นจาก Magento และการเข้าถึงข้อมูล? หากฉันต้องการสร้างโมดูลฉันจะสร้างโมดูลเพื่อเข้าถึงฐานข้อมูลอื่นได้อย่างไร มีการสอนใดบ้างที่บอกเกี่ยวกับสิ่งเดียวกันตั้งแต่เริ่มต้น? ความคิดใด ๆ

3
วีโอไอพี 2: ความแตกต่างระหว่าง row_id และ entity_id ในตาราง% _entity คืออะไร?
ใน Magento 1 ไม่มีคอลัมน์ที่เรียกrow_idในตารางเอนทิตีคุณเพิ่งได้รับentity_id: CREATE TABLE `catalog_category_entity` ( `entity_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Entity ID', `entity_type_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT 'Entity Type ID', `attribute_set_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT 'Attriute Set ID', `parent_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Parent Category ID', …
17 magento2  database  eav 

3
เปลี่ยน URL พื้นฐาน Magento2.1
ฉันเปลี่ยน URL พื้นฐานใน Magento 2.1 แล้ว แต่ใช้ไม่ได้ ขณะทำการติดตั้งฉันได้ตั้ง url พื้นฐานwww.domain1.netไว้ที่ www.domain2.netฉันจำเป็นต้องเปลี่ยนไป สิ่งที่ฉันพยายาม: อัปเดต baseurl ในcore_config_data: UPDATE core_config_data SET value = 'http://www.domain2.net/' WHERE path IN ('web/secure/base_url', 'web/unsecure/base_url'); แทนที่ design/head/includes/ UPDATE core_config_data SET value = REPLACE(value, 'http://www.domain1.net/', 'http://www.domain2.net/') WHERE path = 'design/head/includes'; จากนั้นเปลี่ยน URL ร้านค้า php bin/magento setup:store-config:set --base-url="http://www.domain2.net/" php bin/magento setup:store-config:set …

5
ข้อผิดพลาดของดัชนีหลังจากอัปเกรดเป็น EE 1.14.2.0: ไม่มีแค็ตตาล็อก catalog_product_entity_tmp_indexer
หลังจากฉันอัพเกรด Magento เป็น EE 1.14.2.0 cron enterprise_refresh_indexจะได้รับข้อผิดพลาดนี้เสมอ: ข้อยกเว้น 'PDOException' พร้อมข้อความ 'SQLSTATE [42S02]: ไม่พบตารางพื้นฐานหรือมุมมอง: 1146 ตาราง' catalog_product_entity_tmp_indexer 'ไม่มีอยู่' ใน /var/www/public_html/lib/Zend/Db/Statement/Pdo.php:228 ฉันไม่เข้าใจว่าทำไมไม่มีตารางนี้ วีโอไอพีไม่ควรสร้างมันในกระบวนการของดัชนีการรีเฟรช?

4
เพิ่มคอลัมน์ในกริด (ผู้สังเกตการณ์) - คอลัมน์ 'store_id' ในกรณีที่คำสั่งย่อยเป็นปัญหาที่ไม่ชัดเจน
ฉันกำลังเพิ่มคอลัมน์ในตารางคำสั่งซื้อโดยใช้วิธีผู้สังเกตการณ์: ในกิจกรรม -> sales_order_grid_collection_load_beforeฉันกำลังเพิ่มการเข้าร่วมในคอลเล็กชัน ในกิจกรรม -> core_block_abstract_prepare_layout_beforeฉันกำลังเพิ่มคอลัมน์ลงในตาราง แก้ไขข้อมูลเพิ่มเติม: ในกิจกรรม (1): public function salesOrderGridCollectionLoadBefore($observer) { $collection = $observer->getOrderGridCollection(); $collection->addFilterToMap('store_id', 'main_table.store_id'); $select = $collection->getSelect(); $select->joinLeft(array('oe' => $collection->getTable('sales/order')), 'oe.entity_id=main_table.entity_id', array('oe.customer_group_id')); } ในเหตุการณ์ (2): public function appendCustomColumn(Varien_Event_Observer $observer) { $block = $observer->getBlock(); if (!isset($block)) { return $this; } if ($block->getType() == 'adminhtml/sales_order_grid') { /* …

3
ตาราง Magento บางตัวไม่ใช่ InnoDB ปลอดภัยที่จะแปลงตารางทั้งหมดเป็น InnoDB หรือไม่
ฉันใช้แบบจำลองการอ่าน AWS RDS มันมีปัญหากับตารางเอนจินของ Magento อย่างต่อเนื่อง สำหรับการสำรองข้อมูลและการอ่าน RDS แบบจำลองชอบ InnoDB ฉันสามารถเปลี่ยนตารางทั้งหมดเป็น InnoDB ได้อย่างปลอดภัยหรือไม่ นอกจากนี้ฉันยังได้รับคำเตือนต่อไปนี้จาก AWS: DB Instance magento-monin-prod-db มีตาราง MyISAM ที่ไม่ได้ย้ายไปยัง InnoDB ตารางเหล่านี้สามารถส่งผลกระทบต่อความสามารถในการกู้คืนข้อมูล ณ เวลาที่กำหนด พิจารณาการแปลงตารางเหล่านี้เป็น InnoDB โปรดดูที่http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html#MySQL.CommonDBATasks.Tables คำตอบที่น่าเชื่อถือ ยังคงสนใจในข้อเสนอแนะ ฉันจะเพิ่มนี่เป็นคำตอบหากฉันไม่พบปัญหาใด ๆ ภายใน 24 ชั่วโมงข้างหน้า ขั้นตอนที่ฉันทำด้านล่างดูเหมือนจะปลอดภัยจนถึงตอนนี้ ข้อกังวลที่ใหญ่ที่สุดของฉันคือตาราง Memory Engine ของ Magento (ตารางที่ลงท้ายด้วย in_tmp) และผลกระทบที่อาจเกิดขึ้นกับการจัดทำดัชนี นี่คือสิ่งที่ฉันทำ: SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE …

1
อะไรคือวิธีปฏิบัติที่ดีที่สุดใน Magento 2 สำหรับการสร้างความสัมพันธ์แบบหลายต่อหลายคน?
ฉันดูรอบแกนกลางและเห็นตัวอย่างของความสัมพันธ์แบบหลายต่อหลายถึงหลายแบบ แต่ฉันไม่เห็นคำตอบที่ชัดเจนเกี่ยวกับเรื่องนี้ ตัวอย่างเช่นสมมติว่าเราสร้างโมเดลใหม่และเราต้องการมีความสัมพันธ์แบบหลายต่อหลายกับตารางผลิตภัณฑ์ที่มีอยู่ ดังนั้นเราจึงมี Model - Stockist ใหม่ของเราและเราสร้าง 2 ตารางดังกล่าวหนึ่งรายการเพื่อเก็บชื่อ Stockist และอีกรายการหนึ่งเพื่อจัดเก็บความสัมพันธ์แบบหลายต่อหลายกับผลิตภัณฑ์ คลาสการตั้งค่าที่ถูกตัดทอน: $table = $setup->getConnection() ->newTable($installer->getTable('stockist')) ->addColumn('stockist_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true], 'Stockist Id') ->addColumn('name', \Magento\Framework\DB\Ddl\Table::TYPE_TEXT, null, ['nullable' => false], 'Stockist Name'); $table = $installer->getConnection() ->newTable($installer->getTable('stockist_product')) ->addColumn( 'entity_id', \Magento\Framework\DB\Ddl\Table::TYPE_INTEGER, null, …

1
กลไกของตารางการเปลี่ยนแปลงใหม่ (เช่น: catalog_category_product_cat_cl)
ฉันเพิ่งเห็นตารางที่กล่าวถึงในฐานข้อมูล ฉันคิดว่ามันใหม่ใน Magento EE 1.13 และอาจเกี่ยวข้องกับการจัดทำดัชนีใหม่ + + ---------------------------------------- | catalog_category_flat_cl | | catalog_category_product_cat_cl | | catalog_category_product_index_cl | | catalog_product_flat_cl | | catalog_product_index_price_cl | | cataloginventory_stock_status_cl | | catalogsearch_fulltext_cl | | enterprise_url_rewrite_category_cl | | enterprise_url_rewrite_product_cl | | enterprise_url_rewrite_redirect_cl | + + ---------------------------------------- ตารางเหล่านั้นทำงานอย่างไร จุดประสงค์คืออะไร? พวกเขาทำความสะอาดโดยอัตโนมัติหลังจากเวลา มันสมเหตุสมผลหรือไม่ที่จะรวมตารางเหล่านั้นไว้ในการสำรองข้อมูล?
15 database  ee-1.13 

5
แปลงฐานข้อมูลการผลิตเป็นข้อมูลการทดสอบ
ยิ่งการทดสอบใกล้เคียงกับการผลิตมากเท่าไหร่ก็ยิ่งดีเท่านั้นที่จะเลียนแบบพฤติกรรมการผลิตได้ ฉันต้องการคัดลอกการสำรองฐานข้อมูลจากการผลิตลงในสภาพแวดล้อมการทดสอบของเรา แต่สิ่งที่ฉันต้องเปลี่ยนเพื่อให้การทดสอบทำงานและเพื่อป้องกันการรบกวนการผลิตหรือส่งอีเมลถึงลูกค้าจริงโดยไม่ตั้งใจ (นอกเหนือจากการตั้งค่าweb/%secure/base_urlURL ทดสอบ) อีกวิธีในการคิดเกี่ยวกับคำถามนี้คือการพิจารณาวิธีสร้างข้อมูลตัวอย่างวีโอไอพีจากข้อมูลการผลิตของฉันเอง
15 database 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.