数据库笔记

1.COLLATE=utf8mb4_bin

MySQL DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci utf8mb4_bin utf8mb4_general_ci_default charset=utf8mb4 collate=utf8mb4_0900_ai_ci_Ebaugh的博客-CSDN博客

2.ENGINE=InnoDB AUTO_INCREMENT=2

ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8_kaitlyn_r的博客-CSDN博客

3.分库分表

分库分表的几个常见方面;

1. 访问频率:对于高频访问的数据,可以将其存储在单独的数据库或表中,以提高读写性能。

2. 数据大小:对于大量的数据,可以将其拆分到多个表中,以减少单表的数据量,降低存储开销。 3. 数据类型:对于不同类型的数据,可以将其拆分到不同的数据库或表中,便于管理和查询。

4. 数据范围:对于不同范围的数据,可以将其拆分到不同的数据库或表中,便于数据的管理和查询。

分库分表的主要目的在于:

数据分摊、提高QPS/TPS、分摊压力、提高可扩展性。比如;比如数据库的读写性能下降,或者单表数据量过大,这时候您就需要考虑进行分库分表操作了。通过拆分数据库,可以将单个数据库的压力分摊到多个数据库上,从而避免单个数据库的性能瓶颈,提高系统的性能和可扩展性。此外,分库分表还可以解决数据库存储容量的限制,提高数据库的存储能力。 另外在分库分表之后,数据的一致性会受到影响,数据库的管理和维护成本也会增加。因此,在考虑分库分表时,需要仔细权衡利弊,确定是否真的需要进行分库分表操作。也就是你的开发成本问题。因为有分库分表就会相应的引入 canal binlog同步、es、mq、xxl-job等分布式技术栈。

4.USING BTREE 索引

mysql 索引中的USING BTREE 的意义_lxw1844912514的博客-CSDN博客

你可能感兴趣的:(数据库,数据库,mysql)