1 实训二前期LNMP简易架构 1.1 php server安装 |
1.2 安装初始化数据库 |
2 Mysql数据库 |
2.1 Mysql5.7安装 |
2.1.1 rpm安装 |
2.1.2 yum安装 |
2.1.3 源码安装 |
2.1.4 编译好的非rpm包安装 |
2.1.5 my.cnf常见选项 |
2.2 Mysql基础 |
2.2.1 MySql数据库操作 |
2.2.2 MySql数据类型 |
2.2.2.1 整型 |
2.2.2.2 浮点数和定数 |
2.2.2.3 字符串类型 |
2.2.2.4 日期和时间类型 |
2.2.2.5 字段修饰和约束 |
2.2.2.6 业务建表练习 |
2.2.3 MySql表操作 |
2.2.4 MySql体系结构 |
2.2.5 MySql存储引擎 |
2.3 MySql操作 |
2.3.1 MySql数据操作 |
2.3.2 MySql单表查询 |
2.3.3 MySql多表查询 |
2.3.4 MySql存储过程与函数 |
2.4 MySql操作-2 |
2.4.1 MySql安全机制 |
2.4.2 MySql日志管理 |
2.4.3 MySql复制概述 |
2.4.4 主从同步 |
2.5 最基本sql语句及主从架构 |
2.6 MyCat中间件 |
2.6.1 部署Mycat |
2.6.2 配置读写分离 |
2.6.2.1 安全的读写分离 |
2.6.3 XML语法格式 |
2.6.4 mycat 分表分库 |
2.7 Mysql MHA |
2.7.1 MHA-部署 |
2.7.2 MHA-故障切换VIP透明 |
2.7.2.1 VIP切换脚本内容 |
2.7.2.2 VIP-手动在线切换脚本 |
2.7.3 MHA+Mycat高可用Mysql读写分离 |
2.7.4 MHA+VIP+Mycat |
2.7.5 MHA-故障切换邮件报警 |
2.7.6 自动配置Slave主机 |
3 实验 |
3.1 mysql授权问题 |
3.2 1.单节点数据库 |
3.3 2.主从同步 |
3.4 3.实验(高可用) |
3.4.1 高可用keepalived |
3.4.1.1 keepalived install |
3.5 4.实验(高可用+大并发) |
3.5.1 HAproxy代理 |
3.6 4.实验(mycat-读写分离) |
3.6.1 mycat安装部署 |
3.6.2 读写分离高可用 |
3.6.3 mycat管理端口命令 |
3.7 5.双主双从-读写分离-高可用 |
3.8 6.mycat分库操作 |
3.9 7.mycat分表 |
3.10 8.mycat分库分表之下实现读写分离 |
4 Shell脚本编程 |
5 Zabbix监控 |
5.1 zabbix设置邮件报警--自定义报警媒介 |
5.2 zabbix解决中文界面乱码问题 |
5.3 ziabbix自带的template Linux OS |
5.4 zabbix-agent自定义收集数据 |
5.5 zabbix监控Nginx性能 |
5.6 综合配置 |
5.7 实验:监控nginx端口实现告警 |
6 ELK日志分析 |
6.1 PS |
6.2 es-head插件安装 |
6.3 安装filebeat nginx日志模板 |
************************ 字符串类型 *********************************************
MySQL 提供的字符串类型,可以存储的范围从简单的一个字符到巨大的文本块或二进制字符串数据。
UTF-8 char( 10 ) 姓名: char( 10 ) char(8) varchar(8)
2的8次方 256 0000001 你 0000011 我 char (10) 10字节? 10字符
BINARY 定长二进制字符串 ## 无字符集 VARBINARY 变长二进制字符串 ENUM 枚举型,多选一 1 2 3 4 其中的 1 个值 SET 集合型,多选多 set 集合: 游泳,逛街,看电影,踢球 多个值: 踢球,看电影
备注: varchar 可以使用 多个 字节用于 记录 长度信息,所以当存储长度超过 255 时, 会使用 2 个字节来记录总长度信息,因此可以支持高达 65535 的长度 。 2 的16 次方
===字符串类型测试:CHAR、VARCHAR
作用:用于存储用户的姓名、爱好、发布的文章等
CHAR 列的长度固定值,为创建表时声明的长度: 0 ~ 255 VARCHAR 列中的值为可变长字符串,长度: 0 ~ 65535
存储的时候。 姓名 char 家庭住址 varchar
注:在检索的时候,CHAR列删除了尾部的空格,而VARCHAR则保留这些空格
mysql> create table vc (v varchar(4),c char(4)); Query OK, 0 rows affected (0.03 sec)
mysql> desc vc; +-------+------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+------------+------+-----+---------+-------+ | v | varchar(4) | YES | | NULL | | | c | char(4) | YES | | NULL | | +-------+------------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
mysql> insert into vc values('ab ','ab '); Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> select * from vc; +------+------+ | v | c | +------+------+ | ab | ab | +------+------+ 1 row in set (0.00 sec)
mysql> select length(v),length(c) from vc; ## length 函数的使用 计算字符长度。 echo ${#name} +-----------+-------------+ | length(v) | length(c) | +-----------+-------------+ | 4 | 2 | +-----------+-------------+ 1 row in set (0.00 sec)
mysql> select concat(v,'='), concat(c,'=') from vc; ### concat() 函数的使用,可在字段后自行添加内容。 //在后面加字符'=',看的更清楚 +---------------+---------------+ | concat(v,'=') | concat(c,'=') | +---------------+---------------+ | ab = | ab= | +---------------+---------------+ 1 row in set (0.00 sec)
字符串类型: ENUM类型即枚举类型、SET 集合类型 测试
字段的值只能在给定范围中选择 常见的是单选按钮和复选框
enum 单选 只能在给定的范围内选一个值,如性别 sex 男male/女female set 多选 在给定的范围内可以选择一个或一个以上的值(爱好1,爱好2,爱好3...)
表 school.student3 姓名 name varchar(50) 性别 sex enum('m','f') 爱好 hobby set('music','book','game','disc')
mysql> use school mysql> create table student3( -> name varchar(50), -> sex enum('m','f'), -> hobby set('music','book','game','disc') -> ); Query OK, 0 rows affected (0.31 sec)
mysql> desc student3; +-------+-----------------------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-----------------------------------+------+-----+---------+-------+ | name | varchar(50) | YES | | NULL | | | sex | enum('m','f') | YES | | NULL | | | hobby | set('music','book','game','disc') | YES | | NULL | | +-------+-----------------------------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
mysql> insert into student3 values ('tom','m','book,game'); Query OK, 1 row affected (0.00 sec)
mysql> select * from student3; +------+------+-----------+ | name | sex | hobby | +------+------+-----------+ | tom | boy | book,game | +------+------+-----------+ 1 row in set (0.00 sec)
mysql> insert into student3 values ('jack','m','film'); ERROR 1265 (01000): Data truncated for column 'hobby' at row 1
|