当前位置: 首页 > news >正文

02_MySQL环境搭建

1.MySQL的卸载

步骤1︰停止MySQL服务

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

在这里插入图片描述

步骤2:软件的卸载

方式1:通过控制面板方式

1.卸载MySQL软件。卸载MysQL8.0的程序可以和其他桌面应用程序一样直接在“控制面板"选择“卸载程序”,并在程序列表中找到MySQL8.0服务器程序,直接双击卸载即可,如图所示。这种方式删除,数据目录下的数据不会跟着删除。

2.删除数据库文件。软件被卸载了,但是通过软件产生的文件数据还在例如通过WPS写一个.doc文件,把WPS卸载后,.doc文件依旧存在。需要手动进行删除

3.删除旧版环境变量。我的电脑------>属性------->高级系统设置------->删除环境变量
在这里插入图片描述

方式2:通过360或电脑管家等软件卸载

方式3:通过安装包提供的卸载功能卸载

1.你也可以通过安装向导程序进行MySQL8.0服务器程序的卸载。
再次双击下载的mysql-installer-community-8.0.26.0.msi文件,打开安装向导。安装向导会自动检测已安装的MySQL服务器程序。

2.选择要卸载的MySQL服务器程序,单击“Remove”(移除),即可进行卸载。
在这里插入图片描述
3.单击“Next”(下一步)按钮,确认卸载。
在这里插入图片描述
4.弹出是否同时移除数据目录选择窗口。如果想要同时删除MysQL服务器中的数据,则勾选“Remove the datadirectory”,如图所示。
在这里插入图片描述
5.执行卸载。单击“Execute”(执行)按钮进行卸载。
在这里插入图片描述
6.完成卸载。单击"Finish”(完成)按钮即可。如果想要同时卸载MySQL8.o的安装向导程序,勾选"Yes,UninstallMysQL Installer”即可,如图所示。

在这里插入图片描述

步骤3:残余文件的清理

删除数据库文件。软件被卸载了,但是通过软件产生的文件数据还在例如通过WPS写一个.doc文件,把WPS卸载后,.doc文件依旧存在。需要手动进行删除

步骤4∶清理注册表(选做)

如果卸载的是MySQL5.7版本就需要做这一步
在这里插入图片描述
在这里插入图片描述

步骤5:删除环境变量配置

删除旧版环境变量。我的电脑------>属性------->高级系统设置------->删除环境变量
在这里插入图片描述
在这里插入图片描述

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

2.1 MySQL的4大版本

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

2.2软件的下载

下载地址:官网
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下载5.0版本
在这里插入图片描述

2.3 MySQL8.0版本的安装

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
至此软件就装好了,以下就需要配置

2.4配置MySQL8.0

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

在这里插入图片描述

在这里插入图片描述

2.5配置MySQL8.0环境变量

如果不配置MysQL环境变量,就不能在命令行直接输入MySQL登录命令。下面说如何配置MySQL的环境变量:

  • 步骤1:在桌面上右击【此电脑】图标,在弹出的快捷菜单中选择【属性】菜单命令。
  • 步骤2:打开【系统】窗口,单击【高级系统设置】链接。
  • 步骤3:打开【系统属性】对话框,选择【高级】选项卡,然后单击【环境变量】按钮。
  • 步骤4:打开【环境变量】对话框,在系统变量列表中选择path变量。
  • 步骤5∶单击【编辑】按钮,在【编辑环境变量】对话框中,将MySQL应用程序的bin目录(C:\Program Files\MySQL\MySQL Server 8.0\bin)添加到变量值中,用分号将其与其他路径分隔开。
  • 步骤6∶添加完成之后,单击【确定】按钮,这样就完成了配置path变量的操作,然后就可以直接输入MysQL命令来登录数据库了。

2.6 MySQL5.7版本的安装、配置

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

2.7安装失败

问题MySQL的安装和配置是一件非常简单的事,但是在操作过程中也可能出现问题,特别是初学者。

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

在运行MysQL8.0软件安装包之前,用户需要确保系统中已经安装了.Net Framework相关软件,如果缺少此软件,将不能正常地安装MysQL8.0软件。

在这里插入图片描述
解决方案:到这个地址https://www.microsoft.com/en-us/download/details.aspx?id=42642下载Microsoft .NETFramework 4.5并安装后,再去安装MySQL。

另外,还要确保Windows Installer正常安装。windows上安装mysql8.o需要操作系统提前已安装好Microsoft VisualC++ 2015-2019。

在这里插入图片描述
在这里插入图片描述
解决方案同样是,提前到微软官网https:/support.microsoft.com/en-us/topic/the-latest-supported-visual-c-downloads-2647da03-1eea-4433-9aff-95f26a218cc0,下载相应的环境。

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

问题3:如何在windows系统删除之前的未卸载干净的MySQL服务列表?
操作方法如下,在系统"搜索框"中输入“cmd”,按"Enter”(回车)键确认,弹出命令提示符界面。然后输入“scdelete MySQL服务名",按“Enter”(回车)键,就能彻底删除残余的MySQL服务了。

3.MySQL的登录

3.1服务的启动与停止

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

方式1:使用图形界面工具

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

在这里插入图片描述

方式2:使用命令行工具

以管理员身份运行命令

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

在这里插入图片描述

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

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

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

登录方式1:MySQL自带客户端

开始菜单→所有程序→MySQL→MySQL 8.0Command Line Client
在这里插入图片描述
在这里插入图片描述

登录方式2: windows命令行

在这里插入图片描述

退出登录

exit;

quit;

4.MySQL演示使用

4.1 MySQL的使用演示

1、查看所有的数据库

show databases;

“information_schema是MySQL系统自带的数据库,主要保存MySQL数据库服务器的系统信息,比如数据库的名称、数据表的名称、字段名称、存取权限、数据文件所在的文件夹和系统使用的文件夹,等等

“performance_schema是 MySQL系统自带的数据库,可以用来监控MySQL的各类性能指标。

“sys"数据库是MySQL系统自带的数据库,主要作用是以一种更容易被理解的方式展示MySQL数据库服务器的各类性能指标,帮助系统管理员和开发人员监控MySQL的技术性能。

“mysq1"数据库保存了MySQL数据库服务器运行时需要的系统信息,比如数据文件夹、当前使用的字符集.约束检查信息,等等

为什么Workbench里面我们只能看到“demo”和“sys”这2个数据库呢?

这是因为,Workbench是图形化的管理王具,主要面向开发人员,“demo“和"sys"这2个数据库已经够用了。如果有特殊需求,比如,需要监控MySQL数据库各项性能指标、直接操作MysQL数据库系统文件等,可以由DBA通过sQL语句,查看其它的系统数据库。

2、创建自己的数据库

create database数据库名;
:
创建atguigudb数据库,该名称不能与已经存在的数据库重名。
create database atguigudb ;

3、使用自己的数据库

use数据库名;

使用atguigudb数据库
use atguigudb ;

说明:如果没有使用use语句,后面针对数据库的操作也没有加“数据名"的限定,那么会报“ERROR 1046(3Dooo);No database selected”(没有选择数据库)

使用完use语句之后,如果接下来的SQL都是针对一个数据库操作的,那就不用重复use了,如果要针对另一个数据库操作,那么要重新use。

4、查看某个库的所有表格

show tables ;#要求前面有use语句

show tables from 数据库名;

5、创建新的表格

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

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

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

6、查看一个表的数据

select * from 数据库表名称;

查看学生表的数据
select * from student;

7、添加一条记录

insert into表名称 values(值列表);

添加两条记录到student表中
insert into student values( 1,‘张三’);
insert into student values(2,‘李四’);

报错:

mysql> insert into student values( 1,‘张三");
ERROR 1366 (HY900 ): Incorrect string value: ’ lxD5IxC51xC8LxFD’ for column ‘name’ at row 1mysql> insert into student values(2,‘李四’);
ERROR 1366 (HY000): Incorrect string value: ‘lxCB\xEE1xCB\xC4’ for column ‘name’ at row 1mysql> show create table student ;

字符集的问题。
8、查看表的创建信息

show create table表名称\G

查看student表的详细创建信息
show create table student\G

结果如下:

***************************1. row ***************************
Table : student
Create Table : CREATE TABLE ‘student’ (
`id’ int( 11)DEFAULT NULL,
'name ’ varchar (2日)DEFAULT NULL
)ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (8.00 sec)

上面的结果显示student的表格的默认字符集是“latin1”不支持中文。

9、查看数据库的创建信息

show create database数据库名\G

#查看atguigudb数据库的详细创建信息show create database atguigudb\G

#结果如下
**************************1. row ***************************
Database: atguigudb
create Database: CREATE DATABASE ‘atguigudb`/
!40100 DEFAULT CHARACTER SET latin1 */
1 row in set (8.88 sec)

上面的结果显示atguigudb数据库也不支持中文,字符集默认是latin1。

10、删除表格

drop table表名称;

#删除学生表
drop table student ;

11、删除数据库

drop database数据库名;

#删除atguigudb数据库
drop database atguigudb;

4.2 MySQL的编码设置

MySQL5.7中

问题再现:命令行操作sql乱码问题

mysql>INSERT INTO t_stu VALUES(1,‘张三’,‘男’);
ERROR 1366 (HY800 ) : Incorrect string value: ’ lxD51xC51xC8\xFD’ for column ‘sname’ at row 1

问题解决
步骤1:查看编码命令

show variables like ‘character_%’ ;
show variables like ‘collation_%’;

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

步骤2:修改mysql的数据目录下的my.ini配置文件

[mysq1]#大概在63行左右,在其下添加

default-character-set=utf8#默认字符集

[mysqld]#大概在76行左右,在其下添加

character-set-server=utf8
collation-server=utf8_general_ci

在这里插入图片描述
重启服务
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
已经将数据库的字符集该为utf8,为什么插入汉字还是不行,明明已经改过了?

因为造表时是修改之前的,表依旧遵循latin,此时可以将表,包括数据库再改成utf8。但是比较麻烦,所以直接删除数据库,重新按新规则建库建表。
在这里插入图片描述
在这里插入图片描述

MySQL8.0中

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

在这里插入图片描述

5.MySQL图形化管理工具

MysQL图形化管理工具极大地方便了数据库的操作与管理Ⅰ常用的图形化管理工具有:MySQL Workbench、phpMyAdmin、Navicat Preminum、MySQLDumper、sQLyog、dbeaver、MySQL ODBC Connector。

工具1.MySQL Workbench

MySQL官方提供的图形化管理工具MysQL Workbench完全支持MySQL 5.0以上的版本。MySQL Workbench分为社区版和商业版,社区版完全免费,而商业版则是按年收费。

MySQL Workbench为数据库管理员、程序开发者和系统规划师提供可视化设计、模型建立、以及数据库管理功能。它包含了用于创建复杂的数据建模ER模型,正向和逆向数据库工程,也可以用于执行通常需要花费大量时间的、难以变更和管理的文档任务。

下载地址

首先,我们点击windows左下角的“开始"按钮,如果你是Win10系统,可以直接看到所有程序。接着,找到“MySQL”,点开,找到"“MySQL Workbench 8.o CE”。点击打开Workbench,如下图所示:
在这里插入图片描述
左下角有个本地连接,点击,录入Root 的密码,登录本地MySQL数据库服务器,如下图所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这是—个图形化的界面,介绍下这个界面。

  • 上方是菜单。左上方是导航栏,这里我们可以看到MySQL数据库服务器里面的数据库,包括数据表、视图、存储过程和函数;左下方是信息栏,可以显示上方选中的数据库、数据表等对象的信息。
  • 中间上方是工作区,你可以在这里写SQL语句,点击上方菜单栏左边的第三个运行按钮,就可以执行工作区的SQL语句了。
  • 中间下方是输出区,用来显示SQL语句的运行情况,包括什么时间开始运行的、运行的内容、运行的输出,以及所花费的时长等信息。

工具2.Navicat

Navicat MysQL是一个强大的MysQL数据库服务器管理和开发工具。它可以与任何3.21或以上版本的MySQL一起工作,支持触发器、存储过程、函数、事件、视图、管理用户等,对于新手来说易学易用。其精心设计的图形用户界面(GUI)可以让用户用一种安全简便的方式来快速方便地创建、组织、访问和共享信息。Navicat支持中文,有免费版本提供。

下载地址

在这里插入图片描述

工具3.SQLyog

在这里插入图片描述

工具4: dbeaver

DBeaver是一个通用的数据库管理工具和sQL客户端,支持所有流行的数据库: MySQL、PostgreSQL、SQLite.Oracle、DB2、SQL Server、Sybase、MS Access、Teradata、Firebird、Apache Hive、Phoenix、Presto等。DBeaver比大多数的sQL管理工具要轻量,而且支持中文界面。DBeaver社区版作为一个免费开源的产品,和其他类似的软件相比,在功能和易用性上都毫不逊色。

唯一需要注意是DBeaver是用Java编程语言开发的,所以需要拥有JDK (Java Development ToolKit)环境。如果电脑上没有JDK,在选择安装DBeaver组件时,勾选“Include Java”即可。

下载地址

在这里插入图片描述

可能出现连接问题:

在这里插入图片描述
原因:
出现这个原因是MySQL8之前的版本中加密规则是mysql_native_password,而在MySQL8之后,加密规则是
caching_sha2_password。

解决问题方法有两种,
第一种是升级图形界面工具版本,第二种是把MySQL8用户登录密码加密规则还原成mysql_native_password。

第二种解决方案如下,用命令行登录MySQL数据库之后,执行如下命令修改用户密码加密规则并更新用户密码,这里修改用户名为“root@localhost""的用户密码规则为“mysql_native_password”,密码值为“123456”,如图所示。

在这里插入图片描述

修改:

在这里插入图片描述

  • USE mysql;

  • ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘xsy123’;

  • FLUSH PRIVILEGES;
    在这里插入图片描述

6.MySQL目录结构与源码

6.1主要目录结构

在这里插入图片描述

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\mysq(\MysQLServer5.7Datalmy.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:即可用修改后的新密码登陆。

问题2: mysql命令报“不是内部或外部命令”

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

问题3:错误ERROR:没有选择数据库就操作表格和数据

ERROR 1046 (3Do00): No database selected

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

问题4:命令行客户端的字符集问题

mysql> INSERT INTO t_stu VALUES(1,'张三",‘男’);
ERROR 1366 (HYB00 ) : Incorrect string value: '\xD5NxC5\XG8NXFD’ for column 'sname at row 1

原因:服务器端认为你的客户端的字符集是utf-8,而实际上你的客户端的字符集是GBK。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

问题5:修改数据库和表的字符编码

修改编码:

(⑴)先停止服务,(2)修改my.ini文件(3)重新启动服务
说明:

如果是在修改my.ini之前建的库和表,那么库和表的编码还是原来的Latin1,要么删了重建,要么使用alter语句修改编码。

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

小结

1.安装好MySQL之后在windows系统中哪些位置能看到MySQL?

  • MySQL DBMS软件的安装位置。C:\Program Files\MySQL\MySQL Server 5.7\bin
  • MySQL数据库文件的存放位置。C:\ProgramData \MySQL \MySQL Server 8.0\Data
  • MysQL DBMS的配置文件。C: \ProgramData\MySQL\MySQL Server 8.0\my.ini
  • MySQL的服务(要想通过客户端能够访问MySQL的服务器,必须保证服务是开启状态的)
  • MySQL的path环境变量

⒉.卸载MySQL主要卸载哪几个位置的内容?

  • 使用控制面板的软件卸载,去卸载MySQL DBMS软件的安装位置。C:\Program Files\MySQL\MySQL Server 5.7\bin

  • 手动删除数据库文件。C:\ProgramData\MySQL\MySQL Server 8.0\Data

  • 删除MySQL的环境变量

  • MySQL的服务进入注册表删除。( regedit )

  • 务必重启电脑

3.MySQL5.7在配置完以后,如何修改配置文件?

在这里插入图片描述

4.熟悉常用的数据库管理和操作的工具

  • 方式1: windows自带的cmd
  • 方式2: mysql数据库自带的命令行窗口
  • 方式3:图形化管理工具:Navicat、SQLyog、dbeaver等。

相关文章:

  • 澳门网站维护骗局/百度风云搜索榜
  • a站免费最好看的电影片推荐/泰安做百度推广的公司
  • 电子商务网站规划的原则/沪指重上3000点
  • 广东如何做网站设计/爱站网关键词搜索工具
  • 手机可怎么样做网站/谷歌推广怎么开户
  • 做电影网站需要哪些条件/武汉网站seo推广公司
  • codeblock 常见问题
  • 网络版本计算器(再谈“协议“)
  • C++类和对象详解(下篇)
  • Intel汇编-把内存块的值加载回FPU环境中
  • 做网赚项目那么多,最好最擅长的!
  • 在本地安装CentOs虚拟机的过程
  • 牛客JS刷题
  • 5.MongoDB系列之索引(二)
  • 0061 Set接口
  • TDesign-starter-React
  • 2022 年,阿里内推 Java 后端面试题,文末附面试福利
  • 32、JAVA进阶——解析XML技术