1 MySQL
MySQL查询语言你了解哪些
MySQL支持哪些事物<br /> MySQL读写分离原理<br /> MySQL读写分离出现故障,导致主从数据不一致,说说你的排错思路,你应该则么去做
2 Mongodb
MongoDB是一个文档数据库,是一个非关系型数据库,易扩展,高性能,高可用性。
插入文档的命令:db.collection.insert_one( )或insert()
使用索引的基本命令:db.collection.ensureIndex( {KEY: 1} ),key指的是键名。
查找的命令:db.collection.find({KEY:skjdk })
创建集合:db.createCollection(name, options) (一般直接db.name或db[name]就行)
集合只有在里面有数据了之后才正式创建。
删除集合:db.collection.drop( )
集合就相当于sql中的表。 collection里面的键值对组 叫做文档。
mongodb不支持主键外键关系。
分片:在多台计算机存储数据记录的过程。
什么时候用nosql?
处理非结构化或者半结构化数据时(sql是结构化的数据);
需要随时应对动态增长的数据项时;
在水平方向上扩展时(增加服务器就能增加性能);
垂直扩展指的是提高单机处理能力。
大多数情况下应该优先考虑关系型数据库。
schema:数据库的组织和结构。(表,列,对象,关系之类的)
3 redis
redis也是nosql,它不仅能用作数据库,还能用作缓存和消息中间件。
redis响应快
应对高并发能力强。
缺点:缓存击穿、缓存雪崩
redis 数据类型<br /> redis主从同步<br /> redis高可用方案(哨兵、集群)