×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787115502421
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:其他
  • 页数:473
  • 出版时间:2019-02-01
  • 条形码:9787115502421 ; 978-7-115-50242-1

本书特色

随着微软公司的开源策略逐步深化,其数据库拳头产品SQL Server不仅能运行在Windows平台上,经过一系列产品迭代,还能稳定地运行在主流的Linux平台中,并且越来越受到企业的认同。为了跟上时代的步伐,从业者有必要尽快掌握Linux上的SQL Server的使用方法。 本书属于入门级别的技术图书,主要面向对微软SQL Server有初步认识,并且希望掌握在Linux上的SQL Server运维及性能优化的数据库从业人员。当然,本书也适合在校学生学习使用,以便为后续就业打下良好的基础。 本书以实操为主,讲解了在Linux上SQL Server的安装、配置、监控及高可用搭建等内容,同时融入了作者10年工作经历中总结的Linux及SQL Server性能优化的经验,以协助读者更快入门。 本书包括基础篇、管理篇、性能篇、架构篇、案例篇共计5大板块,每个板块包括若干章内容,每章力求讲清楚、讲透一个技术点。在写作本书时,作者不仅关注本书的系统性,同时还关注本书的实用性,力求使本书能成为大家经常翻阅的工具书。书中的案例均来自实践,希望对读者学习书中的知识点及体会作者的运维、优化思想有所帮助。

内容简介

随着微软公司的开源策略逐步深化,其数据库拳头产品SQL Server不仅能运行在Windows平台上,经过一系列产品迭代,还能稳定地运行在主流的Linux平台中,并且越来越受到企业的认同。为了跟上时代的步伐,从业者有必要尽快掌握Linux上的SQL Server的使用方法。 本书属于入门级别的技术图书,主要面向对微软SQL Server有初步认识,并且希望掌握在Linux上的SQL Server运维及性能优化的数据库从业人员。当然,本书也适合在校学生学习使用,以便为后续就业打下良好的基础。 本书以实操为主,讲解了在Linux上SQL Server的安装、配置、监控及高可用搭建等内容,同时融入了作者10年工作经历中总结的Linux及SQL Server性能优化的经验,以协助读者更快入门。 本书包括基础篇、管理篇、性能篇、架构篇、案例篇共计5大板块,每个板块包括若干章内容,每章力求讲清楚、讲透一个技术点。在写作本书时,作者不仅关注本书的系统性,同时还关注本书的实用性,力求使本书能成为大家经常翻阅的工具书。书中的案例均来自实践,希望对读者学习书中的知识点及体会作者的运维、优化思想有所帮助。

目录

第 1篇 基础篇

第 1章 SQL Server On Linux简介 2

1.1 为何选择Linux平台的SQL Server 2

1.2 SQL Server关键组件简介 4

1.3 SQL Server On Linux新特性简介 6

1.3.1 数据库引擎 6

1.3.2 SQL Server Integration Services 8

1.3.3 机器学习 8

1.3.4 兼容Linux平台 9

1.3.5 其他 9

1.4 SQL Server On Linux新玩法 9

1.5 SQL Platform Abstraction Layer 10

1.5.1 PAL简介 10

1.5.2 进程模型 12

1.5.3 小结 12

1.6 本书结构 13

1.7 总结 14

第 2章 Linux基础及安装部署 15

2.1 背景介绍 15

2.2 前期规划 17

2.3 基础框架 19

2.4 部署 20

2.4.1 服务器命名及配置 21

2.4.2 安装过程 21

2.5 预配置 43

2.5.1 查看当前IP地址 44

2.5.2 检查网络连通性 45

2.5.3 远程登录 46

2.6 总结 48

第3章 安装配置SQL Server On Linux 49

3.1 安装前的准备工作 49

3.2 安装攻略 50

3.2.1 操作系统环境检查 51

3.2.2 安装SQL Server 53

3.2.3 验证安装 55

3.2.4 安装SQL Server命令行工具 56

3.2.5 尝试使用 58

3.3 环境配置 59

3.3.1 更新/卸载/重装SQL Server 60

3.3.2 检查配置存储库信息 65

3.3.3 安装SQL Server代理 67

3.3.4 SQL Server实例配置 68

3.4 注意事项 78

3.5 安装示例数据库 79

3.5.1 下载备份文件 79

3.5.2 移动文件 82

3.6 总结 83



第 2篇 管理篇

第4章 Linux基础运维 86

4.1 常用指令 86

4.1.1 文件或目录 86

4.1.2 编辑或查看指令 88

4.1.3 网络相关 95

4.1.4 系统层面 98

4.1.5 其他杂项 104

4.2 基础运维 106

4.2.1 服务部署 106

4.2.2 指标 115

4.2.3 安全 122

4.2.4 调优 130

4.2.5 Shell入门 135

4.3 总结 143

第5章 Linux基础监控 144

5.1 分布式监控系统Zabbix 145

5.1.1 安装服务端 145

5.1.2 安装配置客户端 149

5.1.3 告警设置 154

5.2 Grafana展现 162

5.2.1 部署 162

5.2.2 数据源选择 163

5.2.3 丰富的面板 167

5.2.4 定制 170

5.3 SQL Server监控 175

5.4 总结 180

第6章 服务及空间管理 181

6.1 服务器的服务及空间管理 181

6.1.1 Windows服务及空间管理 181

6.1.2 Linux服务及空间管理 184

6.1.3 小结 187

6.2 SQL Server服务及空间管理 188

6.2.1 SQL Server服务管理 188

6.2.2 SQL Server空间管理 191

6.3 SQL On Linux备份还原 198

6.3.1 数据库备份 199

6.3.2 数据库还原 203

6.3.3 数据库备份还原新用法 207

6.4 总结 207

第7章 SQL Server On Linux数据库安全 208

7.1 安全概念 208

7.2 始终加密 209

7.2.1 AE简介 209

7.2.2 AE演示 209

7.2.3 创建密钥 214

7.2.4 小结 216

7.3 动态数据屏蔽 216

7.3.1 DDM简介 217

7.3.2 DDM屏蔽规则 217

7.3.3 DDM演示 217

7.3.4 DDM性能与安全 219

7.4 行级安全性 221

7.4.1 RLS演示 221

7.4.2 小结 223

7.5 时态表 223

7.5.1 SQL Server时态表 224

7.5.2 SQL Server时态表的演示 224

7.6 总结 228

第8章 Linux自动化运维演示 229

8.1 expect 229

8.1.1 Shell中的expect 229

8.1.2 Python模块中的pexpect 231

8.1.3 Python模块中的paramiko 233

8.1.4 小结 234

8.2 Ansible入门 234

8.2.1 安装部署 234

8.2.2 基本操作 237

8.2.3 进阶 238

8.2.4 架构图及架构说明 239

8.3 总结 240

第9章 数据库监控 241

9.1 监控理论 241

9.1.1 监控的内容和目的 242

9.1.2 监控的方法/流程 244

9.1.3 监控的意义 245

9.1.4 小结 246

9.2 监控工具 246

9.2.1 SQL跟踪 247

9.2.2 扩展事件 248

9.2.3 动态管理视图/动态管理函数 248

9.2.4 性能计数器及数据收集器集 248

9.2.5 SQL Server新工具 254

9.2.6 专家工具 255

9.2.7 传统工具 257

9.2.8 使用方法 257

9.3 监控分析 258

9.4 监控展示 258

9.5 总结 260



第3篇 性能篇

第 10章 SQL Server性能优化方法论 262

10.1 性能简介 262

10.2 性能优化的误区 263

10.3 常见影响因素 265

10.3.1 应用程序的体系结构 265

10.3.2 应用程序设计 265

10.3.3 数据库设计 266

10.3.4 事务和隔离级别 266

10.3.5 T-SQL编码 266

10.3.6 硬件资源及部署 267

10.3.7 SQL Server配置 267

10.4 常规性能优化流程 269

10.5 扩充阅读 270

10.6 优化Checklist 271

10.6.1 数据库设计 271

10.6.2 语句设计 271

10.6.3 配置 272

10.7 总结 272

第 11章 SQL Server On Linux故障侦测 273

11.1 SQL Server查询生命周期 273

11.1.1 查询优化和执行 273

11.1.2 小结 282

11.2 常用故障侦测手段 282

11.2.1 扩展事件 282

11.2.2 常规侦测手段 288

11.2.3 查询存储 289

11.3 总结 294

第 12章 SQL Server性能优化新工具 295

12.1 简介 295

12.2 查询存储 295

12.2.1 查询存储中的信息 296

12.2.2 查询存储包含的内容 296

12.2.3 何时使用查询存储 299

12.2.4 查询存储*佳实践 302

12.3 自动优化 303

12.3.1 自动优化的工作原理 303

12.3.2 自动计划更正 304

12.3.3 自动优化的演示 304

12.4 自适应查询处理 308

12.4.1 旧式优化行为 308

12.4.2 新式优化行为 308

12.5 实时查询统计信息 316

12.6 总结 318

第 13章 SQL Server索引优化 319

13.1 简介 319

13.2 索引基础 320

13.2.1 索引目标 320

13.2.2 索引组织和分类 320

13.2.3 索引术语 322

13.2.4 索引访问方式 322

13.2.5 SARG 323

13.2.6 列存储索引 324

13.3 统计信息基础 329

13.3.1 查找关于索引的信息 329

13.3.2 简要说明 331

13.3.3 常规建议 331

13.4 索引种类 332

13.4.1 堆表 332

13.4.2 聚集索引 332

13.4.3 非聚集索引 332

13.4.4 其他索引类型 332

13.4.5 索引变种 332

13.5 索引分析与优化 333

13.5.1 问题隔离 333

13.5.2 索引问题分类 334

13.5.3 索引优化 335

13.6 索引建议 346

13.6.1 索引误区 346

13.6.2 索引维护建议 347

13.7 总结 347

第 14章 SQL Server等待信息 348

14.1 我们在等待什么 348

14.2 简介 349

14.2.1 等待的含义 349

14.2.2 需要等待信息的原因 350

14.2.3 保存等待信息 350

14.3 等待信息元数据 351

14.4 并行执行 351

14.4.1 CXPACKET 352

14.4.2 CXPACKET的潜在问题 353

14.4.3 降低CXPACKET等待 353

14.4.4 CXPACKET深度分析 354

14.4.5 CXPACKET建议 354

14.5 多任务等待 355

14.5.1 SOS_SCHEDULER_YIELD 355

14.5.2 多任务类型 357

14.5.3 多任务潜在问题 358

14.5.4 降低多任务等待 358

14.6 I/O等待 358

14.7 备份和还原等待 362

14.8 锁定等待 362

14.9 数据库日志等待 364

14.9.1 WRITELOG等待 364

14.9.2 降低WRITELOG等待 364

14.9.3 扩充说明 364

14.9.4 Logbuffer等待 365

14.9.5 Logbuffer的潜在问题 365

14.9.6 降低Logbuffer等待 366

14.10 外部资源等待 366

14.10.1 MSSQL_XP等待 366

14.10.2 降低MSSQL_XP等待 366

14.10.3 OLEDB链接服务器等待 366

14.10.4 降低OLEDB等待 366

14.10.5 OLEDB扩展说明 367

14.11 其他常见等待类型 367

14.11.1 RESOURCE_SEMAPHORE 367

14.11.2 THREADPOOL 367

14.11.3 PAGELATCH_XX 367

14.11.4 ACCESS_METHOD_XX 367

14.11.5 FGCB_ADD_REMOVE闩锁 368

14.11.6 DBCC_XX 368

14.11.7 Miscellaneous 368

14.12 案例 368

14.13 总结 369

第 15章 事务与阻塞 370

15.1 环境准备和术语介绍 370

15.1.1 环境准备 370

15.1.2 术语 371

15.2 事务与ACID 371

15.2.1 事务隔离级别和数据一致性 372

15.2.2 锁类型 373

15.2.3 锁演示 374

15.3 阻塞 378

15.3.1 阻塞演示 378

15.3.2 阻塞侦测方法 378

15.3.3 阻塞信息实时侦测 379

15.3.4 阻塞信息收集 383

15.4 死锁 385

15.4.1 死锁演示 386

15.4.2 死锁侦测 388

15.4.3 降低死锁概率 389

15.5 锁升级 389

15.5.1 锁升级概述 389

15.5.2 锁升级侦测 390

15.6 事务设计建议 392

15.7 总结 394

第 16章 In-Memory OLTP简介 395

16.1 案例演示 395

16.2 技术简介 398

16.2.1 术语简介 398

16.2.2 In-Memory的目标 398

16.2.3 体系结构 399

16.2.4 内存优化表索引 400

16.3 快速上手 401

16.3.1 创建数据库 401

16.3.2 创建表 402

16.3.3 Natively Compiled存储过程 403

16.3.4 Interpreted T-SQL 404

16.4 注意事项 405

16.5 *佳实践 407

16.5.1 索引优化 407

16.5.2 其他建议 408

16.6 总结 408

第4篇 架构篇

第 17章 SQL Server On Linux高可用介绍 410

17.1 简介 410

17.1.1 使用AlwaysON的优点 410

17.1.2 Linux上的AlwaysON可用性组 411

17.1.3 环境准备 412

17.2 安装过程 413

17.2.1 创建AG 413

17.2.2 配置集群管理器Pacemaker 422

17.3 警报 427

17.4 读写分离 432

17.5 常见故障侦测手段 435

17.5.1 AlwaysON的常见问题 435

17.5.2 参考工具 436

17.6 总结 438



第5篇 案例篇

第 18章 Linux运维案例 440

18.1 被黑 440

18.2 内存溢出 445

18.3 打开过多文件 446

18.4 从删库到“跑路” 448

18.5 总结 450

第 19章 数据库运维案例 451

19.1 简介 451

19.2 案例分享 451

19.3 其他案例 456

19.4 总结 458

附录

附录A SQL Server DBA及Linux管理员面试题分析 460

附录B DBA与Linux管理Checklist 464

附录C SQL Server表关联细节 468

附录D Linux内核参数说明 471



展开全部

作者简介

黄钊吉 10年SQL Server开发和运维经验,从事过电子商务网站后台开发、银行绩效系统数据库开发,以及服饰类ERP系统、信用卡系统(基于AWS)和大型电商仓储系统数据库的运维工作。6届微软数据平台MVP(2013-2018),前CSDN论坛SQL Server大版版主,CSDN博客专家,博客访问量超过228万。个人创作图书《SQL Server性能优化与管理的艺术》,与人联合翻译《Windows PowerShell实战指南(第2版)》。拥有MCTIP Database Administrator 2008、MCSE Data Management and Analytics等多个技术认证证书。 熊章立 9年Linux和MySQL专职运维经验,曾独立设计运维自动化平台方案并负责实施,拥有高达900台服务器的运维经验,从事过汽车租赁、游戏、物流等多个行业,目前是WMS、OMS物流行业的DBA,负责数据库运维管理、设计及基于Python开发相关的功能组件,并关注第三方开源监控软件的落地及后续开发工作。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航