MySQL安装和配置的两种方式以及源代码

541 阅读6分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路

引言

本文主要介绍了MySQL安装配置的两种方式,并简单介绍了一下MySQL源代码。

MySQL的安装和配置主要有两种方式:

  • 一种是下载.zip包解压缩后,编写配置文件进行配置;
  • 另一种是下载.msi文件引导安装。 个人比较推荐第一种,第二种可能会出现安装失败的情况。

1. 压缩包安装配置

压缩包就是MySQL Community Server (Archived Versions),不包含workbench之类的。

下载地址:downloads.mysql.com/archives/co…

image.png

安装步骤:

1.解压

2.把这个包放到电脑环境目录下面

3.配置环境变量 path:D:\Environment\mysql-8.0.28\bin

4.在D:\Environment\mysql-8.0.28\ 新建mysql配置文件my.ini

[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\Environment\mysql-8.0.28
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=D:\Environment\mysql-8.0.28\sqldata
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

5.启动管理员模式下的CMD,运行以下命令:

cd /d D:\Environment\mysql-8.0.27\bin


mysqld --initialize --console

执行完成后,会输出root用户初始默认密码:

image.png

NIe6ylFa-SY3就是初始密码,后续登录需要用到,登陆后修改密码。

继续输入以下安装命令:

mysqld install

启动输入以下命令:

net start mysql

登录本机的 MySQL 数据库,只需要输入以下命令即可:

mysql -u root -p

按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:输入之前的初始密码

Enter password:

现在已经进入mysql环境:

使用ALTER修改root用户密码,方法为 ALTER user <'root'@'localhost'> IDENTIFIED BY '新密码'。如下:

ALTER user 'root'@'localhost' IDENTIFIED BY 'Mima123#'

此处有两点需要注意:

1、不需要flush privileges来刷新权限。

2、密码要包含大写字母,小写字母,数字,特殊符号。

修改成功; 重新使用用户名密码登录即可;

但有时候不想密码那么复杂

执行下面三个命令。(记得带上分号)

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;

image.png

mysq>  加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。

 

安装之后如果有问题想重装mysql,可以输入以下命令清空mysql服务:

sc delete mysql

2. 引导安装

.msi文件下载官网:dev.mysql.com/downloads/i…

image.png

按照引导步骤安装就行,能不能成功就看你电脑环境有没有问题了。本人在mac上安装过多次没有问题,在Windows上偶尔失败过,重装都没有解决,最终还是选择了第一种安装MySQL Community Server (Archived Versions)

官方教程:

Linux 平台安装和配置:dev.mysql.com/doc/refman/…

macOS 平台上安装和配置:dev.mysql.com/doc/refman/…

介绍下安装过程中显示的关键组件的作用:

  1. MySQL Server:是 MySQL 数据库服务器,这是 MySQL 的核心组件。

  2. MySQL Workbench:是一个管理 MySQL 的图形工具。

  3. MySQL Shell:是一个命令行工具。除了支持 SQL 语句,它还支持 JavaScript 和 Python 脚本,并且支持调用 MySQL API 接口。

  4. MySQL Router:是一个轻量级的插件,可以在应用和数据库服务器之间,起到路由和负载均衡的作用。听起来有点复杂,我们来想象一个场景:假设你有多个 MySQL 数据库服务器,而前端的应用同时产生了很多数据库访问请求,这时,MySQL Router 就可以对这些请求进行调度,把访问均衡地分配给每个数据库服务器,而不是集中在一个或几个数据库服务器上。

  5. Connector/ODBC:是 MySQL 数据库的 ODBC 驱动程序。ODBC 是微软的一套数据库连接标准,微软的产品(比如 Excel)就可以通过 ODBC 驱动与 MySQL 数据库连其他的组件,主要用来支持各种开发环境与 MySQL 的连接。

服务器类别配置:

有 3 个选项,分别是开发计算机(Development Computer)、服务器计算机(Sever Computer)和专属计算机(Dedicated Computer)。它们的区别在于,MySQL 数据库服务器会占用多大的内存。

MySQL 数据库的连接方式配置

有 3 个选项:网络通讯协议(TCP/IP)、命名管道(Named Pipe)和共享内存(Shared Memory)。命名管道和 共享内存的优势是速度很快,但是,它们都有一个局限,那就是只能从本机访问 MySQL数据库服务器。所以,这里我们选择默认的网络通讯协议方式,这样的话,MySQL 数据库服务就可以通过网络进行访问了。

MySQL 默认的 TCP/IP 协议访问端口是 3306,后面的 X 协议端口默认是 33060,这里我们都不做修改。MySQL 的 X 插件会用到 X 协议,主要是用来实现类似 MongoDB 的文件存储服务。

身份验证配置

选择系统推荐的基于 SHA256 的新加密算法 caching_sha2_password。因为跟老版本的加密算法相比,新的加密算法具有相同的密码 也不会生成相同的加密结果的特点,因此更加安全。

设置密码和用户权限

设置 Root 用户的密码。Root 是 MySQL 的超级用户,拥有 MySQL 数据库访问的最高权限。

配置 Windows 服务

最后,要把 MySQL 服务器配置成 Windows 服务。Windows 服务的好处在于,可以让 MySQL 数据库服务器一直在 Windows 环境中运行。而且,我们可以让 MySQL 数据库服务器随着 Windows 系统的启动而自动启动。

MySQL Workbench 和 navicate 功能类似,推荐使用 navicate。

MySQL 源代码

官网下载地址:downloads.mysql.com/archives/co…

不要选择用默认的“MicrosoftWindows”,而是要通过下拉栏,找到“Source Code”,在下面的操作系统版本里面,

选择 Windows(Architecture Independent),然后点击下载。

image.png

下载下来的压缩文件解压,我们就得到了 MySQL 的源代码。

MySQL 是用 C++ 开发而成的,简单介绍一下源代码的组成:

mysql-8.0.28 目录下的各个子目录,包含了 MySQL 各部分组件的源代码:

  • sql 子目录是 MySQL 核心代码;

  • libmysql 子目录是客户端程序 API;

  • mysql-test 子目录是测试工具;

  • mysys 子目录是操作系统相关函数和辅助函数;

源代码并不神秘,就是普通的 C++ 代码,跟你熟悉的一样,而且有很多注释,可以帮助你理解。