一. 数据库

1. MySQL

1.1 为什么要优化

—— 因为需要根据使用场景,选择最合适自己的组合配置。例如:虽然Myisam存储引擎在5.5之后不再是默认存储引擎,但是如果结合到当前需求,对高并发和事务上不做要求的情况下,Myisam也是更优于Innodb的选择。

1.2 数据库结构优化

—— 合理范式化设计; 选择适合的存储引擎; 规范数据库、表及字段的命名规范; 使用适合的数据类型;

1.3 MySQL数据库cpu飙升到500%处理

—— 进入数据库,使用 show processlist; 确认当前正在运行线程状态,结合场景是否可以杀掉线程进行对应处理。

1.4大表怎么优化?某个表有近千万数据,CRUD比较慢,如何优化?分库分表了是怎么做的?分表分库了有什么问题?有用到中间件么?他们的原理知道么?

—— 服务器升配、数据库结构优化、Sql语句优化、读写分离、分库分表。

—— 把单个库或单个表拆分为多库多表。多表查询、事务问题。中间件:Mycat、cobar、atlas。

1.4.1 垂直分表:基于列进行切分,将部分字段拆分到扩展表。

适用场景:多字段情况下
缺点:事务问题,没有解决单表数据量大的问题。

1.4.2 水平分表:基于行进行切分,将部分数据拆分到扩展表。

适用场景:单表数据量过大
缺点:关联查询问题

1.5 MySQL的复制原理以及流程

——master节点将变更写入binlog并发送给从库;从库I/O线程读取binlog内容写入到relay log。Sql线程读取、执行更新。

1.6 读写分离有哪些解决方案?

——mysql-proxy等

1.7 备份计划,mysqldump以及xtranbackup的实现原理

——mysqldump:逻辑备份,直接生成Sql语句,执行Sql恢复备份。
——xtrabackup:物理备份,复制相关文件。

1.8 数据表损坏的修复方式有哪些?

——mysqlcheck,myisamchk等

2. Redis

2.1 Redis的应用场景

——session共享、热点缓存、计数、消息队列等

2.2 redis的集群方案
  • List item

——主从复制、哨兵模式、集群、扩展集群codis、twemproxy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值