服务器,高性能框架,备份恢复
后端 服务器 
ping 
端口号(22,80,443,3306,6379,8080,8000)
ssh: 
	cpu  : 
	mem  :
	IO   :
	
服务器启停:	
	真实硬件:远程管理卡,fence设备等
	虚拟化产品:kvm , openstack, ,vmware esxi, docker,k8s
自动装系统:
	真实硬件: kickstart + cobbler
	虚拟化产品:克隆,启动新容器
自动化配置:
	ansiable,saltstack  =====>SSH
生命周期管理
	启停服务,监控zabbix(硬件)
Devops:git jenkins 代码上线
堡垒机(jumpserver)
VPN
数据库审核:
	危险性操作
	SQL性能审计	(全表扫描,抓取执行事件过长的语)
	性能参数审核,根据性能指标,提出性能优化建议
	数据库对象监控,提出整改建议
	explain
		
========================
10 . 存储引擎
10.1 作用
和磁盘的数据打交道
10.2 简介
MySQL  基于存储引擎管理 表空间数据数据文件
10.3 种类
Innodb存储引擎
ibd:存储表的数据行和索引
frm:表基本结构信息
Myisam存储引擎
frm
myi 
myd
10.4 Innodb存储引擎核心特性
事务
保证交易的完整性
	ACID特性
	Atomic(原子性)
	所有语句作为一个单元全部成功执行或全部取消。不允许出现中间过程.
	Consistent(一致性)
	如果数据库在事务开始时处于一致状态,则在执行该事务期间将保留一致状态。 
	Isolated(隔离性)
	事务之间不相互影响。
	两个方面:  修改同一行 , 一致性读
	Durable(持久性)
	事务成功完成后,所做的所有更改都会准确地记录在数据库中。所做的更改不会丢失。
	
  redo undo 实现了 ACD
  
  I
 行级锁:事务修改行,会锁定这行(持有这行的锁)
  
 隔离级别(一致性读):
 RU  
 RC  
 RR  
 S 
	
10.5 事务控制语句
begin;
xxx
xxx
commit;
begin;
xxx
xxx
begin;
xxxxx
xxx
rollback;
	
隐式提交	
set  autocommit=0;
永久:
my.cnf 
	autocommit=0;
	
begin 
xxxxxx
xxx 
begin	
begin 
xxx
xxx
create drop alter  grant 
11. 日志
11.1 错误日志
log_error=/var/log/mysql.log
分析[error]
11.2 二进制日志 (binlog,逻辑型日志)
	11.2.1 作用
		记录所有变更类的语句
		DDL,DCL :以语句方式(statement)记录
		DML(已提交的事务语句):默认是以行模式记录(row模式,数据行的变化)
		可以做数据恢复和操作的审计
	11.2.2 配置方法
		log_bin=/opt/mysql/data/mysql-bin
		binlog_format=row
		server_id=6
		sync_binlog=1
	11.2.3 查看日志信息
		mysql> show binary logs;
		mysql> show master status;
	11.2.4 日志内容查看
		按事件查看日志内容
		mysql> show binlog events in 'mysql-bin.000012';
		直接查看日志内容
		mysqlbinlog --base64-output=decode-rows -vvv /opt/mysql/data/mysql-bin.000012 |more
	
	11.2.5 截取二进制日志
	[root@standby data]# mysqlbinlog --start-position=219 --stop-position=186613 /opt/mysql/data/mysql-bin.000012 >/tmp/binlog.sql
11.3 慢日志(slow-log)
记录慢语句的日志文件
slow_query_log=1
slow_query_log_file=/opt/mysql/data/standby-slow.log
long_query_time=1	
log_queries_not_using_indexes=1
使用Box Anemometer基于pt-query-digest将MySQL慢查询可视化
12.备份恢复
12.1 备份的种类
	逻辑备份:SQL语句的备份
	物理备份:数据页备份
12.2 逻辑备份工具的介绍
	select xxxx from t1  into outfile '/tmp/redis.txt'
	 mysql -uroot -p123 -e "select concat('hmset city_',id,' id ', id,' name ',name,' countrycode ',countrycode,' district ',district,' population ',population) from world.city limit 10 "|redis-cli	 
	 
	mysqldump 
	-u 
	-p 
	-S 
	-h 
	-P
	
	-A 全库备份
	mysqldump -uroot -p123 -A >/backup/full.sql
	-B 备份一个或多个指定库
	mysqldump -uroot -p123 -B world bbs  >/backup/wb.sql
	备份单库中的表
	mysqldump -uroot -p123  world city country  >/backup/ccc.sql
	
	--master-data=2       备份时记录二进制日志的状态
	--single-transaction  开启innodb热备功能
	-R 
	--triggers
	mysqldump -uroot -p123 -A --master-data=2 --single-transaction  -R   --triggers  >/backup/full.sql
	
13.主从复制
	基于二进制日志完成的.
Master   slave 	
 3307---->3308	
	
1. 3307中创建复制用户
主库开启二进制日志
vim /data/3307/my.cnf 
log_bin=/data/3307/mysql-bin
[root@standby 3307]# systemctl restart mysqld3307
[root@standby backup]# mysql -S /data/3307/mysql.sock
grant replication slave on *.* to repl@'10.0.0.%' identified by '123';
mysql> show master status
    -> ;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |      154 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql>
2.3308节点开启主从复制功能
[root@standby 3307]# mysql -S /data/3308/mysql.sock
mysql> CHANGE MASTER TO
  MASTER_HOST='10.0.0.200',
  MASTER_USER='repl',
  MASTER_PASSWORD='123',
  MASTER_PORT=3307,
  MASTER_LOG_FILE='mysql-bin.000001',
  MASTER_LOG_POS=154;
mysql> start slave;
mysql> show slave status\G
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
14."高可用"架构
	99%          1%*365=3.65D = 87.6h      
	99.9%        			    8.76h
	99.99%					    0.876h
	99.999%                     0.0876h
14.1 MySQL高可用架构介绍	
	MHA  
	5.7 MGR+Mysql router+mysql shell.....===>Mysql Innodb Cluster    ======>mongodb sharding cluster
    PXC      
	galera cluster
	
15.高性能架构
	读写分离
	
		atlas  360   C++
		maxscale mariadb
		proxySQL 
		DRDS(买)
		mysql router
		
	分布式架构
		分片集群
			Mycat 
			DBLE 
			TDDL
			DRDS 
			
                    
                
                
            
        
浙公网安备 33010602011771号