为你推荐
版权
内容提要
前言
资源与支持
第1篇 基础篇
第1章 SQL Server On Linux简介
1.1 为何选择Linux平台的SQL Server
1.2 SQL Server关键组件简介
1.3 SQL Server On Linux新特性简介
1.3.1 数据库引擎
1.3.2 SQL Server Integration Services
1.3.3 机器学习
1.3.4 兼容Linux平台
1.3.5 其他
1.4 SQL Server On Linux新玩法
1.5 SQL Platform Abstraction Layer
1.5.1 PAL简介
1.5.2 进程模型
1.5.3 小结
1.6 本书结构
SQL Server在Windows和Linux平台上的特点
1.7 总结
第2章 Linux基础及安装部署
2.1 背景介绍
2.2 前期规划
2.3 基础框架
2.4 部署
2.4.1 服务器命名及配置
2.4.2 安装过程
2.5 预配置
2.5.1 查看当前IP地址
2.5.2 检查网络连通性
2.5.3 远程登录
2.6 总结
第3章 安装配置SQL Server On Linux
3.1 安装前的准备工作
3.2 安装攻略
3.2.1 操作系统环境检查
3.2.2 安装SQL Server
3.2.3 验证安装
3.2.4 安装SQL Server命令行工具
3.2.5 尝试使用
3.3 环境配置
3.3.1 更新/卸载/重装SQL Server
3.3.2 检查配置存储库信息
3.3.3 安装SQL Server代理
3.3.4 SQL Server实例配置
3.4 注意事项
3.5 安装示例数据库
3.5.1 下载备份文件
3.5.2 移动文件
3.6 总结
第2篇 管理篇
第4章 Linux基础运维
4.1 常用指令
4.1.1 文件或目录
4.1.2 编辑或查看指令
4.1.3 网络相关
4.1.4 系统层面
4.1.5 其他杂项
4.2 基础运维
4.2.1 服务部署
4.2.2 指标
4.2.3 安全
4.2.4 调优
4.2.5 Shell入门
4.3 总结
第5章 Linux基础监控
5.1 分布式监控系统Zabbix
5.1.1 安装服务端
5.1.2 安装配置客户端
5.1.3 告警设置
5.2 Grafana展现
5.2.1 部署
5.2.2 数据源选择
5.2.3 丰富的面板
5.2.4 定制
5.3 SQL Server监控
5.4 总结
第6章 服务及空间管理
6.1 服务器的服务及空间管理
6.1.1 Windows服务及空间管理
6.1.2 Linux服务及空间管理
6.1.3 小结
6.2 SQL Server服务及空间管理
6.2.1 SQL Server服务管理
6.2.2 SQL Server空间管理
6.3 SQL On Linux备份还原
6.3.1 数据库备份
6.3.2 数据库还原
6.3.3 数据库备份还原新用法
6.4 总结
第7章 SQL Server On Linux数据库安全
7.1 安全概念
7.2 始终加密
7.2.1 AE简介
7.2.2 AE演示
7.2.3 创建密钥
7.2.4 小结
7.3 动态数据屏蔽
7.3.1 DDM简介
7.3.2 DDM屏蔽规则
7.3.3 DDM演示
7.3.4 DDM性能与安全
7.4 行级安全性
7.4.1 RLS演示
7.4.2 小结
7.5 时态表
7.5.1 SQL Server时态表
7.5.2 SQL Server时态表的演示
7.6 总结
第8章 Linux自动化运维演示
8.1 expect
8.1.1 Shell中的expect
8.1.2 Python模块中的pexpect
8.1.3 Python模块中的paramiko
8.1.4 小结
8.2 Ansible入门
8.2.1 安装部署
8.2.2 基本操作
8.2.3 进阶
8.2.4 架构图及架构说明
8.3 总结
第9章 数据库监控
9.1 监控理论
9.1.1 监控的内容和目的
9.1.2 监控的方法/流程
9.1.3 监控的意义
9.1.4 小结
9.2 监控工具
9.2.1 SQL跟踪
9.2.2 扩展事件
9.2.3 动态管理视图/动态管理函数
9.2.4 性能计数器及数据收集器集
9.2.5 SQL Server新工具
9.2.6 专家工具
9.2.7 传统工具
9.2.8 使用方法
9.3 监控分析
9.4 监控展示
9.5 总结
第3篇 性能篇
第10章 SQL Server性能优化方法论
10.1 性能简介
10.2 性能优化的误区
10.3 常见影响因素
10.3.1 应用程序的体系结构
10.3.2 应用程序设计
10.3.3 数据库设计
10.3.4 事务和隔离级别
10.3.5 T-SQL编码
10.3.6 硬件资源及部署
10.3.7 SQL Server配置
10.4 常规性能优化流程
10.5 扩充阅读
10.6 优化Checklist
10.6.1 数据库设计
10.6.2 语句设计
10.6.3 配置
10.7 总结
第11章 SQL Server On Linux故障侦测
11.1 SQL Server查询生命周期
11.1.1 查询优化和执行
11.1.2 小结
11.2 常用故障侦测手段
11.2.1 扩展事件
11.2.2 常规侦测手段
11.2.3 查询存储
11.3 总结
第12章 SQL Server性能优化新工具
12.1 简介
12.2 查询存储
12.2.1 查询存储中的信息
12.2.2 查询存储包含的内容
12.2.3 何时使用查询存储
12.2.4 查询存储最佳实践
12.3 自动优化
12.3.1 自动优化的工作原理
12.3.2 自动计划更正
12.3.3 自动优化的演示
12.4 自适应查询处理
12.4.1 旧式优化行为
12.4.2 新式优化行为
12.5 实时查询统计信息
12.6 总结
第13章 SQL Server索引优化
13.1 简介
13.2 索引基础
13.2.1 索引目标
13.2.2 索引组织和分类
13.2.3 索引术语
13.2.4 索引访问方式
13.2.5 SARG
13.2.6 列存储索引
13.3 统计信息基础
13.3.1 查找关于索引的信息
13.3.2 简要说明
13.3.3 常规建议
13.4 索引种类
13.4.1 堆表
13.4.2 聚集索引
13.4.3 非聚集索引
13.4.4 其他索引类型
13.4.5 索引变种
13.5 索引分析与优化
13.5.1 问题隔离
13.5.2 索引问题分类
13.5.3 索引优化
13.6 索引建议
13.6.1 索引误区
13.6.2 索引维护建议
13.7 总结
第14章 SQL Server等待信息
14.1 我们在等待什么
14.2 简介
14.2.1 等待的含义
14.2.2 需要等待信息的原因
14.2.3 保存等待信息
14.3 等待信息元数据
14.4 并行执行
14.4.1 CXPACKET
14.4.2 CXPACKET的潜在问题
14.4.3 降低CXPACKET等待
14.4.4 CXPACKET深度分析
14.4.5 CXPACKET建议
14.5 多任务等待
14.5.1 SOS_SCHEDULER_YIELD
14.5.2 多任务类型
14.5.3 多任务潜在问题
14.5.4 降低多任务等待
14.6 I/O等待
PAGEIOLATCH_XX
PAGEIOLATCH_DT/KP/SH/UP
IO_COMPLETION
ASYNC_IO_COMPLETION
14.7 备份和还原等待
降低BACKUPIO/BACKUPBUFFER等待
14.8 锁定等待
LCK_M_XXX
14.9 数据库日志等待
14.9.1 WRITELOG等待
14.9.2 降低WRITELOG等待
14.9.3 扩充说明
14.9.4 Logbuffer等待
14.9.5 Logbuffer的潜在问题
14.9.6 降低Logbuffer等待
14.10 外部资源等待
14.10.1 MSSQL_XP等待
14.10.2 降低MSSQL_XP等待
14.10.3 OLEDB链接服务器等待
14.10.4 降低OLEDB等待
14.10.5 OLEDB扩展说明
14.11 其他常见等待类型
14.11.1 RESOURCE_SEMAPHORE
14.11.2 THREADPOOL
14.11.3 PAGELATCH_XX
14.11.4 ACCESS_METHOD_XX
14.11.5 FGCB_ADD_REMOVE闩锁
14.11.6 DBCC_XX
14.11.7 Miscellaneous
14.12 案例
14.13 总结
第15章 事务与阻塞
15.1 环境准备和术语介绍
15.1.1 环境准备
15.1.2 术语
15.2 事务与ACID
15.2.1 事务隔离级别和数据一致性
15.2.2 锁类型
15.2.3 锁演示
15.3 阻塞
15.3.1 阻塞演示
15.3.2 阻塞侦测方法
15.3.3 阻塞信息实时侦测
15.3.4 阻塞信息收集
15.4 死锁
15.4.1 死锁演示
15.4.2 死锁侦测
15.4.3 降低死锁概率
15.5 锁升级
15.5.1 锁升级概述
15.5.2 锁升级侦测
15.6 事务设计建议
15.7 总结
第16章 In-Memory OLTP简介
16.1 案例演示
16.2 技术简介
16.2.1 术语简介
16.2.2 In-Memory的目标
16.2.3 体系结构
16.2.4 内存优化表索引
16.3 快速上手
16.3.1 创建数据库
16.3.2 创建表
16.3.3 Natively Compiled存储过程
16.3.4 Interpreted T-SQL
16.4 注意事项
判断是否可以迁移成In-Memory
16.5 最佳实践
16.5.1 索引优化
16.5.2 其他建议
16.6 总结
第4篇 架构篇
第17章 SQL Server On Linux高可用介绍
17.1 简介
17.1.1 使用AlwaysON的优点
17.1.2 Linux上的AlwaysON可用性组
17.1.3 环境准备
17.2 安装过程
17.2.1 创建AG
17.2.2 配置集群管理器Pacemaker
17.3 警报
17.4 读写分离
17.5 常见故障侦测手段
17.5.1 AlwaysON的常见问题
17.5.2 参考工具
17.6 总结
第5篇 案例篇
第18章 Linux运维案例
18.1 被黑
18.2 内存溢出
18.3 打开过多文件
18.4 从删库到“跑路”
18.5 总结
第19章 数据库运维案例
19.1 简介
19.2 案例分享
案例1——你的监控足够吗
案例1小结
案例2——部署的脚本检查过了吗
案例2小结
案例3——小心第三方软件的坑
案例3总结
19.3 其他案例
19.4 总结
附录
附录A SQL Server DBA及Linux管理员面试题分析
A.1 SQL Server DBA面试题分析
A.2 Linux管理员面试题分析
附录B DBA与Linux管理Checklist
B.1 运维/优化思想
B.2 DBA运维Checklist
B.2.1 每日Checklist
B.2.2 每月/每周Checklist
B.2.3 扩展阅读
B.3 Linux运维Checklist
附录C SQL Server表关联细节
C.1 嵌套循环连接
C.2 合并关联
C.3 散列关联
C.4 3种关联方式的对比
附录D Linux内核参数说明
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜