MySQL数据库初体验

目录

数据库简介

使用数据库的必要性

使用数据库可以高效且条理分明地存储数据,使人们能够更加迅速、方便地管理数据。数据库具有以下特点:

可以结构化存储大量的数据信息,方便用户进行有效的检索和访问。

可以有效地保持数据信息的一致性、完整性,降低数据几余。

可以满足应用的共享和安全方面的要求。

数据库的基本概念

1.数据

描述事物的符号记录称为数据(Data)。数字、文字、图形、图像、声音、档案记录等都是数据。

在数据库中,数据是以"记录"的形式按照统一的格式进行存储的,而不是杂乱无章的。相同格式和类型的数据统一存放在一起,而不会把"人"和"书"混在一起存储。这样,数据的存储就能够井然有序。

如下图中存储的一行数据,在数据库中称为一条"记录。每(Record)条记录中的每一个输入项称为"列"。。下图中编号、姓名、性别、年龄、民族、专业都是列名。

2.数据库和数据库表

不同的记录组织在一起,就形成了数据库(Database,DB)的"表"(Tab。也可 以说,表是用来存储具体数据的,如图1.1所示。那么数据库和le)表存在什么关系呢?简单地 说,数据库就是表的集合。它是以一定的组织方式存储的相互有关的数据集合。例如,关系数据库的表由记录组成,记录由字段组成,字段由字符或数字组成。它可以供各种用户共享,具有最小几余度和较高的数据独立性,它是统一管理的相关数据的集合。通常,数据库并不是简单地存储这些数据的,还要表示它们之间的关系。例如,书和人是存在联系的,书的作者可能就是某个人,因此需要建立书与人的"关系"。这种关系也需要用数据库来表示,因此关系的描述也是数据库的一部分。

3.数据库管理系统和数据库系统

数据库管理系统(Database ManagementSystem,DBMS)是实现对数据库资源有效组织、管理和存取的系统软件。它在操作系统的支持下,支持用户对数据库的各项操作。DBMS 主要包括以下功能。

数据库的建立和维护功能:包括建立数据库的结构和数据的录入与转换、数据库的 转储与恢复、数据库的重组与性能监视等功能。

数据定义功能:包括定义全局数据结构、局部逻辑数据结构、存储结构、保密模式 及信息格式等功能。保证存储在数据库中的数据正确、有效和相容,以防止不合语 义的错误数据被输入或输出。

数据操纵功能:包括数据查询统计和数据更新两个方面。

数据库的运行管理功能:这是数据库管理系统的核心部分,包括并发控制、存取控 制、数据库内部维护等功能。

通信功能:DBMS 与其他软件系统之间的通信,如Access 能与其他 Office组件进行 数据交换

**数据库系统(Database System,DBS)**是一个人-机系统,一般由硬件、操作系统、数 据库、DBMS、应用软件和数据库用户(包括数据库管理员)组成。用户可以通过 DBMS 操作 数据库,也可以通过应用程序操作数据库。应用程序是利用 DBMS 为解决某个具体的管理或数据处理的任务而编制的一系列命令的 有序集合。如果应用程序比较完善,能够提供友好的人机界面,并编译成可执行文件发行, 使得普通用户不需要具备计算机的专业知识,在较短时间就学会使用,那么就称为数据库应 用软件。常用的数据库应用软件有人事管理、财务管理、图书管理等信息管理软件及各类信息咨 询系统等。

**数据库管理员(Database Administrator,DBA)**负责数据库的更新和备份数据库系 统的维护、用户管理等工作,保证数据库系统的正常运行。DBA一般由业务水平较高、资历 较深的人员担任。需要注意的是数据库、数据库系统、数据库管理系统,甚至数据库表等名词,在日常讨 论中通常不严格区别。遇到此情况时,可以根据具体情况,判断出实际所指的是什么。

数据库发展史

1.数据库系统发展史

数据库技术的发展已经成为先进信息技术的重要组成部分,是现代计算机信息系统和计算机应用系统的基础和核心。数据库技术最初产生于20世纪60年代中期,根据数据模型的发展,可以划分为三个阶段:第一代的网状、层次数据库系统;第二代的关系数据库系统;第三代的以面向对象模型为主要特征的数据库系统。

2.经典数据模型

数据是现实世界中"量 "的抽象,而数据模型(Data Model)是数据特征的抽象。在数据库系统中,数据模型是它的核心与基础。数据模型表现为数据的结构、定义在其上的操作及约束条件。它从概念层次上描述了系统的静态特征动态特征和约束条件,为数据库系统的信息表示与操作提供了一个抽象框架。

在 DBMS 的发展过程中,出现了网状模型、层次模型和关系模型三种经典的数据模型。 由于受限于数学基础、编程技术和硬件条件,最初出现的层次模型和网状模型与关系模型相 比,在用户接口的上、中层部分更易于实现。所以,这在很长一段时间阻碍了关系模型的发展。

数据模型所描述的内容包括三方面:数据结构、数据操作和数据约束。三种经典数据模型:网状模型,层次模型,关系模型。

关系模型相比网状模型和层次模型有更为坚实和完整的理论基础。相比层次模型和网状模型而言,关系模型与用户更靠近些,而网状模型和层次模型与底层实现的结合更紧密。这样的特色也更容易让关系模型成为商业数据库的选择

3.主流数据库

(1)关系数据库

  1. SQL server
  2. Oracle
  3. DB2
  4. MySQL

(2)非关系数据库

  1. Redis
  2. MongoDB
  3. HBase

关系数据库的基本概念

1.主键与外键

(1)主键

数据表中的每行记录都必须是唯一的,而不允许出现完全相同的记录,通过定义主键(主 关键字,Primary Key)可以保证记录(实体)的唯一性。

一个主键值对应一行数据。主键由一个或多个主键唯一标识表中的行数据,字段组成, 其值具有唯一性,不允许取空值(NULL)。一个表只能有一个主键。

(2)外键

个关系数据库通常包含多个表,通过外键(Foreign Key)可以使这些表关

联起来。

外键是用于建立和加强两个表数据之间的链接的一列或多列。通过将表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这个列就称为第二个表的外键。

2.数据完整性规则

实体完整性规则要求关系中的元组在主键的属性上不能有空值。如果出现空值,那么主 键值就起不到唯一标识元组的作用

域完整性也称列完整性,指定一个数据集对某一个列是否有效或确定是否允许空值。

如果两个表之间相互关联,那么引用完整性规则要求不允许引用不存在的元

组。

用户定义的完整性规则是针对某一具体数据的约束条件,由应用环境决定

MySQL 服务基础

二进制安装

1.基础环境准备

安装依赖软件包

创建运行Mysql程序的用户

最后一行是随机密码,以后登入mysql数据库使用

2.设定配置文件

每条含义:

socket=/usr/local/mysql/data/mysql.sock :指定客户端连接使用的套接字文件路径

bind-address = 0.0.0.0 :监听所有网络接口

skip-name-resolve :跳过域名解析以提高性能

port = 3306 :指定 MySQL 服务端口号

basedir=/usr/local/mysql :指定 MySQL 安装目录

datadir=/usr/local/mysql/data :指定 MySQL 数据目录

max_connections=2048 :设置最大连接数

character-set-server=utf8 :设置服务器字符集为 utf8

default-storage-engine=INNODB :设置默认存储引擎为 INNODB

max_allowed_packet=16M:设置最大允许的数据包大小

log-error=/usr/local/mysql/data/error.log:指定错误日志文件路径

创建链接文件

3.配置systemctl方式启动

将MySQL添加成为系统服务,通过使用systemctl 来管理。在/usr/local/mysql/support-files目录下找到mysql.server文件,将其复制 到/etc/rc.d/init.d 目录下,改名为 mysqld 并赋予可执行权限。

编辑生成mysqld.service服务

每条含义:

Description=mysqld :服务描述信息

After=network.target :表示在网络服务启动后启动该服务

Type=forking :服务类型为 forking

ExecStart=/etc/rc.d/init.d/mysqld start :启动服务的命令

ExecReload=/etc/rc.d/init.d/mysqld restart :重启服务的命令

ExecStop=/etc/rc.d/init.d/mysqld stop :停止服务的命令

PrivateTmp=true :使用私有临时目录

WantedBy=multi-user.target:表示该服务在多用户模式下启动

访问Mysql数据库

MySQL 数据库系统也是一个典型的C/S(客户端/服务器)架构的应用,要访问 MySQL数据库需要使用专门的客户端软件。在Linux系统中,最简单、易用的 MySQL 客户端软件是 其自带的 mysql 命令工具。

1.登录到MySQL服务器

经过安装后的初始化过程,MySQL数据库的默认管理员用户名为"root密码为给定的随机密码。以 root 用户登录本机的 MySQL 数据库,可以执行以下操作。

括号内为新密码

2.执行MySQL操作语句

验证成功以后将会进入提示符为"mysql>"的数据库操作环境,用户可以输入各种操 作语句对数据库进行管理。每一条 MySQL 操作语句以分号" ;"表示结束,输入时可以不区 分大小写,但习惯上将 MySQL 语句中的关键字部分大写。

重新登入

查看数据库,退出mysql

相关推荐
文牧之14 分钟前
PostgreSQL 临时表空间
运维·数据库·postgresql
专注VB编程开发20年20 分钟前
vb.net oledb-Access 数据库本身不支持命名参数,赋值必须和参数顺序一致才行
数据库·c#·.net·vb.net·oledb
LiRuiJie1 小时前
深入剖析HBase架构
数据库·架构·hbase
GzlAndy2 小时前
MySQL高可用集群
数据库·mysql
菜菜小蒙2 小时前
【MySQL】事务及隔离性
数据库·mysql
不穿铠甲的穿山甲3 小时前
mysql-mysql源码本地调试
数据库·mysql
篱笆院的狗4 小时前
如何使用 Redis 快速实现排行榜?
数据库·redis·缓存
开利网络4 小时前
数据资产化浪潮下,企业如何构建去中心化商业新生态?
大数据·数据库·人工智能·信息可视化·重构
小陈又菜6 小时前
Real SQL Programming
数据库·sql
%d%d26 小时前
Redis 插入中文乱码键
数据库·redis·缓存