MySQL 数据库介绍

数据库背景知识 • 数据+库:将信息(数据)按照计算机可识别的方式规则存放在磁盘 库中,并提供一系列可供读写的方式 • 相比较于磁盘文件,数据库最大的特色是提供了很是灵活的接口、 方式能够获取完整数据或者特定部分数据的方式(SQL);并提 供了一套完整管理数据的方法(存储结构,备份恢复等) • 为何要存储数据? • 数据要被随时随地反复使用,不是一次性消耗品 • 数据要被记录,防止遗忘 数据库背景知识 试想一个学校的选课系统,其实就是程序与后台数据库之间的数据 交互。后台数据库负责记录每一个课程信息,学生信息,学生与课程 的对应关系等。 • 学生登陆本身的帐号:程序提取后台数据库中登陆学生对应学号的全部信息,并按照 必定的格式展现到电脑上 • 学生选定课程:程序将电脑上的学生添加的信息按照必定的格式记录到数据库中的课 程 数据库在企业中的使用 • 企业不管大小,其平常经营活动都会涉及到数据存储,尤为是互 联网公司,都会选择数据库做为存储数据的重要甚至惟一渠道, 这些数据涵盖方方面面: • 客户数据 • 员工数据 • 财务数据 • 交易数据 • 物流数据 • 运营数据 • 等等 数据库发展历史 • 1964年,美国通用电气开发出第一套数据库系统 • 1970年,提出关系型数据库模型 • 1974年,辩论及研讨,确立关系数据库为现代数据库产品的主流 • 1974年,第一次提出SQL(Structured Query Language)概念 • 1986年,SQL正式成为关系型数据库的标准语言,简称SQL-86标 准 • SQL语言陆续经历了SQL-89标准和SQL-92标准,以及目前的SQL3标 准 • 互联网web2.0时代以后,非关系型数据库陆续火热起来 常见的数据库类型 • 关系型数据库类型 • 目前市场上占主要份额的数据库类型,以二维表格(行和列,相似excel)来存 储数据,表格与表格之间的数据关系用字段引用来表示 • Oracle, SQL Server, MySQL, DB2等 • 非关系型数据库类型 • 出现时间较短,抛弃关系型死板的数据存储方式,提供了更加灵活的方式 • 面向高性能并发读写的key-value数据库: key-value数据库的主要特色即便具备极高的并发读写性能,Redis,Tokyo Cabinet,Flare就是 这类的表明 • 面向海量数据访问的文档型数据库: 这类数据库的特色是,能够在海量的数据中快速的查询数据,典型表明为MongoDB以及 CouchDB • 面向可扩展性的分布式数据库: 这类数据库想解决的问题就是传统数据库存在可扩展性上的缺陷,典型表明为Cassandra等 数据库类型在企业中的选择 • 经常使用数据会存放在关系型数据库中 • 逐步考虑使用非关系型数据库做为部分业务的支持 •但, 关系型数据库仍是主流 MySQL数据库介绍 • MySQL是一种开放源代码的关系型数据库管理系统(RDBMS), MySQL数据库系统使用最经常使用的数据库管理语言--结构化查询语 言(SQL)进行数据库管理。 • MySQL的历史最先能够追溯到1979年,那时Oracle也才刚刚开始, 微软的SQL Server影子都没有。 • 在2008年1月16号 MySQL被Sun公司收购。 • 2009年,SUN又被Oracle收购 • 体积小、速度快、整体拥有成本低,尤为是开放源码这一特色, 使得许多企业选择了MySQL做为数据库 数据库工程师在通常企业中的职责 • 数据库开发工程师 a. 负责公司业务数据库系统的模型设计,表结构设计 b. 负责数据处理中的语句实现,存储过程逻辑实现 c. 负责指导开发人员对语句的性能优化和指导 • 数据库管理员(database administrator、DBA) a. 负责公司业务数据库系统的部署实现 b. 负责数据库系统的高可用性,备份恢复,性能调忧,监控等实现 • 数据库架构师 a. 统筹公司业务数据库系统各个层面的技术实现 b. 指导数据库开发工程师和管理员在各个环节的工做,提供更优的方案 数据库工程师在企业中的定位 • 从职能角度 • 数据俨然已经成为全部企业的重要资产,互联网企业更是将数据做为自 己的生命线,试想一下百度搜索没有后台数据、阿里淘宝没有店铺和商 品数据会怎样。一个优秀的数据库工程师一般掌握着企业的核心价值, 保障数据服务持续正常运转,因此在公司地位相对比较高。责任越大, 地位越高,薪资越高 • 高速社会要求高速的系统,如今的系统性能瓶颈已经不是传统的硬件瓶 颈,而是后台程序和数据处理的瓶颈,优秀的数据库工程师每每能解决 其性能问题,从而是系统运转性能提高几十倍甚至百倍 • 从竞争角度 • 一般数据库工程师在企业中的人数相比其余技术工程师相对较少(1:10 或更高),“物以稀为贵”,并且一般薪资高低是由你在公司是否可被 替代所决定,同工种下人数较少意味着不可替代 数据库工程师的薪资状况分析 数据库工程师的薪资状况分析 数据库工程师的薪资状况分析 数据库工程师的薪资状况分析 数据库工程师的薪资状况分析 数据库工程师的薪资对比 • 一个工程师的双倍薪水的真实案例 数据库工程师职业的优劣势 • 优点: • “不吃青春饭,越老越吃香”:更加看重工做经验,生命周期长 • 公司地位相对较高,领导比较看重,薪资也相对较高 • 劣势: • 和运维体系有交叉,因此会比较辛苦,须要随时待命,防止数据库出问 题 • 同一个公司数据库岗位人数较少,会比较孤独 通用数据库对象中英文介绍 • 数据data • 指对客观事件进行记录并能够鉴别的符号,在计算机系统中存储为能够被识别的信息 • 数据库database • 存放具体数据的最大的逻辑对象,一般按需求将同一项目所属的数据统一放在一个数 据库中,也能够建立多个数据库 • 数据库管理系统dbms(database management system) • 是一种操纵和管理数据库的大型软件,用于创建、使用和维护数据库,简称DBMS,目 前分为关系型和非关系型数据库管理系统两种 • 关系型数据库管理系统rdbms(relational dbms) • 是以关系模型为基础创建的数据库管理软件,典型表明为Oracle, MySQL, SQL Server等 • 实例instance • 数据库管理软件安装以后在服务器上启动起来就称为启动了一个实例,一般一个服务 器上只启动一个数据库实例,但也有启动多个实例的,一个实例能够包含多个数据库 • 数据库对象database object • 数据库中建立的用来存储,操做数据的对象,好比表,字段,索引,存储过程等 通用数据库对象中英文介绍 • 表table • 数据库对象中的一种,用来存储相同属性的数据,相似Excel表格的sheet • 字段field,列column,属性attribute • 表中数据的组成部分,相似Excel表格中的列 • 类型type • 每一个字段属性之一,表明该字段下的全部数据以什么形式呈现,好比整数、字符串等类型 • 键值key • 数据表的一个属性,能够指定主键,外键 • 索引index • 在数据库管理系统中一般为加速数据读取速度而建立的一种数据结构 • 视图view • 为(字面上)简化部分数据的获取方法而建立的定义 • 存储过程sp(stored procedure) • 在数据库内部建立的具备一系列数据处理逻辑的方法 • 触发器trigger • 当数据库表发生修改操做时自动触发某些数据处理的方法 通用数据库对象中英文介绍 • 数据库服务器database server • 特指运行数据库实例的物理服务器或者虚拟服务器 • 主键primary key • 数据表中定义的用来惟一肯定表中各行数据的一个或几个字段 • 外键forerign key • 当数据表中的某一个或几个字段的值来源于某个父表时,则能够建立两个表之 间的数据映射关系 • 惟一unique • Primary key和unique index均可以做为约束表中这一列或几列的数据不重复 • 性能performance • 调优tuning 通用数据库对象中英文介绍 • 备份backup • 将数据库中的全部数据和对象或者指定的数据和对象导出成文件形式存储 • 恢复restore • 利用以前的备份文件将数据库中的指定对象和库还原到备份文件中的状态 • 用户user • 指为访问数据库中的数据而建立的权限 • 受权grant • 授予某个数据库用户某个权限的动做 • 回收revoke • 将某个数据库用户的某个权限回收的动做 • 权限privilege 通用数据库对象中英文介绍 • 查询select • 数据库中浏览数据所提供的方法 • 修改update • 数据库中修改数据所提供的方法 • 删除delete • 数据库中删除原有数据所提供的方法 • 添加insert • 数据库中新增数据所提供的方法 • SQL语句SQL statement • 对数据库中数据进行操做、管理的一套语法 • 数据库架构database architecture • 指数据库设计工做中对数据库一个或多个实例的部署,之间的数据协同,高可 用性,并发性等特性所作的统一规划 THANKSweb

相关文章
相关标签/搜索