数据库复制
NOTE
此功能仅适用于Adobe Commerce实例。
IMPORTANT
在Adobe Commerce版本2.4.2中,拆分数据库功能已弃用。 请参阅从拆分数据库还原到单个数据库。
设置数据库复制具有以下优点:
- 提供数据备份
- 在不影响master数据库的情况下启用数据分析
- 可扩展性
MySQL数据库以异步方式复制,这意味着无需永久连接从属进程即可从主数据库接收更新。
配置数据库复制
有关数据库复制的深入讨论超出了本指南的范围。 要设置此功能,您可以咨询以下资源:
Commerce为从属数据库提供了示例MySQL配置。 为ResourceConnections
类README.md
提供了简单配置。
下面是更高级的描述,仅供您参考:
return array (
//...
'db' =>
array (
'connection' =>
array (
'indexer' =>
array (
'host' => 'default-master-host',
'dbname' => 'magento',
'username' => 'magento',
'password' => 'magento',
'active' => '1',
'persistent' => NULL,
),
'default' =>
array (
'host' => 'default-master-host',
'dbname' => 'magento',
'username' => 'magento',
'password' => 'magento',
'active' => '1',
),
'checkout' =>
array (
'host' => 'checkout-master-host',
'dbname' => 'checkout',
'username' => 'magento',
'password' => 'magento',
'model' => 'mysql4',
'engine' => 'innodb',
'initStatements' => 'SET NAMES utf8;',
'active' => '1',
),
'sales' =>
array (
'host' => 'sales-master-host',
'dbname' => 'sales',
'username' => 'magento',
'password' => 'magento',
'model' => 'mysql4',
'engine' => 'innodb',
'initStatements' => 'SET NAMES utf8;',
'active' => '1',
),
),
'slave_connection' =>
array (
'default' =>
array (
'host' => 'default-slave-host',
'dbname' => 'magento',
'username' => 'read_only',
'password' => 'password',
'active' => '1',
),
'checkout' =>
array (
'host' => 'checkout-slave-host',
'dbname' => 'checkout',
'username' => 'read_only',
'password' => 'password',
'model' => 'mysql4',
'engine' => 'innodb',
'initStatements' => 'SET NAMES utf8;',
'active' => '1',
),
'sales' =>
array (
'host' => 'sales-slave-host',
'dbname' => 'sales',
'username' => 'read_only',
'password' => 'password',
'model' => 'mysql4',
'engine' => 'innodb',
'initStatements' => 'SET NAMES utf8;',
'active' => '1',
),
),
'table_prefix' => '',
),
//.......
性能改进
为了提高主从复制的性能,可以过滤从实例上的某些表。 我们建议筛选用于目录搜索且名称模式为search\_tmp\_%
的所有临时表。
为此,请在从属实例的my.cnf
文件中添加以下行:
replicate-wild-ignore-table=%.search\_tmp\_%
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c