第8章 MYSQL服务器
- 格式:ppt
- 大小:94.50 KB
- 文档页数:9


酒店预订系统操作与管理作业指导书第1章酒店预订系统概述 (3)1.1 酒店预订系统简介 (4)1.2 酒店预订系统的发展历程 (4)1.3 酒店预订系统的重要性 (4)第2章酒店预订系统架构 (5)2.1 系统架构设计 (5)2.2 系统功能模块划分 (5)2.3 技术选型与平台搭建 (5)第3章酒店信息管理 (6)3.1 酒店基本信息管理 (6)3.1.1 酒店名称与标识 (6)3.1.2 酒店地址与联系方式 (6)3.1.3 酒店简介 (6)3.1.4 星级与价格 (6)3.2 酒店设施信息管理 (6)3.2.1 房间设施 (6)3.2.2 公共区域设施 (6)3.2.3 酒店服务 (7)3.3 酒店政策信息管理 (7)3.3.1 预订政策 (7)3.3.2 入住与退房政策 (7)3.3.3 付款政策 (7)3.3.4 儿童与宠物政策 (7)3.3.5 禁烟政策 (7)3.3.6 其他政策 (7)第4章客房信息管理 (7)4.1 客房类型管理 (7)4.1.1 添加客房类型 (7)4.1.2 修改客房类型 (8)4.1.3 删除客房类型 (8)4.2 客房价格管理 (8)4.2.1 设置客房价格 (8)4.2.2 修改客房价格 (8)4.2.3 删除客房价格 (8)4.3 客房状态管理 (9)4.3.1 更改客房状态 (9)4.3.2 查询客房状态 (9)4.3.3 客房状态预警 (9)第5章预订管理 (9)5.1 客户预订流程 (9)5.1.1 查询空房 (9)5.1.3 填写客户信息 (9)5.1.4 确认预订 (9)5.1.5 支付定金 (9)5.1.6 预订成功 (10)5.2 预订信息录入与修改 (10)5.2.1 录入预订信息 (10)5.2.2 修改预订信息 (10)5.2.3 修改权限管理 (10)5.3 预订状态跟踪 (10)5.3.1 实时更新预订状态 (10)5.3.2 预订状态查询 (10)5.3.3 预订提醒功能 (10)5.3.4 预订异常处理 (10)第6章入住与离店管理 (10)6.1 入住流程管理 (10)6.1.1 客人到达接待台 (10)6.1.2 预订信息核对 (10)6.1.3 客人身份验证 (11)6.1.4 办理入住手续 (11)6.1.5 发放房卡 (11)6.1.6 客人满意度调查 (11)6.2 离店流程管理 (11)6.2.1 客人退房 (11)6.2.2 行李寄存 (11)6.2.3 结算房费 (11)6.2.4 收集意见 (11)6.2.5 送别客人 (11)6.3 跨夜房费计算 (12)6.3.1 跨夜房费计算规则 (12)6.3.2 跨夜房费计算方法 (12)6.3.3 跨夜房费优惠政策 (12)第7章账务管理 (12)7.1 账单与打印 (12)7.1.1 账单 (12)7.1.2 账单打印 (12)7.2 费用结算 (12)7.2.1 结算方式 (12)7.2.2 结算流程 (13)7.3 信用额度与预授权管理 (13)7.3.1 信用额度管理 (13)7.3.2 预授权管理 (13)第8章客户服务与关系管理 (13)8.1 客户信息管理 (13)8.1.2 客户信息存储与更新 (13)8.1.3 客户信息利用 (13)8.2 客户投诉处理 (14)8.2.1 投诉接收 (14)8.2.2 投诉分类与评估 (14)8.2.3 投诉处理 (14)8.2.4 投诉跟踪与回访 (14)8.3 客户满意度调查与分析 (14)8.3.1 调查方法 (14)8.3.2 调查内容 (14)8.3.3 数据分析 (14)8.3.4 改进措施 (14)第9章系统安全管理 (14)9.1 数据安全保护 (14)9.1.1 数据备份 (14)9.1.2 数据加密 (15)9.1.3 防止数据泄露 (15)9.2 用户权限管理 (15)9.2.1 用户角色划分 (15)9.2.2 权限分配 (15)9.2.3 权限审计 (15)9.3 系统日志与审计 (15)9.3.1 系统日志记录 (15)9.3.2 审计分析 (15)9.3.3 日志存储与保护 (15)第10章系统维护与优化 (15)10.1 系统备份与恢复 (16)10.1.1 备份策略 (16)10.1.2 备份操作流程 (16)10.1.3 恢复操作流程 (16)10.2 系统功能监控 (16)10.2.1 功能指标 (16)10.2.2 监控工具与方法 (16)10.2.3 功能分析 (16)10.3 系统升级与迭代建议 (16)10.3.1 系统升级策略 (16)10.3.2 系统迭代建议 (16)10.3.3 升级与迭代实施 (16)第1章酒店预订系统概述1.1 酒店预订系统简介酒店预订系统是一种基于计算机技术和网络通信技术的服务系统,旨在为用户提供便捷、高效的酒店预订服务。
MySQL是怎样运行的从根儿上理解MySQL楔子——阅读前必看 1•1章装作自己是个小白——初识MySQL 3•1.1 MySQL的客户端/服务器架构3•1.2 MySQL的安装3•1.3 启动MySQL服务器程序5•1.3.1 在类UNIX系统中启动服务器程序5•1.3.2 在Windows系统中启动服务器程序6•1.4 启动MySQL客户端程序7•1.5 客户端与服务器连接的过程10•1.5.1 TCP/IP 10•1.5.2 命名管道和共享内存10•1.5.3 UNIX域套接字11•1.6 服务器处理客户端请求11•1.6.1 连接管理12•1.6.2 解析与优化12•1.6.3 存储引擎14•1.7 常用存储引擎14•1.8 关于存储引擎的一些操作16•1.8.2 设置表的存储引擎16•1.9 总结17•2.1 启动选项和配置文件19•2.1.1 在命令行上使用选项19•2.1.2 配置文件中使用选项21•2.2 系统变量27•2.2.1 系统变量简介27•2.2.2 查看系统变量27•2.2.3 设置系统变量28•2.3 状态变量32•2.4 总结32•字符集和比较规则34•3.1 字符集和比较规则简介34•3.1.1 字符集简介34•3.1.2 比较规则简介34•3.1.3 一些重要的字符集35•3.2 MySQL中支持的字符集和比较规则36•3.2.1 MySQL中的utf8和utf8mb4 36•3.2.2 字符集的查看36•3.2.3 比较规则的查看38•3.3 字符集和比较规则的应用39•3.3.1 各级别的字符集和比较规则39•3.3.3 比较规则的应用52•3.4 总结53•4.1 准备工作55•4.2 InnoDB页简介55•4.3 InnoDB行格式56•4.3.1 指定行格式的语法56•4.3.2 COMPACT行格式56•4.3.3 REDUNDANT行格式64•4.3.4 溢出列68•4.3.5 DYNAMIC行格式和COMPRESSED行格式70•4.4 总结71•5.1 不同类型的页简介72•5.2 数据页结构快览72•5.3 记录在页中的存储73•5.4 Page Directory(页目录)80•5.5 Page Header(页面头部)85•5.6 (文件头部)86•5.7 (文件尾部)88•5.8 总结88•快速查询的秘籍——B+树索引90•6.1 没有索引时进行查找90•6.1.1 在一个页中查找90•6.1.2 在很多页中查找91•6.2 索引91•6.2.1 一个简单的索引方案92•6.2.2 InnoDB中的索引方案94•6.2.3 InnoDB中B+树索引的注意事项102•6.2.4 MyISAM中的索引方案简介104•6.2.5 MySQL中创建和删除索引的语句105•6.3 总结106•B+树索引的使用107•7.1 B+树索引示意图的简化107•7.2 索引的代价109•7.3 应用B+树索引110•7.3.1 扫描区间和边界条件110•7.3.2 索引用于排序122•7.3.3 索引用于分组125•7.4 回表的代价126•7.5 更好地创建和使用索引127•7.5.2 考虑索引列中不重复值的个数127•7.5.3 索引列的类型尽量小127•7.5.4 为列前缀建立索引128•7.5.5 覆盖索引129•7.5.8 冗余和重复索引130•7.6 总结131•数据的家——MySQL的数据目录132•8.1 数据库和文件系统的关系132•8.2 MySQL数据目录132•8.2.1 数据目录和安装目录的区别132•8.2.2 如何确定MySQL中的数据目录132•8.3 数据目录的结构133•8.3.1 数据库在文件系统中的表示133•8.3.2 表在文件系统中的表示134•8.3.3 其他的文件137•8.4 文件系统对数据库的影响137•8.5 MySQL系统数据库简介138•8.6 总结138•9.1 回忆一些旧知识140•9.1.1 页面类型140•9.1.2 页面通用部分141•9.2 独立表空间结构142•9.2.1 区的概念142•9.2.2 段的概念144•9.2.3 区的分类145•9.2.4 段的结构149•9.2.5 各类型页面详细情况150•9.2.6 Segment Header结构的运用156•9.2.7 真实表空间对应的文件大小157•9.3 系统表空间158•9.4 总结164•10.1 访问方法的概念167•10.2 const 167•10.3 ref 168•10.4 ref_or_null 170•10.5 range 171•10.6 index 171•10.7 all 172•10.8 注意事项172•10.8.1 重温二级索引+回表172•10.8.2 索引合并173•10.9 总结177•11.1 连接简介178•11.1.1 连接的本质178•11.1.2 连接过程简介180•11.1.3 内连接和外连接181•11.2 连接的原理185•11.2.1 嵌套循环连接186•11.2.2 使用索引加快连接速度187•11.2.3 基于块的嵌套循环连接188•11.3 总结189•12.1 什么是成本190•12.2 单表查询的成本190•12.2.1 准备工作190•12.2.2 基于成本的优化步骤191•12.2.3 基于索引统计数据的成本计算198•12.3 连接查询的成本201•12.3.1 准备工作201•12.3.2 条件过滤(Condition Filtering)201•12.3.3 两表连接的成本分析203•12.3.4 多表连接的成本分析205•12.4 调节成本常数206•12.4.1 mysql.server_cost表206•12.4.2 mysql.engine_cost表208•12.5 总结209•13.1 统计数据的存储方式210•13.2 基于磁盘的永久性统计数据211•13.2.1 innodb_table_stats 211•13.2.2 innodb_index_stats 214•13.2.3 定期更新统计数据215•13.3 基于内存的非永久性统计数据217•13.4 innodb_stats_method的使用217•13.5 总结219•14.1 条件化简220•14.1.1 移除不必要的括号220•14.1.2 常量传递220•14.1.3 移除没用的条件221•14.1.4 表达式计算221•14.1.5 HAVING子句和WHERE子句的合并221•14.1.6 常量表检测221•14.2 外连接消除222•14.3 子查询优化224•14.3.1 子查询语法225•14.3.2 子查询在MySQL中是怎么执行的230•14.4 总结244•15.1 执行计划输出中各列详解246•15.1.1 table 246•15.1.2 id 247•15.1.3 select_type 249•15.1.4 partitions 252•15.1.5 type 252•15.1.6 possible_keys和key 255•15.1.7 key_len 256•15.1.8 ref 258•15.1.9 rows 258•15.1.10 filtered 259•15.1.11 Extra 260•15.2 JSON格式的执行计划266•15.3 Extented EXPLAIN 268•15.4 总结269•16.1 optimizer trace简介270•17.1 缓存的重要性278•17.2 InnoDB的Buffer Pool 278•17.2.1 啥是Buffer Pool 278•17.2.2 Buffer Pool内部组成278•17.2.3 free链表的管理279•17.2.4 缓冲页的哈希处理280•17.2.5 flush链表的管理281•17.2.6 LRU链表的管理282•17.2.7 其他的一些链表286•17.2.8 刷新脏页到磁盘287•17.2.9 多个Buffer Pool实例287•17.2.10 innodb_buffer_pool_chunk_size 288•17.2.11 配置Buffer Pool时的注意事项289•17.2.12 查看Buffer Pool的状态信息291•17.3 总结293•18章从猫爷借钱说起——事务简介294•18.1 事务的起源294•18.1.1 原子性(Atomicity)295•18.1.2 隔离性(Isolation)295•18.1.3 一致性(Consistency)296•18.1.4 持久性(Durability)298•18.2 事务的概念298•18.3 MySQL中事务的语法300•18.3.1 开启事务300•18.3.2 提交事务301•18.3.3 手动中止事务302•18.3.4 支持事务的存储引擎302•18.3.5 自动提交303•18.3.6 隐式提交304•18.3.7 保存点305•18.4 总结307•19.1 事先说明308•19.2 redo日志是啥308•19.3 redo日志格式309•19.3.1 简单的redo日志类型309•19.3.2 复杂一些的redo日志类型311•19.3.3 redo日志格式小结314•19.4 Mini-Transaction 315•19.4.1 以组的形式写入redo日志315•19.4.2 Mini-Transaction的概念319•19.5 redo日志的写入过程319•19.5.1 redo log block 319•19.5.2 redo日志缓冲区320•19.5.3 redo日志写入log buffer 321•19.6 redo日志文件323•19.6.1 redo日志刷盘时机323•19.6.2 redo日志文件组323•19.6.3 redo日志文件格式324•19.7 log sequence number 327•19.7.1 flushed_to_disk_lsn 328•19.7.3 flush链表中的lsn 330•19.8 checkpoint 332•19.10 查看系统中的各种lsn值335•19.11 innodb_flush_log_at_trx_mit的用法336•19.12 崩溃恢复336•19.12.1 确定恢复的起点337•19.12.2 确定恢复的终点337•19.12.3 怎么恢复337•19.14 总结340•20章后悔了怎么办——undo日志342•20.1 事务回滚的需求342•20.2 事务id 343•20.2.1 分配事务id的时机343•20.2.2 事务id是怎么生成的343•20.2.3 trx_id隐藏列344•20.3 undo日志的格式344•20.3.1 INSERT操作对应的undo日志345•20.3.2 DELETE操作对应的undo日志347•20.3.3 UPDATE操作对应的undo日志353•20.3.4 增删改操作对二级索引的影响357•20.4 通用链表结构357•20.5 FIL_PAGE_UNDO_LOG页面359•20.6 Undo页面链表361•20.6.1 单个事务中的Undo页面链表361•20.6.2 多个事务中的Undo页面链表362•20.7 undo日志具体写入过程363•20.7.1 段的概念363•20.7.2 Undo Log Segment Header 364•20.7.3 Undo Log Header 365•20.7.4 小结367•20.8 重用Undo页面368•20.9 回滚段369•20.9.1 回滚段的概念369•20.9.2 从回滚段中申请Undo页面链表371•20.9.3 多个回滚段372•20.9.4 回滚段的分类374•20.9.5 roll_pointer的组成374•20.10 回滚段相关配置376•20.10.1 配置回滚段数量376•20.10.2 配置undo表空间376•20.11 undo日志在崩溃恢复时的作用377•20.12 总结377•21.1 事前准备379•21.2 事务隔离级别379•21.2.2 SQL标准中的4种隔离级别385•21.2.3 MySQL中支持的4种隔离级别386•21.3 MVCC原理388•21.3.1 版本链388•21.3.2 ReadView 390•21.3.3 二级索引与MVCC 397•21.3.4 MVCC小结397•21.4 关于purge 398•21.5 总结399•22章工作面试老大难——锁401•22.1.1 写-写情况401•22.1.2 读-写或写-读情况403•22.1.3 一致性读404•22.1.4 锁定读404•22.1.5 写操作405•22.2 多粒度锁406•22.3 MySQL中的行锁和表锁408•22.3.1 其他存储引擎中的锁408•22.3.2 InnoDB存储引擎中的锁409•22.3.3 InnoDB锁的内存结构417•22.4 语句加锁分析423•22.4.1 普通的SELECT语句423•22.4.2 锁定读的语句424•22.4.3 半一致性读的语句441•22.4.4 INSERT语句442•22.5 查看事务加锁情况444•22.6 死锁450•22.7 总结454•参考资料455。
第1章概述a)背景b)数据库的选择c)MySQL的架构第2章MySQL架构介绍第3章MySQL安装a)XP下安装b)Linux下安装和参数配置c)可视化工具的安装navicat第4章Navicat的使用第5章MySQL的管理维护a)库连接管理b)表空间管理c)用户及权限管理d)操作表、视图、触发器e)从oracle到MySQLf)从MySQL到oracleg)冷备份和逻辑备份h)时间点恢复和位置恢复第6章SQL的使用a)增删改查的SQLb)常用的数据类型c)常用的Mysql函数介绍第7章技巧篇a)索引的使用b)锁的使用c)Mysql事务控制d)自增列的使用e)Mysql安全f)安装和使用时的常见错误处理g)字符集的管理h)SQL的优化第8章结合UniEAP使用a)数据源管理b)开发注意事项c)常见数据类型的增删改查方法第1章概述a)背景MySQL是一个开源免费的关系型数据库存储引擎。
在MySQL经历了2008年Sun的收购和2009年Oracle收购Sun的过程中,基本处于停滞发展的情况。
目前,使用的常用的版本,也是比较稳定的版本是5.5.28.不过,从目前各个中小型网站的使用情况看,以及企业级的BS等应用很多在使用MySQL。
从部门开发情况看,也有少许项目是使用MySQL开发,比如个住项目。
b)数据库的选择小型数据库:access、foxbase;中型数据库:sql server 、mysql、informix;大型数据库:db2、Oracle、Sybase。
微软:sql server 和access;IBM公司:db2,informix;美国Sybase公司:Sybase;美国oracle公司:oracle,MySQL;选择数据主要考虑以下几点:项目的大小、架构、符合不符合技术路线,以及客户的原因。
第2章MySQL架构介绍1.逻辑架构最上面一层不是MySQL特有的,所有基于网络的C/S或者B/S的网络应用程序都应该包括连接处理、认证、安全管理等。