26.MySQL数据库基础
MySQL数据库基础
目录
- MySQL数据库基础
数据库的概念
数据
- 描述事物的符号记录
- 包括数字,文字、图形、图像、声音、档案记录等
- 以“记录”形式按统一的格式进行存储
表
- 将不同的记录组织在一起
- 用来存储具体数据
数据库
- 表的集合,是存储数据的仓库
- 以一定的组织方式存储的相互有关的数据集合
- 是按照数据结构来组织、存储和管理数据的仓库
库中有表,表中有记录

数据库的管理系(DBMS)
是实现对数据库资源有效组织、管理和存取的系统软件
- 数据库的建立和维护功能、数据定义功能、数据操纵功能、数据库的运行管理功能、通信功能
数据库系统
- 是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成
- 用户可以通过DBMS或应用程序操作数据库
访问数据库的流程

- 当应用程序或客户端会向DBMS发送数据请求
- DBMS会将请求翻译成底层指令去调用相关的数据库数据
- 数据库将相关的查询结果返回给DBMS
- DBMS会将数据处理结果返回给应用程序或者客户端
数据库系统发展史
第一代数据库
- 自20世纪60年代起,第一代数据库系统问世
- 是层次模型与网状模型的数据库系统
- 为统一管理和共享数据提供了有力的支撑
第二代数据库
- 20世纪70年代初,第二代数据库——关系数据库开始出现
- 20世纪80年代初,IBM公司的关系数据库系统DB2问世,开始逐步取代层次与网状模型的数据库,成为行业主流
- 到目前为止,关系数据库系统仍占领数据库应用的主要地位
第三代数据库
- 自20世纪80年代开始,适应不同领域的新型数据库系统不断涌现
- 面向对象的数据库系统,实用性强、适应面广
- 20世纪90年代后期,形成了多种数据库系统共同支撑应用的局面
- 一些新的元素被添加进主流数据库系统中。例如,Oracle支持的“关系-对象”数据库模型
当今主流数据库介绍
SQL Server(微软公司产品
- 面向Windows操作系统
- 简单、易用

Oracle(甲骨文公司产品)
- 面向所有主流平台
- 安全、完善,操作复杂

DB2(IBM公司产品)
- 面向所有主流平台·大型、安全、完善

MySQL(甲骨文公司收购)
- 免费、开源、体积小

关系数据库
- 关系数据库系统是基于关系模型的数据库系统
- 关系模型的数据结构使用简单易懂的二维数据表
- 关系模型可用简单的“实体-关系”(E-R)图来表示
- E-R图中包含了实体(数据对象)、关系和属性三个要素

关系数据库理解
1.作为银行客户的实体集(客户编码为区分客户实体的唯一标识)
| 客户编码 | 客户姓名 | 客户住址 | 客户电话 |
|---|---|---|---|
| 1 | 张三 | 中关村 | 88888888 |
| 2 | 李四 | 回龙村 | 66666666 |
2.作为银行账户的实体集(账户编码为区分账户实体的唯一标识)
| 账号编码 | 账户 | 金额 |
|---|---|---|
| 1 | 235456824684233690 | 2000.3 |
| 2 | 296413165484213555 | 5000.55 |
3.建立银行账户和银行客户之间的储蓄关系(储蓄编码为区分各储蓄关系的唯一标识)
| 储蓄编码 | 客户编码 | 账户编码 |
|---|---|---|
| 1 | 1 | 2 |
| 2 | 2 | 1 |
关系数据库的存储结构是二维表格
在每个二维表中
- 每一行称为一条记录,用来描述一个对象的信息·每一列称为一个字段,用来描述对象的一个属性

关系型数据库应用
| 关系型数据库 | 应用举例 |
|---|---|
| Oracle,MySQL | 12306用户信息系统 |
| SQLServer、Sybase | 淘宝账号系统 |
| Informix、access | 联通手机号信息系统 |
| DB2、FoxPRO | 银行用户账号系统 |
| PostgreSQL | 网站用户信息系统 |
非关系数据库介绍
非关系数据库也被称作NoSQL(Not Only SQL)
存储数据不以关系模型为依据,不需要固定的表格式
非关系型数据库的优点
- 数据库可高并发读写
- 对海量数据高效率存储与访问
- 数据库具有高扩展性与高可用性
常用的非关系数据库:Redis、mongoDB等
MySQL数据库介绍
一款深受欢迎的开源关系型数据库
Oracle旗下的产品
遵守GPL协议,可以免费使用与修改口
特点
- 性能卓越、服务稳定
- 开源、无版权限制、成本低
- 多线程、多用户
- 基于C/S(客户端/服务器)架构
- 安全可靠
MySQL产品阵营
- 第一阵营:5.0-5.1阵营,可说是早期产品的延续
- 第二阵营:5.4-5.7阵营,整合了MySQLAB公司、社区和第三方公司开发的存储引擎,从而提高性能
- 第三阵营:6.0-7.1阵营,就是MySQL Cluster版本,为适应新时代对数据库的集群需求而开发
- 下载网址
http://www.dev.mysql.com/downloads
MySQL商业版与社区版
MySQL商业版是由MySQL AB公司负责开发与维护,需要付费才能使用
MySQL社区版是由分散在世界各地的MySQL开发者、爱好者一起开发与维护,可以免费使用
口两者区别
- 商业版组织管理与测试环节更加严格,会比社区版更稳定
- 商业版不遵守GPL,社区版遵从GPL可以免费使用
- 商业版可获得7*24小时的服务,社区版则没有
26.MySQL数据库基础的更多相关文章
- MySQL数据库--基础简述
MySQL数据库--基础简述 1.15.1 MySQL简介 Mysql是最流行的RDBMS(Relational Database Management System:关系数据库管理系统),特别是在W ...
- mysql数据库基础的简单操作指南
最近在学习mysql,本文是做的关于mysql学习的笔记,跟大家分享一下,希望对大家学习mysql知识有所助益.mysql现在几乎已经成了网站建设的主流数据库,很多php网站系统都采用了mysql数据 ...
- MySQL数据库基础
MySQL数据库基础 本文的所有操作是基于CMD环境,MySQL通过在命令行中输入SQL语句对数据库进行操作.配置问题可参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置 ...
- Mysql数据库基础学习笔记
Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...
- Mysql数据库基础操作
Mysql数据库基础操作 在mysql数据库中开启使用tab键补全功能 1)修改主配置文件/etc/mysql/my.cnf(mysql和mariadb目录有些不同) vim /etc/mysql/m ...
- mysql数据库基础-2019-9-10(随堂笔记)
mysql数据库基础 在cmd情况下启动mysql数据库:(配置path环境变量后可忽略) 运行mysql1. 进入mysql路径2. 执行:mysql -uroot -p,安装时的密码 1.数据库& ...
- php面试专题---15、MySQL数据库基础考察点
php面试专题---15.MySQL数据库基础考察点 一.总结 一句话总结: 注意:只写精品 1.mysql定义int(3),那么我存1234就错了么? 不是:无影响:只会影响显示字符的个数:可以为整 ...
- PHP面试 MySQL数据库基础
MySQL数据库基础 MySQL数据类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 属性:UNSIGNED 长度:可以为整数类型指定宽度,列 ...
- MySQL数据库基础知识及优化
MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...
随机推荐
- XStream使用记录
XStream使用记录 官网 http://x-stream.github.io/index.html 下载地址 http://x-stream.github.io/download.html 参考资 ...
- JavaScript学习总结2-对象
JavaScript中对象除了最后一个属性以外都在结尾加逗号,同时所有属性都要在{ }内 1 <!DOCTYPE html> 2 <html lang="en"& ...
- Java学习day29
线程礼让(yield):礼让线程,让当前正在执行的线程暂停,但是不阻塞:让线程从运行状态转为就绪状态:让CPU重新调度,礼让不一定成功 合并线程(join):待此线程执行完毕后,再执行其他线程,其他线 ...
- IDEA小技巧:Debug时如何优雅地制造异常?
抛异常相信大家都会吧?只需要这样就可以了: throw new RuntimeException("didispace.com"); 但是,在开发过程中有一些情况,我们需要测试程序 ...
- 基于Feature Flag的下一代开发模式
渐进式发布(Progressive Delivery)被认为是持续发布(Continous Delivery)的下一代形态,其专注于增强发布过程控制与降低发布风险,最终提高整体收益.国际科技巨头比如A ...
- -2.输入加速(cin,cout)
+ ios::sync_with_stdio(false);//加速几百毫秒 cin.tie(0); // 接近scanf cout.tie(0);
- 【MyBatis】多关键字的模糊查询
目录 情景分析 题目 要求 相关代码 Mapper.java Impl.java mapper.xml test.java 思路分析 1.最开始,参数没有使用List,引起的问题 2.Mybatis的 ...
- 聊聊 node 如何优雅地获取 mac 系统版本
背景 今天突然碰到了一个兼容性需求,需要根据不同 macOS 版本,进行不同的兼容性处理. 没想到看似简单的需求,中间也经历了一番波折,好在最后解决了问题. 在此记录一下解决问题的过程,也方便其他有类 ...
- animation—延迟和持续时间
animation: moveToRight .75s 6s linear infinite ;animation: moveToRight -.75s 1.5s linear infinite; ...
- GIL与普通互斥锁区别,死锁现象,信号量,event事件,进程池与线程池,协程
GIL与普通互斥锁区别 GIL锁和互斥锁的异同点 相同: 都是为了解决解释器中多个线程资源竞争的问题 异: 1.互斥锁是Python代码层面的锁,解决Python程序中多线程共享资源的问题(线程数据共 ...