MYSQL数据库初体验

目录

一、数据库的基本概念

(1)数据(Data)

(2)表

(3)数据库

(4)数据库管理系统(DBMS)

(5)数据库系统

二、数据库的发展

2.1 发展的三个阶段:

2.2 关系数据库(SQL)

(1)概念

(2)关系数据库的简单理解

(3)优缺点

(4)常见关系数据库

2.3 非关系数据库(NoSQL)

(1)概念

(2)优缺点

(3)非关系型数据库的分类和比较

三、主流的数据库介绍

(1)SQL Server(微软公司产品)

(2)Oracle (甲骨文公司产品)

(3)DB2(IBM公司产品)

(4)MySQL (甲骨文公司收购)

(5)国产系统介绍

四、MySQL安装方法

4.1 二进制安装

4.2 编译安装(MySQL安装)

4.3 yum源安装

步骤一:删除之前的mysql残留

步骤二:升级一下系统版本和内核版本

步骤三:下载并安装MySQL官方的 Yum Repository

步骤四:使用yum安装

步骤五:安装MySQL服务器

注意:如果有这个问题

步骤六:启动MySQL

步骤七:查看MySQL运行状态

步骤八:查找Mysql密码

步骤九:进入数据库,输入密码登录

补充:忘记原密码进行修改密码


一、数据库的基本概念

(1)数据(Data)

  • 描述事物的符号记录
  • 包括数字、文字、图形、图像、声音、档案记录等
  • 以“记录”形式按统一的格式进行存储

数据库如何保存:

最外层是mysql服务->mysql数据库->数据表->记录为行,字段为列->数据保存在一行行记录中

(2)表

  • 记录:行
  • 字段(属性):列
  • 以行+列的形式就组成了表(数据存储在表中)
  • 将不同的记录组织在一起
  • 用来存储具体数据

(3)数据库

  • 表的集合,是存储数据的仓库
  • 以一定的组织方式存储的相互有关的数据集合

(4)数据库管理系统(DBMS)

  • 是实现对数据库资源有效组织、管理和存取的系统软件

BMS主要包括以下功能:

  • 数据库的建立和维护功能:包括建立数据库的结构和数据的录入与转换、数据库的 转储与恢复、数据库的重组与性能监视等功能。
  • 数据定义功能:包括定义全局数据结构、局部逻辑数据结构、存储结构、保密模式及信息格式等功能。保证存储在数据库中的数据正确、有效和相容,以防止不合语义的错误数据被输入或输出。
  • 数据操纵功能:包括数据查询统计和数据更新两个方面。
  • 数据库的运行管理功能:这是数据库管理系统的核心部分,包括并发控制、存取控 制、数据库内部维护等功能。
  • 通信功能:DBMS 与其他软件系统之间的通信,如 Access 能与其他 Office 组件进行数据交换。

(5)数据库系统

  • 是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成
  • 用户可以通过DBMS或应用程序操作数据库
  • 常用的数据库应用软件有人事管理、财务管理、图书管理等信息管理软件及各类信息咨 询系统等

  • 数据库管理员(DatabaseAdministrator,DBA)负责数据库的更新和备份、数据库系统的维护、用户管理等工作,保证数据库系统的正常运行。DBA 一般由业务水平较高、资历较深的人员担任

  • 需要注意的是数据库、数据库系统、数据库管理系统,甚至数据库表等名词,在日常讨论中通常不严格区别。遇到此情况时,可以根据具体情况,判断出实际所指的是什么

DBMS的工作模式如下:

1>接受应用程序的数据请求和处理请求

2>将用户的数据请求(高级指令)转换为复杂机器代码(底层指令)

3>实现对数据库的操作

4>从数据库的操作中接受查询结果

5>对查询结果进行处理(格式转换)

6>将处理结果返回给用户

二、数据库的发展

2.1 发展的三个阶段:

  • 层次型和网状型: 代表产品是1969年IBM公司研制的层次模型数据库管理系统IMS。
  • 关系型数据型库: 目前大部分数据库采用的是关系型数据库。1970年IBM公司的研究员E.F.Codd提出了关系模型。其代表产品为sysem R和Inges。
  • 第三代数据库:将为更加丰富的数据模型和更强大的数据管理功能为特征,以提供传统数据库系统难以支持的新应用。它必须支持面向对象,具有开放性,能够在多个平台上使用。管理技术的3个阶段1 人工管理2 文件管理3 数据库系统

第三代数据库

一些新的元素被添加进主流数据库系统中

引申:SQL + NoSQL 组合使用

  • web ——> redis ——> mysql
  • CPU ——> 缓存 ——> 内存

2.2 关系数据库(SQL)

(1)概念

关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组

  • 关系数据库系统是基于关系模型的数据库系统;

  • 关系模型的数据结构使用简单易懂的二维数据表;

  • 关系模型可用简单的“实体-关系”(E-R)图来表示;

  • E-R图中包含了实体(数据对象)、关系和属性三个要素。

(2)关系数据库的简单理解

简单来说:

  • 表与表的关系
  • 每个表都有主键:唯一、非空

(3)优缺点

优点:

  • 易于维护:都是使用表结构,格式一致;
  • 使用方便:SQL语言通用,可用于复杂查询;
  • 复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。

缺点:

  • 读写性能比较差,尤其是海量数据的高效率读写;
  • 固定的表结构,灵活度稍欠;
  • 高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈

注:关系型数据库数据只能存于磁盘

(4)常见关系数据库

  • mysql
  • oracle
  • sql server
  • sqlite

2.3 非关系数据库(NoSQL)

(1)概念

非关系型数据库严格上不是一加粗样式种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等

  • 非关系数据库也被称作NoSQL (Not Only sQL)。存储数据不以关系模型为依据,不需要固定的表格式。
  • 按照键值对的形式进行存储,例如k/v、key/value。

(2)优缺点

优点:

  • 格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
  • 速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘
  • 高扩展性;
  • 成本低:nosql数据库部署简单,基本都是开源软件。
  • 数据库可高并发读写;
  • 对海量数据高效率存储与访问;
  • 数据库具有高扩展性与高可用性。

缺点:

  • 不提供sql支持,学习和使用成本较高;
  • 无事务处理;
  • 数据结构相对复杂,复杂查询方面稍欠。

(3)非关系型数据库的分类和比较

  • 文档型
  • key-value型
  • 列式数据库
  • 图形数据库

三、主流的数据库介绍

(1)SQL Server(微软公司产品)

  • 面向Windows操作系统
  • 简单、易用

(2)Oracle (甲骨文公司产品)

  • 面向所有主流平台
  • 安全、完善,操作复杂

(3)DB2(IBM公司产品)

  • 面向所有主流平台
  • 大型、安全、完善

(4)MySQL (甲骨文公司收购)

  • 免费、开源、体积小

(5)国产系统介绍

  • 华为:欧拉
  • 阿里:龙蜥
  • 腾讯:tencentOS
  • 麒麟:(银河麒麟、中标麒麟 – >centos 优麒麟 – > Ubuntu )
  • 统信:uos
  • 红旗
  • 深度:deepin

四、MySQL安装方法

  • 二进制安装
  • 编译安装
  • yum源安装

4.1 二进制安装

安装环境:

数据库版本:5.7.20

操作系统版本: CentOS 7

安装步骤:

4.2 编译安装(MySQL安装

4.3 yum源安装

步骤一:删除之前的mysql残留
步骤二:升级一下系统版本和内核版本

因为的的CentOS从官网下载的,可能比较老,安装其他软件的时候总是出现一些奇怪的问题,所以推荐升级。
 

yum -y update
步骤三:下载并安装MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
步骤四:使用yum安装
yum -y install mysql57-community-release-el7-11.noarch.rpm
步骤五:安装MySQL服务器
yum -y install mysql mysql-server mysql-devel
注意:如果有这个问题

解决方法:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
yum install -y mysql-community-server
步骤六:启动MySQL
systemctl start  mysqld.service
步骤七:查看MySQL运行状态
systemctl status mysqld.service
步骤八:查找Mysql密码

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

grep "password" /var/log/mysqld.log
步骤九:进入数据库,输入密码登录
mysql -uroot -p

注意:如果遇到这个问题

解决方法:

解决完问题后继续:

补充:忘记原密码进行修改密码

1、先修改my.cnf文件使其可以不用密码登录MySQL数据库

vim  /etc/my.cnf

在最后一行添加 skip-grant-tables

2、关闭MySQL服务器后重启MySQL服务器

systemctl stop mysqld
systemctl start mysqld
systemctl status mysqld

3、进入MySQL

输入 mysql -u root -p 后回车不需输入密码直接回车即可直接进入MySQL

4、修改MySQL密码

#切换数据库

use mysql;

#刷新一下mysql权限

flush privileges;

#修改密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码'

#修改完毕后推出数据库

exit

5、设置完密码后再次进入my.cnf文件中将第一次添加的代码删掉然后重启MySQL在通过密码进入MySQL后再次更改密码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值