我有简单的主/从配置。我的两个生产机器上都有 8GB 的 RAM。我使用 Master 只写,slave 只读。但是在周末我做了一项工作,就是在 master 上插入数据,这些数据应该被复制到 slave。由于我的奴隶落后于主人将近 15-16 个小时,这给我的报告造成了很大的麻烦,因为我是从奴隶那里阅读的,而奴隶没有更新信息。
关于这一点,我有几个疑问:
是否有任何合理的理由应该使用从属设备而不是主设备进行读取。(我的主设备在 5 分钟后写入。)并且一些作业是从从设备读取的计划。
我有 100GB 表,每天我在同一张表上插入数百万条记录。所有的选择和插入都发生在这个表上。我选择了将数据逐年从该表分离到多个表的方式,以优化该表是否有任何其他方法可以优化并加快该表的执行速度。
如果我留下任何不清楚的地方,请告诉我。
下面是表格设计:
+----------------+------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+------------------+------+-----+---------------------+----------------+
| test_id | int(11) unsigned | NO | PRI | NULL | auto_increment |
| prime_id | int(11) unsigned | NO | MUL | 0 | |
| prime2_id | int(11) unsigned | NO | MUL | 0 | |
| timestamp | datetime | NO | MUL | 0000-00-00 00:00:00 | |
| test_time | int(11) | NO | | 0 | |
| status | int(11) | NO | | 0 | |
| component | int(11) unsigned | NO | | 0 | |
| c_component | int(11) unsigned | NO | | 0 | |
| C2_component | int(11) unsigned | NO | | 0 | |
| C3_component | int(11) unsigned | NO | | 0 | |
| rt_component | int(11) unsigned | NO | | 0 | |
| code | int(11) unsigned | NO | | 0 | |
| ip | int(11) unsigned | YES | | 0 | |
| step_id | int(11) unsigned | YES | | NULL | |
+----------------+------------------+------+-----+---------------------+----------------+
This is the index information of the table:
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------+------------+-----------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| tests | 0 | PRIMARY | 1 | test_id | A | 629448388 | NULL | NULL | | BTREE | |
| tests | 1 | ixf_prime_id | 1 | prime_id | A | 14 | NULL | NULL | | BTREE | |
| tests | 1 | ixf_prime2_id | 1 | prime2_id | A | 14 | NULL | NULL | | BTREE | |
| tests | 1 | ix_timestamp | 1 | timestamp | A | 157362097 | NULL | NULL | | BTREE | |
| tests | 1 | ix_prime_id_timestamp | 1 | prime_id | A | 14 | NULL | NULL | | BTREE | |
| tests | 1 | ix_prime_id_timestamp | 2 | timestamp | A | 629448388 | NULL | NULL | | BTREE | |