第一章《初识数据库》

第一章《初识数据库》

(1)什么是数据库:
硬盘—管理软件
数据库(DataBase、DB)是一个长期存储在计算机内、有组织的、有共享的、统一管理的数据集合。他简而言之就是一个存储数据的仓库。为了方便数据的存储和管理,他将数据按照特定的规律存储在硬盘上,通过数据库管理系统,可以有效的组织和管理存储再数据库中的数据。

我们也可以说数据库是由一批数据库的有序集合,这些数据被存放在结构化的数据表里。数据表之间相互关联、反映了客观事物间的本质联系。数据库系统提供对数据的安全控制和完整性控制。
2.数据库系统:
数据库系统由3部分组成:
(1)数据库:用于存储数据的地方
(2)数据库管理系统:用于管理数据的软件
(3)数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据的软件补充;

数据库:提供一个存储空间以存储各种数据,可以将数据库视为一个存储数据的容器。一个数据库可能包含多个表或者文件,一个数据库系统中通常包含多个数据库。

数据库管理系统(DBMS):是用户创建、管理和维护数据库是所使用的软件,位于用户的操作系统之间,对数据库进行统一管理,DBMS能定义数据存储结构,提供数据的操作机制,维护数据的安全性、完整性和可靠性。

数据库应用程序:虽然已经有了DBMS,但是在很多情况下,DBMS无法满足对数据管理的需求,数据库应用程序的使用可以满足对数据管理更高的要求,还可以是数据库管理过程更加直观,数据库应用程序负责与DBMS进行通信,访问和管理DBMS中存储的数据,允许用户插入、修改、删除DB中的数据。

3.什么是mysql:
mysql是一个开放源代码的数据库管理系统,它是由Mysql AB公司开发、发布并支持的。
mysql是一个跨平台的开源关系型数据库管理系统,广泛的用在internet上的中小型网站公司的开发和架构中。
mysql是一个小型关系数据库管理系统,与其他的大型数据库管理系统如:Oracle、DB2、SQLServer等相比,mysql规模小、功能有限。但是体积小,速度更快,成本更低,且他提供的功能对稍微复杂的应用来说已经够了,这些特性mysql成为了世界上最受欢迎的开源数据库管理系统。

3.1mysql版本:
针对不同用户,mysql分为2个不同版本:
Mysql Community Server(社区版):该版本完全免费,但是官方不提供技术支持;
Mysql Enterprise Server(企业版): 它能够以很高的的性价比为企业提供数据应用,支持ACID事务处理,提供完整的提交、回滚、崩溃恢复和行级别锁定功能,但是该版本需要付费使用,官方提供远程技术支持。
Mysql的命名机制由3个数字和1个后缀组成,例如:mysql-5.5.13.
(1)第一个数字5是主版本号,描述了文件格式,所有版本5的发行版都有相同的文件格式
(2)第二个数字5是发行级别,主版本号和发行级别组合在一起便构成了发行序列号;
(3)第三个数字13是在发行系列的版本号,随着每次新发布的版本递增,通常选择已经发行的最新版本。

3.2Mysql的优势:
(1)速度:运行速度快
(2)价格:开源软件基本免费
(3)容易使用:与其他大型数据库相比,复杂程度低,易于学习;
(4)可移植性强:可以工作在众多不同的系统平台上,如windows,linux,unix等;
(5)丰富的接口:提供用于c、c++、eiffel、java、python、php、perl、ruby等语言的API;
(6)支持查询语言:mysql可以利用标准的sql语法和支持ODBC(开放式数据库连接)的应用程序;
(7)安全性和连续性:十分灵活和安全的权限和密码系统,允许基于主机的验证,连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全,并且由于mysql是网络化的,因此可以在因特网的任何地方访问,提高数据的共享效率。

3.3mysql的C/S架构:
C/S架构是指client–server这种架构,server端(服务器)是整个应用系统资源的存储于管理中心,多个客户端测各自处理相应的功能,共同实现完整的应用。在C/S这种结构中,客户端用户的请求被传送到数据库服务器,数据库服务器进行处理后,将结果返回给用户,从而减少了网络数据传输量。
用户使用实用程序时,首先启动客户端通过有关命令告知服务器进行连接以完成各种操作,而服务器则按照请求提供相应的服务,每一个客户端软件的实例都可以向一个服务器或应用程序发出请求,这种系统的特点就是客户端和服务器程序不在同一台计算机上运行,这些客户端和服务器归属不同的计算机。

3.4mysql的表:
在关系型数据库中,数据库的表是一系列二维数组的混合,用来存储数据和操作数据的逻辑结构,它是有纵向的列和横向的行组成,是组织数据的单位,列被称为字段,每一列表示记录的一个属性,都有响应的描述信息,如数据类型、数据宽度等。

在这里插入图片描述
3.5数据类型:
数据类型决定了数据在计算机中的存储格式,代表不同的信息类型,常用的数据类型有:整数数据类型,浮点数数据类型,字符串类型数据,二进制数据类型,日期/时间数据类型等。表中的每一个字段就是某种指定数据类型,例如刚刚图中的”编号“字段为整数数据。”名字“字段为字符串类型数据。

3.6 SQL语言
对数据库进行查询和修改操作的语言叫做SQL。SQL的含义是结构化查询语句(structured query language),SQL有许多不同类型,有3个主要标准,ANSI(美国国家标准机构)SQL,ANSI是SQL修改后再1992年采纳的标准,称为SQL-92或者SQL2.最近的SQL-92标准,从SQL2扩充而来并添加了对象关系特征和许多其他新的功能,其次,各大数据库厂商提供了不同版本的SQL。这些版本的SQL不但能包括原始ANSI标准,而且很大程度上支持新推出的SQL-99标准。

SQL语言包含一下4个部分:
(1)数据定义语言(data definition language)DDL:DROP、CREATE、ALTER等语句;
(2)数据操作语言(data manipulation language)DML:insert,update,delet语句;
(3)数据查询语言(data query language)DQL:select语句;
(4)布局控制语言(data control language)DCL:grant、revoke、commit、rollack等语句。

MySQL服务器端实用工具程序如下:
(1)mysqld:SQL后台程序。该程序必须运行之后,客户端才能通过连接服务器来访问数据库。
(2)mysqld_safe:服务器启动脚本。在Unix和Net Ware中使用mysqld_safe来启动mysqld服务器。
(3)mysql.server:服务器启动脚本。该脚本用于使用包含为特定级别的、运行启动服务的脚本、运行目录的系统。它调用mysqld_safe来启动MySQL服务器。
(4)mysqld_multi:服务器启动脚本,可以启动或停止系统上安装的多个服务器。
(5)myisamchk:用来描述、检查、优化和维护MyISAM表的实用工具。
(6)mysqlbug:MySQL缺陷报告脚本。它可以用来向MySQL邮件系统发送缺陷报告。
(7)mysql_install_db:该脚本用默认权限创建MySQL授权表。通常只是在系统上首次安装MySQL时执行一次。

MySQL客户端实用工具程序如下:
(1)myisampack:压缩MyISAM表以产生更小的只读表的一个工具。
(2)mysql:交互式输入SQL语句或从文件以批处理模式执行它们的命令行工具。
(3)mysqlaccess:检查访问主机名、用户名和数据库组合的权限的脚本。
(4)mysqladmin:执行管理操作的客户程序,例如创建或删除数据库,重载授权表,将表刷新到硬盘上,以及重新打开日志文件。mysqladmin还可以用来检索版本、进程,以及服务器的状态信息。
(5)mysqlbinlog:从二进制日志读取语句的工具。在二进制日志文件中包含执行过的语句,可用来帮助系统从崩溃中恢复。
(6)mysqlcheck:检查、修复、分析以及优化表的表维护客户程序。
(7)mysqldump:将MySQL数据库转储到一个文件(例如SQL语句或tab分隔符文本文件)的客户程序
(8)mysqlhotcopy:当服务器在运行时,快速备份MyISAM或ISAM表的工具。
(9)mysql import:使用LOAD DATA INFILE将文本文件导入相关表的客户程序。
(10)mysqlshow:显示数据库、表、列以及索引相关信息的客户程序。
(11)perror:显示系统或MySQL错误代码含义的工具。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101977.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号