暂无介绍
数据库事务需要满足ACID特性,即原子性、一致性、隔离性和持久性。对于隔离级别,SQL标准定义了四种隔离级别:Read Uncommitted、Read Committed、Repeatable Read和Serializable。隔离级别依次增强。隔离级别越高,事务请求的锁越多或者保持锁的时间就越长,并发性就越低。所以数据库的默认级别一般不是在最高级别的Serializable。
在MySql数据库的innodb存储引擎中,数据是按照主键以B+树的形式存储的。如果在建表的时候没有指定主键,那么引擎会自动添加一列主键。
当业务发展到一定阶段,数量上去之后,数据库可能会成为性能的瓶颈。此时就需要一些架构调整去优化数据库的访问,而数据库的读写分离就是其中的一种手段。不过要注意的是读写分离会增加系统的复杂性。在使用读写分离之前,先进行单机优化,比如sql语句的优化,表设计的优化或者增加缓存等。在充分利用单机性能之后,再考虑读写分离。另外,读写分离也是有适用场景的。
如何用SQL语句创建数据库?说明:在项目的开发当中数据库需要部署在客户的实际环境中试运行,但我们在部署的时候需要考虑的是,后台的数据库如何移植到客户的计算机中,考虑到各种版本的兼容性,最好的办法就是编写比较通用的SQL语句,包括建库,建表,添加约束等,最后复制到客户的计算机中运行;