图书前言

传智播客和“黑马程序员”

江苏传智播客教育科技股份有限公司(简称传智播客)是一家专门致力于高素质软件开发人才的科技公司。“黑马程序员”是传智播客旗下的高端IT教育品牌。

“黑马程序员”的学员多为大学毕业后想从事IT行业,但各方面条件还不成熟的年轻人。“黑马程序员”的学员筛选制度非常严格,包括严格的技术测试、自学能力测试,还包括性格测试、压力测试、品德测试等,百里挑一的残酷筛选制度确保学员质量,并降低企业的用人风险。

自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,有针对性地出版了计算机系列教材60多种,制作了教学视频数十套,发表各类技术文章数百篇。

“黑马程序员”不仅斥资研发IT系列教材,还为高校师生提供以下配套学习资源与服务。

为大学生提供的配套服务: 

1. 专注辅学的 “高校学习平台”(http://yx.boxuegu.com),专业老师在线为您答疑解惑。

2. 针对高校学生在学习过程中存在的压力等问题,面向大学生量身打造了“播妞”。同学可以添加“播妞”微信: 208695827/ QQ: 3231342131,获取学习资源。

微信二维码

QQ二维码

3. 高校学生也可扫描上方右侧二维码,加入播妞粉丝团,获取最新学习资源,与播妞一起快乐学习。

为IT教师提供的配套服务: 

针对高校教学,“黑马程序员”为IT系列教材精心设计了“教案+授课资源+考试系统+题库+教学辅助案例”等系列教学资源。高校老师请登录“高校教辅平台”(http://yx.boxuegu.com)平台或关注码大牛老师微信/QQ: 2011168841,获取教材配套资源,也可以扫描下方二维码,加入专为IT教师打造的师资服务平台——“教学好助手”,获取“黑马程序员”最新教师教学辅助资源的相关动态。

MySQL数据库原理、设计与应用

MySQL是一种关系数据库管理系统,它是目前世界上流行的数据库之一,具有开源、稳定、可靠、管理方便以及支持众多系统平台等特点。MySQL广泛应用于互联网行业的数据存储,如电商、社交等网站数据的存储往往都是MySQL。

目前,从各大招聘网站的信息来看,各类计算机人才的技能要求中基本都要掌握至少一种数据库的操作和使用。其中,MySQL数据库是最常见的一种。因此,MySQL数据库一般会作为计算机相关专业需要了解或掌握的技能之一。

为什么要学习本书

本书针对想要从事与计算机相关的工作,但是没有数据库基础或基础比较薄弱的人群。从了解数据库的特点、概念、原理起步,再探讨MySQL数据库的特点和使用,尽可能地确保读者可以学以致用,具备解决实际问题的能力。

本书根据知识的难易程度,采用先易后难的方式部署教材章节顺序。在知识讲解时以环环相扣的推进方式阐述出每个名词概念的作用以及相互之间的联系;在实际操作时,从指令的语法、注意事项、案例演示等多个角度详细讲解,帮助读者提高对MySQL数据库的整体认识。

如何使用本书

本书主要讲解的内容包括数据库的理论知识,MySQL数据库安装与配置,数据库、数据表的管理,数据的增、删、改、查操作,以及用户权限、视图、存储引擎、事务、索引等,还增加了电子商务网站的数据库设计以及Linux环境的配置与部署。

本书共分为12章,各章内容简要介绍如下。

 第1章主要从数据库系统的组成、数据库技术的发展阶段、数据库的三级模式结构、数据模型与关系运算、SQL等方面介绍与数据库相关的理论。还讲解了MySQL安装与配置、常用图形化工具的使用。通过本章的学习,要求初学者对数据库在理论体系上有一个整体的认识与了解,熟练掌握MySQL数据库的安装、配置与管理。

 第2、3章主要讲解数据库的基本操作,包括数据库、数据表,数据的增、删、改、查,创建数据表时数据类型及表约束的选取,以及字符集与校对集在MySQL中的作用。此部分是所有想要使用MySQL的初学者都必须掌握的内容。

 第4章从数据库实际运用的角度,讲解项目开发中如何设计一个合理、规范和高效的数据库。主要包括数据库设计的6个阶段、涉及的相关人员、数据库设计的三范式以及数据库建模工具的使用,并以电子商务网站的数据库设计为例,演示如何根据实际需求,设计出合理的数据库。

 第5、6章主要从数据操作的角度,讲解如何快速复制表结构、添加表数据,如何对数据进行判断、分组、排序与限量,如何连接多个数据表查询数据,如何建立外键约束等。此部分是所有想要从事与数据库开发相关工作的人员必须掌握的操作内容。

 第7章从数据库安全的角度,讲解为操作数据库的用户分配权限的重要性。提供创建用户、分配密码、授予以及回收权限等具体的SQL操作。通过本章的学习,要求读者能够熟练操作数据库的同时保证数据的安全。

 第8~11章从多角度讲解数据库优化的方式,包括存储引擎的选取,视图、事务、索引、锁和预处理SQL语句的应用,函数、变量、存储过程、游标、触发器和事件等多语句的编程,分表分区技术、数据碎片整理、慢查询日志、查询缓存等常见的优化解决方案。此部分内容有助于读者循序渐进地掌握如何提升和改进MySQL的性能。

 第12章介绍在Linux系统中MySQL的安装与配置,MySQL的多实例部署、数据备份与还原,以及如何利用主从复制或组复制来提高数据库的可用性和负载能力。

在上面所列举的12章中,第1~6章讲解MySQL的基础理论与SQL指令,主要帮助初学者奠定扎实的基本功;第7~12章从安全与优化角度深层次挖掘MySQL,提升读者的MySQL运用技能,积累开发经验。

在学习过程中,读者一定要亲自动手实践本书中的案例,如果不能完全理解书中所讲知识,读者可以登录“博学谷”平台,通过平台中的教学视频进行深入学习。学习完一个知识点后,要及时在“博学谷”平台进行测试,以巩固学习内容。

另外,如果读者在理解知识点的过程中遇到困难,建议不要纠结于某个地方,可以先往后学习。通常来讲,通过逐渐地学习,前面不懂和疑惑的知识也就能够理解了。在学习的过程中,一定要多动手实践,如果在实践的过程中遇到问题,建议多思考,厘清思路,认真分析问题发生的原因,并在问题解决后总结经验。

致谢

本书的编写和整理工作由传智播客教育科技股份有限公司完成,主要参与人员有吕春林、韩冬、乔治铭、陈欢、李东超、韩振国、王金涛、孙书华等,全体人员在这近一年的编写过程中付出了很多辛勤的汗水,在此一并表示衷心的感谢。

意见反馈

尽管我们付出了最大的努力,但教材中难免会有欠妥之处,欢迎各界专家和读者朋友提出宝贵意见,我们将不胜感激。您在阅读本书时,如发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。

请发送电子邮箱至itcast_book@vip.sina.com。

黑马程序员

2019年2月于北京 前言MySQL数据库原理、设计与应用