mysql 8.0.15 安装图文教程及数据库基础

网络编程 2021-07-05 14:37www.168986.cn编程入门
这篇文章主要为大家详细介绍了mysql 8.0.15 安装方法图文教程,及数据库基础知识,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

MySQL软件安装及数据库基础,供大家参考,具体内容如下

一、任务

任务一

MySQL 软件安装及数据库基础

任务时间

请于2月26日22:00前完成,在本文章评论打卡。逾期尚未打卡的会被清退。

学习内容

1.软件安装及服务器设置

   教程 MySQL 安装 | 菜鸟教程

2.(选做,强烈建议) 使用图形界面软件 Navicat for SQL

   星球提供Navicat for SQL
   简易步骤:
      解压缩文件,复制key
      打开文件夹中的navicat.exe
      用户名随意,输入key,然后连接数据库
      输入密码,连接名改成自己喜欢的
      剩下的自己探索,怎么在navicat中创建数据库、表等等

3.数据库基础知识

   数据库定义
   关系型数据库
   二维表
   行
   列
   主键
   外键

4.MySQL数据库管理系统

   数据库
   数据表
   视图
   存储过程

二、软件安装及服务器设置

系统环境win10 家庭版

2.1 MySQL安装

2.1.1 在MySQL官网 下载 Windows 版本的 MySQL 安装包

地址为

点击下载Download后会弹出以下界面,点击 No thanks, just start my download

2.1.2 下载完后解压,将 zip 包解压到你想安装的目录,我的路径如下所示

2.1.3 配置环境变量

进入 计算机—属性—高级系统设置—环境变量,添加MySQL解压的路径。


2.1.4 接下来配置 MySQL 的配置文件

打开刚刚解压的文件夹 D:\软件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64 ,创建一个配置文件为 my.ini,编辑 my.ini 配置以下基本信息

[mysql]
default-character-set=utf8

[mysqld]
port = 3306
basedir=D:\软件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64
datadir=D:\软件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\data
character-set-server=utf8
default-storage-engine=INNODB


1.接下来我们来启动下 MySQL 数据库
管理员身份打开 cmd 命令行工具,切换目录

D:
cd D:\软件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\bin

输入初始化命令

mysqld --initialize-insecure --user=mysql 

在D:\软件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\bin目录下生成data目录

启动输入以下命令即可

 start mysql

这证明已经连接成功。

2.2 MySQL 重置密码

2.2.1 登录MySQL

输入

mysql -u root -p

因为之前没设置密码,所以密码为空,直接回车即可:


2.2.2 查询用户密码

查询用户密码命令

mysql> select host,user,authentication_string from mysql.user;

host 允许用户登录的ip;
user当前数据库的用户名;
authentication_string 用户密码;
如果没密码, root 这一行应该是空的。


2.2.3 设置(或修改)root用户密码

注意在MySQL 5.7.9以后废弃了password字段和password()函数

一定不要采取如下形式设置密码

use mysql; 
update user set authentication_string="newpassword" where user="root";

这样会给user表中root用户的authentication_string字段下设置了newpassword值;

正确修改root密码的步骤为

1.如果当前root用户authentication_string字段下有内容,先将其设置为空,没有就跳到步骤 2。

use mysql; 
update user set authentication_string='' where user='root'

2.使用ALTER修改root用户密码,方法为

use mysql;
ALTER user 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;

到此为止自己创建的本地MySQL创建完毕!!!
重新连接即可!!!

三、使用图形界面软件 Navicat for SQL

Navicat for SQL安装包已存百度网盘

1.解压缩文件,复制key
2.打开文件夹中的navicat.exe
3.用户名随意,输入key,然后连接数据库
4.输入密码(之前如果MySQL重新设置过密码,那这里就填新设置的密码就好),连接名改成自己喜欢的

出现的问题 这里连接出现失败,如图

解决方案

这里的问题其实MySQL在之前设置密码时所用的加密方式ALTER user 'root'@'localhost' IDENTIFIED BY '新密码';为强加密,就会出现连接失败的情况;如果使用第二种加密方式ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '新密码';,就可以直接连上了。

成功连接!!!

到此,所需软件的安装及环境配置工作全部完成,可以开心的遨游MySQL的世界啦~~

四、数据库基础知识

4.1 数据库(database)定义

以《SQL必知必会(第4版) 》这本书来说,从 SQL的角度来看,数据库是一个以某种有组织的方式存储的数据集合,是保存有组织的数据的容器(通常是一个文件或一组文件)。

注意 人们通常用数据库这个术语来代表他们使用的数据库软件, 这是不正确的,也产生了许多混淆。确切地说,数据库软件应称为数据库管理系统(DBMS)。数据库是通过 DBMS创建和操纵的容器,而具体它究竟是什么,形式如何,各种数据库都不一样。

4.2 关系型数据库


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

优点

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

缺点

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

4.3 二维表

是一种结构化的文件,可用来存储某种特定类型的数据。表可以保存顾客清单、 产品目录,或者其他信息清单。表是某种特定类型数据的结构化清单

存储在表中的数据是同一种类型的数据或清单。决不应该将顾客的清单与订单的清单存储在同一个数据库表中,否则以后的检索和访问会很困难。 应该创建两个表,每个清单一个表。

数据库中的每个表都有一个名字来标识自己。 这个名字是唯一的,即数据库中没有其他表具有相同的名字。 虽然在相同数据库不能两次使用相同的表名,但在不同的数据库中完全可以使用相同的表名。

模式可以用来描述数据库中特定的表,也可以用来描述整个数据库(和其中表的关系)。模式是关于数据库和表的布局特性的信息。

4.4 行

表中的数据是按行存储的,所保存的每个记录存储在自己的行内。

你可能听到用户在提到时称其为数据库记录(record)。 这两个术语多半是可以交替使用的,但从技术上说,才是正确的术语。

4.5 列

表由组成。列存储表中某部分的信息。列是表中的一个字段。所有表都是由一个或多个列组成的。

数据库中每个列都有相应的数据类型。数据类型(datatype)定义了列可以存储哪些数据种类。数据类型限定了可存储在列中的数据种类(例如,防止在数值字段中录入字符值)。

数据类型及其名称是SQL不兼容的一个主要原因。

4.6 主键

表中每一行都应该有一列(或几列)可以唯一标识自己。 顾客表可以使用顾客编号,而订单表可以使用订单 ID。雇员表可以使用雇员 ID或雇员社会安全号。

主键(primary key) 是一列(或一组列),其值能够唯一标识表中每一行。没有主键,更新或删除表中特定行就极为困难,因为你不能保证操作只涉及相关的行。

提示 应该总是定义主键
虽然并不总是需要主键,但多数数据库设计者都会保证他们创建的每个表具有一个主键,以便于以后的数据操作和管理。

表中的任何列都可以作为主键,只要它满足以下条件

  • 任意两行都不具有相同的主键值;
  • 每一行都必须具有一个主键值(主键列不允许 NULL值);
  • 主键列中的值不允许修改或更新;
  • 主键值不能重用(如果某行从表中删除,它的主键不能赋给以后的新行)。

主键通常定义在表的一列上,但并不是必需这么做,也可以一起使用多个列作为主键。在使用多列作为主键时,上述条件必须应用到所有列,所有列值的组合必须是唯一的(但单个列的值可以不唯一)。

4.7 外键

外键是表中的一列,其值必须列在另一表的主键中。外键是保证引用完整性的极其重要部分。

外键有助防止意外删除。在定义外键后, DBMS不允许删除在另一个表中具有关联行的行。例如,不能删除关联订单的顾客。 删除该顾客的唯一方法是删除相关的订单(这表示还要删除相关的订单项)。由于需要一系列的删除,因而利用外键可以防止意外删除数据。

五、MySQL数据库管理系统

5.1 数据库(Database,简称DB)

数据库就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据。更简单的形象理解,数据库和我们生活中存放杂物的仓库性质一样,区别只是存放的东西不同。

5.2 数据表(table)

数据表是关系数据库中一个非常重要的对象,是其它对象的基础,也是一系列二维数组的集合,用来存储、操作数据的逻辑结构。

根据信息的分类情况,一个数据库中可能包含若干个数据表,每张表是由组成,记录一条数据,数据表就增加一行,每一列是由字段名字段数据集合组成,被称之为字段,每一列还有自己的多个属性,例如是否允许为空、默认值、长度、类型、存储编码、注释等。

5.3 数据库系统有3个主要的组成部分

1.数据库(Database System)用于存储数据的地方。
2.数据库管理系统(Database Management System,DBMS)用户管理数据库的软件。
3.数据库应用程序(Database Application)为了提高数据库系统的处理能力所使用的管理数据库的软件补充。

5.4 视图

视图是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,视图通常是有一个表或者多个表的行或列的子集。对视图的修改不影响基本表。它使得我们获取数据更容易,相比多表查询。

如下两种场景一般会使用到视图

不希望访问者获取整个表的信息,只暴露部分字段给访问者,所以就建一个虚表,就是视图。
查询的数据来源于不同的表,而查询者希望以统一的方式查询,这样也可以建立一个视图,把多个表查询结果联合起来,查询者只需要直接从视图中获取数据,不必考虑数据来源于不同表所带来的差异。

注意 这个视图是在数据库中创建的,而不是用代码创建的。

5.5 存储过程(Stored Procedure)

MySQL 5.0 版本开始支持存储过程。

存储过程就是为以后使用而保存的一条或多条 SQL语句。可将其视为批文件,虽然它们的作用不仅限于批处理。存储过程是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用

优点

  • 存储过程可封装,并隐藏复杂的商业逻辑。
  • 存储过程可以回传值,并可以接受参数。
  • 存储过程无法使用 SELECT 指令来运行,因为它是子程序,与查看表,数据表或用户定义函数不同。
  • 存储过程可以用在数据检验,强制实行商业逻辑等。

缺点

  • 存储过程,往往定制化于特定的数据库上,因为支持的编程语言不同。当切换到其他厂商的数据库系统时,需要重写原有的存储过程。
  • 存储过程的性能调校与撰写,受限于各种数据库系统。

精彩专题分享

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by