MySQL02-MySQL环境搭建

一.MySQL的卸载

1.1.停止MySQL服务

在卸载之前,先停止MySQL8.0的服务。按键盘上的“Ctrl + Alt + Delete”组合键或者Windows+R,然后输入services.msc,打开“任务管理器”对话框或者服务,可以在“服务”列表找到“MySQL8.0”的服务,如果现在“正在运行”状态,可以右键单击服务,选择“停止”选项停止MySQL8.0的服务,如图所示。
在这里插入图片描述
在这里插入图片描述

1.2.软件的卸载

  1. 通过控制面板方式
    卸载MySQL8.0的程序可以和其他桌面应用程序一样直接在“控制面板”选择“卸载程序”,并在程序列表中找到MySQL8.0服务器程序,直接双击卸载即可,如图所示。这种方式删除,数据目录下的数据不会跟着删除。
    在这里插入图片描述
  2. 通过360或电脑管家等软件卸载。
  3. 通过安装包提供的卸载功能卸载
    你也可以通过安装向导程序进行MySQL8.0服务器程序的卸载。
    ① 再次双击下载的mysql-installer-community-8.0.26.0.msi文件,打开安装向导。安装向导会自动检测已安装的MySQL服务器程序。
    ② 选择要卸载的MySQL服务器程序,单击“Remove”(移除),即可进行卸载。
    在这里插入图片描述③ 单击“Next”(下一步)按钮,确认卸载。
    在这里插入图片描述④ 弹出是否同时移除数据目录选择窗口。如果想要同时删除MySQL服务器中的数据,则勾选“Remove thedata directory”,如图所示。
    在这里插入图片描述⑤ 执行卸载。单击“Execute”(执行)按钮进行卸载。
    在这里插入图片描述
    ⑥ 完成卸载。单击“Finish”(完成)按钮即可。如果想要同时卸载MySQL8.0的安装向导程序,勾选“Yes,Uninstall MySQL Installer”即可,如图所示。
    在这里插入图片描述

1.3.残余文件的清理

如果再次安装不成功,可以卸载后对残余文件进行清理后再安装。

  1. 服务目录:mysql服务的安装目录。
  2. 数据目录:默认在C:\ProgramData\MySQL。(注:如果自己单独指定过数据目录,就找到自己的数据目录进行删除即可。
    在操作完以后,需要重启计算机,然后进行安装即可。如果仍然安装失败,需要继续操作如下1.4。

1.4.清理注册表(选做)

如果前几步做了,再次安装还是失败,那么可以清理注册表。
如何打开注册表编辑器:在系统的搜索框中输入 regedit

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL服务目录
删除
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL服务删除

注:注册表中的ControlSet001,ControlSet002,不一定是001和002,可能是ControlSet005、006之类。

1.5.删除环境变量配置

找到path环境变量,将其中关于mysql的环境变量删除,切记不要全部删除
例如:删除 C:\Program Files (x86)\mysql-8.0.26-winx64\bin 这个部分

在这里插入图片描述

二.MySQL的下载、安装、配置

2.1.简介

  1. MySQL Community Server 社区版本,开源免费,自由下载,但不提供官方技术支持,适用于
    大多数普通用户。
  2. MySQL Enterprise Edition 企业版本,需付费,不能在线下载,可以试用30天。提供了更多的
    功能和更完备的技术支持,更适合于对数据库的功能和可靠性要求较高的企业客户。
  3. MySQL Cluster 集群版,开源免费。用于架设集群服务器,可将几个MySQL Server封装成一个
    Server。需要在社区版或企业版的基础上使用。
  4. MySQL Cluster CGE 高级集群版,需付费。
    目前最新版本为 8.0.28 ,此前,8.0.0 在 2016.9.12日就发布了。
    此外,官方还提供了 MySQL Workbench (GUITOOL)一款专为MySQL设计的 图形界面管理工具 。MySQLWorkbench又分为两个版本,分别是 社区版 (MySQL Workbench OSS)、 商用版 (MySQL WorkbenchSE)。

2.2.软件的下载

  1. 下载地址
    https://dev.mysql.com/downloads/mysql/
  2. 在General Availability(GA) Releases中选择适合的版本
    Windows平台下提供两种安装文件:MySQL二进制分发版(.msi安装文件)和免安装版(.zip压缩文
    件)。一般来讲,应当使用二进制分发版,因为该版本提供了图形化的安装向导过程,比其他的分发版使用起来要简单,不再需要其他工具启动就可以运行MySQL。
  3. 这里在Windows 系统下推荐下载 MSI安装程序 ;点击 Go to Download Page 进行下载即可
    在这里插入图片描述在这里插入图片描述Windows下的MySQL8.0安装有两种安装程序:
    a. mysql-installer-web-community-8.0.26.0.msi 下载程序大小:2.3M;安装时需要联网安
    装组件。
    b. mysql-installer-community-8.0.26.0.msi 下载程序大小:435.7M;安装时离线安装即
    可。推荐。
    如果安装其他版本的话,选择 Archives ,接着选择MySQL相应版本即可。

2.3.MySQL8.0 版本的安装

MySQL下载完成后,找到下载文件,双击进行安装,具体操作步骤如下。

  1. 双击下载的mysql-installer-community-8.0.26.0.msi文件,打开安装向导。
  2. 打开“Choosing a Setup Type”(选择安装类型)窗口,在其中列出了5种安装类型,分别是
    Developer Default(默认安装类型)、Server only(仅作为服务器)、Client only(仅作为客户端)、Full(完全安装)、Custom(自定义安装)。这里选择“Custom(自定义安装)”类型按钮,单击“Next(下一步)”按钮。
    在这里插入图片描述
  3. 打开“Select Products” (选择产品)窗口,可以定制需要安装的产品清单。例如,选择“MySQLServer 8.0.26-X64”后,单击“→”添加按钮,即可选择安装MySQL服务器,如图所示。采用通用的方法,可以添加其他你需要安装的产品。
    在这里插入图片描述
  4. 此时如果直接“Next”(下一步),则产品的安装路径是默认的。如果想要自定义安装目录,则可以选中对应的产品,然后在下面会出现“Advanced Options”(高级选项)的超链接。
    在这里插入图片描述
  5. ProgramData目录(这是一个隐藏目录)。如果自定义安装目录,请避免“中文”目录。另外,建议服务目录和数据目录分开存放。
    在这里插入图片描述
  6. 在上一步选择好要安装的产品之后,单击“Next”(下一步)进入确认窗口,如图所示。单击
    “Execute”(执行)按钮开始安装。
    在这里插入图片描述
  7. 安装完成后在“Status”(状态)列表下将显示“Complete”(安装完成),如图所示。
    在这里插入图片描述

2.4. 配置MySQL8.0

MySQL安装之后,需要对服务器进行配置。具体的配置步骤如下。

  1. 在上一个小节的最后一步,单击“Next”(下一步)按钮,就可以进入产品配置窗口。
    在这里插入图片描述
    在这里插入图片描述
    其中,“Config Type”选项用于设置服务器的类型。单击该选项右侧的下三角按钮,即可查看3个选项,如图所示。
    在这里插入图片描述
  • Server Machine(服务器) :该选项代表服务器,MySQL服务器可以同其他服务器应用程序一起
    运行,例如Web服务器等。MySQL服务器配置成适当比例的系统资源。
  • Dedicated Machine(专用服务器) :该选项代表只运行MySQL服务的服务器。MySQL服务器配置
    成使用所有可用系统资源。
  1. 单击“Next”(下一步)按钮,打开设置授权方式窗口。其中,上面的选项是MySQL8.0提供的新的授权方式,采用SHA256基础的密码加密方法;下面的选项是传统授权方法(保留5.x版本兼容性)。
    在这里插入图片描述
  2. 单击“Next”(下一步)按钮,打开设置服务器root超级管理员的密码窗口,如图所示,需要输入
    两次同样的登录密码。也可以通过“Add User”添加其他用户,添加其他用户时,需要指定用户名、允许该用户名在哪台/哪些主机上登录,还可以指定用户角色等。
    在这里插入图片描述
  3. 单击“Next”(下一步)按钮,打开设置服务器名称窗口,如图所示。该服务名会出现在Windows
    服务列表中,也可以在命令行窗口中使用该服务名进行启动和停止服务。本书将服务名设置为
    “MySQL80”。如果希望开机自启动服务,也可以勾选“Start the MySQL Server at System Startup”选项(推荐)。
    下面是选择以什么方式运行服务?可以选择“Standard System Account”(标准系统用户)或者“Custom User”(自定义用户)中的一个。这里推荐前者。
    在这里插入图片描述在这里插入图片描述
  4. 完成配置,如图所示。单击“Finish”(完成)按钮,即可完成服务器的配置。
    在这里插入图片描述
  5. 如果还有其他产品需要配置,可以选择其他产品,然后继续配置。如果没有,直接选择“Next”
    (下一步),直接完成整个安装和配置过程。
    在这里插入图片描述
  6. 结束安装和配置
    在这里插入图片描述如果不配置MySQL环境变量,就不能在命令行直接输入MySQL登录命令。下面说如何配置MySQL的环境变量:
    步骤1:在桌面上右击【此电脑】图标,在弹出的快捷菜单中选择【属性】菜单命令。
    步骤2:打开【系统】窗口,单击【高级系统设置】链接。
    步骤3:打开【系统属性】对话框,选择【高级】选项卡,然后单击【环境变量】按钮。
    步骤4:打开【环境变量】对话框,在系统变量列表中选择path变量。
    步骤5:单击【编辑】按钮,在【编辑环境变量】对话框中,将MySQL应用程序的bin目录(C:\Program Files (x86)\mysql-8.0.26-winx64\bin)添加到变量值中,用分号将其与其他路径分隔开。
    在这里插入图片描述

步骤6:添加完成之后,单击【确定】按钮,这样就完成了配置path变量的操作,然后就可以直接输入MySQL命令来登录数据库了。

2.5. 安装失败问题

2.5.1.无法打开MySQL8.0软件安装包或者安装过程中失败,如何解决?

在运行MySQL8.0软件安装包之前,用户需要确保系统中已经安装了.Net Framework相关软件,如果缺少此软件,将不能正常地安装MySQL8.0软件。
在这里插入图片描述
在这里插入图片描述另外,还要确保Windows Installer正常安装。windows上安装mysql8.0需要操作系统提前已安装好
Microsoft Visual C++ 2015-2019。
在这里插入图片描述

2.5.2. 卸载重装MySQL失败?

该问题通常是因为MySQL卸载时,没有完全清除相关信息导致的。
解决办法是,把以前的安装目录删除。如果之前安装并未单独指定过服务安装目录,则默认安装目录是“C:\Program Files\MySQL”,彻底删除该目录。同时删除MySQL的Data目录,如果之前安装并未单独指定过数据目录,则默认安装目录是“C:\ProgramData\MySQL”,该目录一般为隐藏目录。删除后,重新安装即可。

2.5.3. 如何在Windows系统删除之前的未卸载干净的MySQL服务列表?

操作方法如下,在系统“搜索框”中输入“cmd”,按“Enter”(回车)键确认,弹出命令提示符界面。然后输入“sc delete MySQL服务名”,按“Enter”(回车)键,就能彻底删除残余的MySQL服务了。

三. MySQL的登录

3.1. 服务的启动与停止

MySQL安装完毕之后,需要启动服务器进程,不然客户端无法连接数据库。
在前面的配置过程中,已经将MySQL安装为Windows服务,并且勾选当Windows启动、停止时,MySQL也自动启动、停止。

3.1.2. 方式一:通过服务

  1. 打开windows服务
    方式1:计算机(点击鼠标右键)→ 管理(点击)→ 服务和应用程序(点击)→ 服务(点
    击)。
    方式2:控制面板(点击)→ 系统和安全(点击)→ 管理工具(点击)→ 服务(点击)。
    方式3:任务栏(点击鼠标右键)→ 启动任务管理器(点击)→ 服务(点击)。
    方式4:单击【开始】菜单,在搜索框中输入“services.msc”,按Enter键确认。
  2. 找到MySQL(点击鼠标右键)→ 启动或停止(点击)在这里插入图片描述

3.1.2. 方式二:通过CMD命令行

# 启动 MySQL 服务命令:
net start MySQL服务名
# 停止 MySQL 服务命令:
net stop MySQL服务名

注:出现该错误需要使用管理员模式
在这里插入图片描述在这里插入图片描述在这里插入图片描述
说明:

  1. start和stop后面的服务名应与之前配置时指定的服务名一致。
  2. 如果当你输入命令后,提示“拒绝服务”,请以 系统管理员身份 打开命令提示符界面重新尝试。

3.2. 自带客户端的登录与退出

当MySQL服务启动完成后,便可以通过客户端来登录MySQL数据库。注意:确认服务是开启的。

3.2.1. MySQL自带客户端

开始菜单 → 所有程序 → MySQL → MySQL 8.0 Command Line Client
在这里插入图片描述说明:仅限于root用户
格式:mysql -h 主机名 -P 端口号 -u 用户名 -p密码(-P 端口可以省略)
在这里插入图片描述注:

  1. -p与密码之间不能有空格,其他参数名与参数值之间可以有空格也可以没有空格。
  2. 密码建议在下一行输入,保证安全。
  3. 客户端和服务器在同一台机器上,所以输入localhost或者IP地址127.0.0.1。同时,因为是连接本
    机: -hlocalhost就可以省略,如果端口号没有修改:-P3306也可以省略。
    连接成功后,有关于MySQL Server服务版本的信息,还有第几次连接的id标识。
    也可以在命令行通过以下方式获取MySQL Server服务版本的信息:
mysql -V
mysql --version
或登录后,通过以下方式查看当前版本信息:
mysql> select version();

在这里插入图片描述退出MySQL

exit
或
quit

在这里插入图片描述

四. MySQL演示使用

4.1. MySQL的使用演示

4.1.1. 查看所有的数据库

show databases;

在这里插入图片描述

  1. information_schema: MySQL 系统自带的数据库,主要保存 MySQL 数据库服务器的系统信息,比如数据库的名称、数据表的名称、字段名称、存取权限、数据文件 所在的文件夹和系统使用的文件夹,等等。
  2. performance_schema: MySQL 系统自带的数据库,可以用来监控 MySQL 的各类性能指标。
  3. sys: MySQL 系统自带的数据库,主要作用是以一种更容易被理解的方式展示 MySQL 数据
    库服务器的各类性能指标,帮助系统管理员和开发人员监控 MySQL 的技术性能。
  4. mysql:保存了 MySQL 数据库服务器运行时需要的系统信息,比如数据文件夹、当前使用的
    字符集、约束检查信息,等等。

4.2. 创建自己的数据库

create database 数据库名;

创建test数据库,该名称不能与已经存在的数据库重名。

create database test;

在这里插入图片描述

4.3. 使用自己的数据库

use 数据库名;

使用test数据库

use test;

在这里插入图片描述
注:如果没有使用use语句,后面针对数据库的操作也没有加“数据名”的限定,那么会报“ERROR 1046(3D000): No database selected”(没有选择数据库)
使用完use语句之后,如果接下来的SQL都是针对一个数据库操作的,那就不用重复use了,如果要针对另一个数据库操作,那么要重新use。

4.4. 查看某个库的所有表格

show tables from 数据库名;

4.5. 创建新的表格

create table 表名称(
字段名 数据类型,
字段名 数据类型
);

注:如果是最后一个字段,后面就用加逗号,因为逗号的作用是分割每个字段。

#创建学生表
create table student(
id int,
name varchar(20) #说名字最长不超过20个字符
);

在这里插入图片描述

4.6. 查看一个表的数据

select * from 数据库表名称;
#查看学生表的数据
select * from student;

4.7. 添加一条记录

insert into 表名称 values(值列表);
#添加两条记录到student表中
insert into student values(1,'张三');
insert into student values(2,'李四');

在这里插入图片描述

4.8. 查看表的创建信息

show create table 表名称\G
#查看student表的详细创建信息
show create table student\G
 Table: student
Create Table: CREATE TABLE `student` (
  `id` int DEFAULT NULL,
  `name` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3
1 row in set (0.00 sec)

在这里插入图片描述

4.9. 查看数据库的创建信息

show create database 数据库名\G
#查看test数据库的详细创建信息
show create database test \G
       Database: test
Create Database: CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */ /*!80016 DEFAULT ENCRYPTION='N' */
1 row in set (0.00 sec)

4.10. 删除表格

drop table 表名称;
#删除学生表
drop table student;

4.11. 删除数据库

drop database 数据库名;
#删除atguigudb数据库
drop database test

4.12. 字符集

在MySQL 8.0版本之前,默认字符集为latin1,utf8字符集指向的是utf8mb3。网站开发人员在数据库设计的时候往往会将编码修改为utf8字符集。如果遗忘修改默认的编码,就会出现乱码的问题。从MySQL 8.0开始,数据库的默认编码改为 utf8mb4 ,从而避免了上述的乱码问题。

五. MySQL图形化管理工具

MySQL图形化管理工具极大地方便了数据库的操作与管理,常用的图形化管理工具有:MySQL
Workbench、phpMyAdmin、Navicat Preminum、MySQLDumper、SQLyog、dbeaver、MySQL ODBC Connector。
俺使用的是SQLyog:
SQLyog 是业界著名的 Webyog 公司出品的一款简洁高效、功能强大的图形化 MySQL 数据库管理工具。这款工具是使用C++语言开发的。该工具可以方便地创建数据库、表、视图和索引等,还可以方便地进行插入、更新和删除等操作,同时可以方便地进行数据库、数据表的备份和还原。该工具不仅可以通过SQL文件进行大量文件的导入和导出,还可以导入和导出XML、HTML和CSV等多种格式的数据。 下载地址: http://www.webyog.com/ ,读者也可以搜索中文版的下载地址。

5.1.SQLyog

在这里插入图片描述在这里插入图片描述

5.2. 可能出现连接问题

有些图形界面工具,特别是旧版本的图形界面工具,在连接MySQL8时出现“Authentication plugin
‘caching_sha2_password’ cannot be loaded”错误。
在这里插入图片描述
出现这个原因是MySQL8之前的版本中加密规则是mysql_native_password,而在MySQL8之后,加密规则是caching_sha2_password。解决问题方法有两种,
第一种是升级图形界面工具版本,第二种是把MySQL8用户登录密码加密规则还原成mysql_native_password。
第二种解决方案如下,用命令行登录MySQL数据库之后,执行如下命令修改用户密码加密规则并更新用户密码,这里修改用户名为“root@localhost”的用户密码规则为“mysql_native_password”,密码值为
“123456”

#使用mysql数据库
USE mysql;
#修改'root'@'localhost'用户的密码规则和密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'abc123';
#刷新权限
FLUSH PRIVILEGES;

在这里插入图片描述

六. MySQL目录结构与源码

6.1. 主要目录结构

MySQL的目录结构说明
bin目录所有MySQL的可执行文件。如:mysql.exe
MySQLInstanceConfig.exe数据库的配置向导,在安装时出现的内容
data目录系统数据库所在的目录
my.ini文件MySQL的主要配置文件
c:\ProgramData\MySQL\MySQL Server 8.0\data\用户创建的数据库所在的目录

6.2. MySQL 源代码获取

首先,你要进入 MySQL下载界面。 这里你不要选择用默认的“Microsoft Windows”,而是要通过下拉栏,找到“Source Code”,在下面的操作系统版本里面, 选择 Windows(Architecture Independent),然后点击下载。
在这里插入图片描述接下来,把下载下来的压缩文件解压,我们就得到了 MySQL 的源代码。
MySQL 是用 C++ 开发而成的,我简单介绍一下源代码的组成。
mysql-8.0.22 目录下的各个子目录,包含了 MySQL 各部分组件的源代码:
在这里插入图片描述
sql 子目录是 MySQL 核心代码;
libmysql 子目录是客户端程序 API;
mysql-test 子目录是测试工具;
mysys 子目录是操作系统相关函数和辅助函数;
源代码可以用记事本打开查看,如果你有 C++ 的开发环境,也可以在开发环境中打开查看。
在这里插入图片描述

七. 问题总结

7.1. root用户密码忘记,重置的操作

  1. 通过任务管理器或者服务管理,关掉mysqld(服务进程) 。
  2. 通过命令行+特殊参数开启mysqld mysqld --defaults-file=“D:\ProgramFiles\mysql\MySQLServer5.7Data\my.ini” --skip-grant-tables。
  3. 此时,mysqld服务进程已经打开。并且不需要权限检查。
  4. mysql -uroot 无密码登陆服务器。另启动一个客户端进行。
  5. 修改权限表
    (1) use mysql;
    (2)update user set authentication_string=password(‘新密
    码’) where user=‘root’ and Host=‘localhost’;
    (3)flush privileges;
  6. 通过任务管理器,关掉mysqld服务进程。
  7. 再次通过服务管理,打开mysql服务。
  8. 即可用修改后的新密码登陆。

7.2. mysql命令报“不是内部或外部命令

如果输入mysql命令报“不是内部或外部命令”,把mysql安装目录的bin目录配置到环境变量path中。如
下:
在这里插入图片描述

7.3. ERROR 1046 (3D000): No database selected

解决方案一:就是使用“USE 数据库名;”语句,这样接下来的语句就默认针对这个数据库进行操作。
解决方案二:就是所有的表对象前面都加上“数据库.”。

7.4. 命令行客户端的字符集问题

mysql> INSERT INTO t_stu VALUES(1,'张三','男');
ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'sname' at
row 1

原因:服务器端认为你的客户端的字符集是utf-8,而实际上你的客户端的字符集是GBK。

查看所有字符集:SHOW VARIABLES LIKE 'character_set_%';

在这里插入图片描述解决方案,设置当前连接的客户端字符集 “SET NAMES GBK;”

7.5. 修改数据库和表的字符编码

修改编码:

  1. 先停止服务
  2. 修改my.ini文件
  3. 重新启动服务
    如果是在修改my.ini之前建的库和表,那么库和表的编码还是原来的Latin1,要么删了重建,要么使用
    alter语句修改编码。
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值