1.主从原理
答:从库的 I/O 线程去请求主库中的 bin-log 二进制日志,并将得到的 binlog 日志写到 relay log(中继日志) 文件中;
主库的 dump 线程用来给从库的 I/O 线程传送 binlog 二进制日志;
从库的 SQL 线程会读取从库中的 rely-log 文件中的日志,并且解析成具体的操作进行持久化,从而实现主从的一致;
2.主从同步异常如何解决
答:1) 一般异常只需要跳过一步即可恢复
slave stop;
SET GLOBAL sql_slave_skip_counter =1;
slave start
- 断电导致的不能同步,通过主库的最后一个bin-log日志进行恢复。
3) 主键冲突,表已经存在等错误代码如1602,1032,1060 可以在配置文件中指定
3.主从同步主服务器宕机如何处理?
答:1. 硬件问题宕机(服务器,ecs,虚拟主机) 查看IDC巡检记录,或通过远程控制卡查看硬件运行状态
2.软件问题(服务中断)(一主多从的场景)
4**.数据库备份如何做**
答:MySQL dump+全备,bin-log增量备份。
5.MySQL优化你做了哪些操作
答:
(1)1. 对Linux内核进行优化防止操作系统影响MySQL性能
(2)为防止出现too many files open 调整打开文件句柄限制
(3)从硬件方面:加大物理内存,用SSD代替SAS或者将RAID级别调整为RAID10
(4)给数据库增加缓存,把热备数据加到内存中,提高读性能。
6.nginx平滑启动的命令是什么
答:/usr/nginx/sbin/nginx -s reload
7.nginx和apache有什么区别
答:
(1)1 apache 相对于nginx 的优点:
rewrite ,比nginx 的rewrite 强大
动态页面,nginx处理动态请求是鸡肋,一般动态请求要apache去做,nginx只适合静态和反向。
(2)nginx相对于apache的优点:
轻量级,同样起web 服务,比apache占用更少的内存及资源 ,支持更多的并发连接,体现更高的效率。在高连接并发的情况下,Nginx是Apache服务器不错的替代品
8.tomcat端口有哪些,都是什么用途
答:
80port:服务器连接器的端口号,该连接器将在指定端口侦听来自客户端的请求。
8005 port:指定一个端口,这个端口负责监听关闭Tomcat的请求
9.公司代码上线是怎么做的,发布周期是多长时间,一般什么时候上线
答:
dev: 开发服务版本库 bate 测试服务版本库, online线上服务版本库
测试通过后,再客户端选2000到3000个用户强制弹窗,让其更新版本。进行灰度发布。 有bug修复后再走一遍流程。
一周上线一次,周四上线,有问题就回滚,周五继续上线
10. 什么是灰度发布,什么是灰度测试
答: 所谓的灰度发布: 根据自己的配置,将部分用户的流量导到新系统来验证新功能的修改,一旦出现问题可以马上修复