MySQL基础介绍

第一章 数据库的概述

一、学习环境的介绍

1.windows 10/11 非家庭版

      内存:8G

2.VMware workstation 16.0

3.LAMP——Linux Aparche mysql php.

LNMP——Linux nignx mysql php.

WAMP——windows Aparache mysql php.

WNMP——windows nignx mysql php.

注意:windows是非客户端操作系统,而不是服务

 二、数据库系统概述

1.数据Data:凡是能被计算机处理的东西,如字母、数字、汉字、符号、声音、图片、动画均认为是数据。

2.信息information:数据——数据处理——信息,对人们的决策有帮助作用的有用的数据。

3.数据处理:将数据→信息的过程。

4.数据库Database:数据的仓库,容器级别的概念,存放数据库对象的容器。

5.数据库系统的组成:数据库系统(DBS)是数据库Database、数据库管理系统DBMS,数据库管理员DBA、数据库应用系统DBAS和计算机硬件5部分组成。

6.数据库管理系统DBMS:MsSQLServer 2019、MicrosoftAccess、VFP\Mysql、Oracel DB2等属于系统软件。

7.数据库应用系统DBAS:教务系统、一卡通消费系统、进销存管理系统、OA办公自动化系统等,属于应用软件。

三、数据库发展史

1.人工管理系统 20世纪40——50年代 磁带纸带等存储设备相对落后数据处理也比较落后。

2.文件系统阶段 20世纪50——60年代 磁盘文件系统FAT16、FAT32、NTFS、EXT,相比人工管理阶段而言有进步,存在大量的冗余(重复)数据 数据独立性差。

3.数据库系统阶段 20世纪60年代中后期 提高了数据的冗余度,提高了数据的独立性,数据与程序是独立分开的。

提示:一定不是消除了冗余。

四、数据库系统的三级模式和两级映像

1.模式  学生表(学号、姓名、性别、年龄)。

2.内模式  excel工作薄存放在计算机的什么位置    D:\\|x。

3.外模式 视图 从学生表中查询年龄小于18的并且性别是女的学生信息。

五、数据模型

1.层次模型:组织结构图。

2.网状模型:地图,交通网。

3.关系模型:用二维表的方式来表示实体和实体集之间关系的一种模型。

4.实体:客观存在的并且可以互相区别的事物 eg:1个人,一本书 。

5.实体集:实体的集合。 一个人是一个实体,一群人是实体集。

6.属性:二维表中,每1列的名称,描述实体的自身属性,特殊的字段,如学生表(学号,姓名,性别)中的学号、姓名、性别都是属性。

7.实体之间的关系

a.一对一:班长和班级、一夫一妻。

b.一对多:班级与学生。

c.多对多:图书与学生 老师与学生。

8.关系模型的相关概念

a.元组:二维表中的每一行,除了第一行——也成为记录。

b.属性:二维表中的每一列,只有第一行——也成为字段。

c.主键:在一个表中至少有这样一个字段,这个字段所对应的值一不能有空值(NULL值:不确定的值)二不能有重复,这个字段所对应的值能够起到唯一标识表中记录的作用,这个字段就称为主关键字。

d:外键:在一个表中某一个字段,它不是表中的关键字,但它却是其他表的关键字,叫外键。 

第二章   V-Mware的介绍以及安装

一、Vmware虚拟机介绍

1.1什么是虚拟机

   V-Mware是一款虚拟化软件,由VMware Inc.开发,提供了一种将物理服务器划分为多个独立虚拟机的技术。它允许用户在同一台物理硬件上运行多个操作系统和应用程序,每个虚拟机都像一台独立的计算机。通过V-Mware Workstation、ESXi Server或其他产品,管理员可以更好地管理资源、提高灵活性、降低成本,并简化IT部署。

1.2虚拟机的好处

V-Mware是一款虚拟化技术平台,它为企业提供了一系列的优势:

1. 资源利用率提升:通过虚拟化,V-Mware允许一台物理服务器运行多个独立的操作系统和应用程序,显著提高硬件资源的利用率。

2. 灵活性和可扩展性:用户可以根据需要轻松地创建、迁移和关闭虚拟机,支持动态调整资源需求,便于应对业务变化。

3. 灾难恢复和高可用性:通过复制和备份功能,V-Mware有助于构建容错环境,减少停机时间和数据丢失风险。

4. 降低成本:减少了对物理硬件的需求,简化了IT基础设施管理,能有效降低成本,特别是对于服务器冗余和容量预置方面。

5. 易于管理和运维:V-Mware 提供统一的管理系统,如vSphere,可以集中监控和管理所有虚拟机,提高了运维效率。

6. 兼容性和安全性:支持多种操作系统和应用程序的共存,并提供了安全特性,如防火墙和加密,保护敏感信息。

二、虚拟机的安装

2.1官方网站下载www.vmware.com/cn

2.2在“此电脑”非系统盘如E盘或F盘,新建一个虚拟机系统目录Vm-Server (E:\VM-Server)

2.3安装Vmware

点击下一步这里我们安装windows客户机选择要选择Windows点击下一步,点击BIOS,然后点击下一步创建新虚拟磁盘创建新虚拟磁盘,点击下一步完成

选择iso映像文件

然后我们开启虚拟机,现在安装

分配空间设置密码显示桌面图标

第三章 Windows快速安装MySQL

一、在VM中激活Windows

1.1用优盘拷贝好我们的系统激活软件

1.2点击使用kms激活windows

1.3显示激活成功

二、mysql的安装

1.1准备-台windows server 2019的主机

1.2安装windows server 2019

1.3下载mysql 8.0版本

链接:MySQL :: Download MySQL Installer

1.4mysql的安装

选择full选择Execute选择Execute新建密码选择Execute检查密码错误安装完成

1.5mysql运行环境配置

在方搜索编辑系统环境变量选择环境变量点击Path,编辑找到路径新建进去输入路径

1.6mysql的登录与退出

本地登录

mysql -u用户名(root) -p 密码 显式登录
 
mysql -u 用户名(root) -p 隐式登录 远程登录
 
mysql -h主机名或ip地址 -u 用户名(root) -p 密码

mysql退出 输入exit退出服务

1.7查看mysqI服务

WIN+R-->运行-->services.msc
 
windows+R--->运行-->输入netstat -an
 
windows+R===>运行-->输入wf.msc
 
mysql服务的开启与停止

1.8mysqI基本操作

1.8.1连接Mysql

mysql -u root -p

案例:

windwos+r→cmd→cd C:\Program Files\MySQL\MySQL Server 8.0\bin

提示:安装mysql之后,默认有一个管理员root 

1.8.2查看数据库和表

show databases;——查看当前所有数据库 use 数据库名
 
use (数据库名);——切换数据库
 
show tables;——查看当前数据库中的所有表
 
select database();——显示当前正在操作的数据库
 
select user();——显示当前登录的用户

1.8.3导入初始数据

以init.sql结尾的数据库脚本文件,数据库脚本文件扩展名.sql线连接登陆mysql,然后使用执行下列命令完成导入

source  d:\init.sql;

1.8.4mysql语句的介绍

SQL:Structured query language结构化的查询语言,用来对数据库进行查询、更新和管理的一种特殊语言。

包含三部分:

DML

Data Manipulation language数据操纵语言,是SQL语言的核心。

用于检索或更新数据库:insert delete update select 增删改查

DDL

Data Definition language 数据库定义语言

用于定义表的结构:create alter drop

DCL

Data control Language数据控制语言

1.9表结构

desc表名;——查看表的结构

desc表名;

select *from 表名;查看表中所有记录



select *from 表名;

表结构:表中属性的集合

表记录:表中元组的集合

数据库:数据库的仓库

用户的数据→表→数据库

tstudent学生表

列名类型含义
studentIDvachar可变长字符型学号
snamevachar可变长字符型姓名
sexchar字符型性别
cardIDvarchar可变长字符型身份证号
Birthdaydatetime日期时间型电子邮件
classvarchar可变长字符型班级
EnterTimedatetime日期时间型录入时间

tsubject课程表

列名类型含义
subjectIDvarchar课程编号
subjectNamevarchar课程名称
BookNamevarchar书名
Publishervarchar出版社

toscore分数表

列名类型含义
StudentIDvarchar学号
subjectIDvarchar课程编号
markdecimal分数

第四章     数据库创建与常用操作

一、Mysql用户登录过程和管理mysql用户

1.1Mysql8.0本地登录访问数据库

查看当前连接的mysql的用户

select user();
 
use mysql();
 
select user,host from user;

创建mysql用户账户

create user hector@'localhost';
 
alter user hector@'localhost' identified by 'abc..123'; 修改hector用户的密码

 新建本地登录用户赋权

grant all privileges on *.* to hector@'localhost' with grant option;
 
create user hector;
 
select host,user from user;

1.2数据库命名规范

数据库命名必须为项目英文名称或有意义的缩写

数据库创建时必须加默认字符集和字符序
       utf8:utf8_general_ci不区分大小写

       utf8_general_cs区分大小写

       utf8_bin二进制

命名应使用小写
      unicode 万国码,统一码,单一码:ucs2,utf16,utf161e,utf8,utf8mb4,utf32

      utf8:1个字符占1-3个字节 升级,老系统

      utf8mb4:1个字符占1-4个字节 新系统

第五章  表和库的管理

一、SQL简介

SQL:Structured Query Languagege 结构化的查询语言,用来对数据库进行查询、更新和管理的一种特殊的语言。DML是SQL语言的核心。

包含三个部分:DML:Data Manipulation language数据操纵语言,用于检索或更新数据库表:insert、delete、update、select增删改查。

DDL:Data Defination language数据定义语言用于定义的数据的结构:create alter drop。

DCL:Data Control language数据控制语言。

用于定义数据库用户的权限:grant revoke。

二、表和库的管理

2.1数据类型

整数型:smallint、int bigint

小数型:float、double

日期时间:date、time、datetime、timestamp

字符串:varchar、char、text

其他:clob存储文本大数据

blod存储二进制大数据

2.2创建表

create table 表名;

2.3修改表

添加列

alter table 表名 add 列名 数据类型;

修改列的类型

alter table 表名 modify 列名 新数据类型;

修改列名

alter table 表名 change 原列名 新列名 数据类型;

 删除列

alter table 表名 drop 列名;

修改表名

alter table 原表名 rename 新表名;

 2.4删除表

drop table 表名;

 2.5创建库

create database 数据库名 charset utf8;

2.6删除库 

drop database 数据库名;

 三、数据引擎的介绍

3.1数据库存储引擎的概述

数据库存储引擎是数据库管理系统DBMS的核心组件,主要用于处理数据的存储、检索、索引和更新等。

3.2常见的数据库存储引擎

①MYISAM不支持事务,但读取速度快适用于以读为主的场景,如数据仓库。不支持主键、外键索引。

②InnoDB支持事务,支持主键和外键索引

③memory

④Merge

3.3InnoDB与MyISAM引擎的区别

主键:在一个表中至少应该有一个字段,这个字段所对应的值能够起到唯一标识表中记录的作用,它对应的值是无重复的,不能为null值的,如学生表中学号,身份证号

alter table student add primary(sid);给学生表的学号字段设置主键

 修改学生存储引擎为myisam

alter table student engine=myisam;

3.4更改数据库默认存储引擎
3.4.1查看数据库支持的存储引擎

show engines;

3.4.2、显示默认数据库的存储引擎

show variables likec'table_type';

3.4.3、修改默认数据库的存储引擎

windows修改my.ini;

linux修改my.cnf;

3.4.4、修改表的存储引擎

alter table student engine=innodb;

3.4.5、创建表的时候指定存储引擎

create table teacher(tid int,tname char(20))engine=myisam;

 第六章   字符集和排序规则

6.1mysql的乱码问题

什么是乱码?

乱码是指由于编码、解码过程中的不匹配或错误,导致文本或数据在显示或解读时出现无意义、混乱或不可读的字符序列。简单来说,当你打开一个文件或接收一段信息时,如果看到的字符不是预期的文字,而是一串无法理解的符号或乱码,这通常意味着信息的编码方式与你所使用的解码方式不一致。

6.2预备知识

——字符 character eg:abcd 1234,.()

——字符集合:charset一组字符

ASCII字符集合(7bit,最高位是0),标准的——可打印的

扩展Ascii字符集合(8bit)  拉丁语系,扩展----不可打印的字符

GB2312   简体中文

  BIG5   繁体中文

  GBK   包含简体中文和繁体中文

- 字符编码  给字符集合中的每1个字符指定1个二进制数字来标识。

- 字符集:字符集合+编码=字符集

- 字符序:字符的排序规则   1个字符集,可以有多个排序规则即多个字符序

以_ci结尾,大小写不敏感,不区分大小写

以_cs结尾,大小写敏感,区分大小写

6.3常见的字符集

- Ascii字符集
 
- 扩展Ascii字符集   latin1   8位二进制  包括Ascii字符集中的全部字符
 
- GB2312  BIG5  GBK    16位二进制 
 
- unicode  字符集  全球语言   16位二进制
 
- 扩展Ascii字符集  latin1  latin2
 
- unicode字符集    unicode编码   一个字符2个字节
 
                             utf8    一个英文字符  占一个字节
 
                                      一个中文字符使3个字节
 
- utf8mb3   utf8mb4    more bit

utf-8是一种变长的字节编码方式,对于某一个字符的utf-8编码,如果只有一个字节则其最高位二进制位为0;如果是多字节,其第一个字符节从最高位开始,连续的二进制位值为1的个数决定了其编码的位数,其余各字节均以10开头,utf8最多可以用到6个字节。

示例:

1字节   0xxx xxxx

2字节   110x xxxx 10xx xxxx

3字节   1110 xxxx 10xx xxxx 10xx xxxx

4字节    1111 0xxx 10xx xxxx 10xx xxxx 10xx xxxx

5字节    1111 10xx 10xx xxxx 10xx xxxx 10xx xxxx 10xx xxxx

6字节    1111 110x  10xx xxxx 10xx xxxx 10xx xxxx 10xx xxxx 10xx xxxx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值