MySQL 8.0(winx64)安装笔记

一、背景

  从MySQL 5.6到5.7,再到8.0,版本的跳跃不可谓不大。安装、配置的差别也不可谓不大,特此备忘。

二、过程

(1)获取MySQL 8.0社区版(MySQL Community Server)
  从 官网 字样 “MySQL Community Server” 的链接进入到下载页。
  选择8.0.xx(截至2023-9-1,最新版本为34)的zip文件即可(形如:mysql-8.0.34-winx64.zip)。
(2)安装
  解压zip文件到指定位置(推荐为非系统盘的根目录)即可。
  两个环境变量设置:
   ① 新建MYSQL_HOME变量,并设置为MySQL安装文件夹路径。
   ② 将【%MYSQL_HOME%\bin】加入到PATH变量中。
(3)配置
  配置文件(.ini、.cnf等)主要参考官方文档中有关配置文件章节。
  配置文件名规则:先是my.ini,再是my.cnf;检测位置规则:先是C:\,再是安装文件夹。
  8.0版本安装包没有提供配置文件模板,需自行创建,推荐在安装文件夹中创建my.ini文件。
  常见配置项说明如下,配置文件模板(my.ini)附后。

选项组 选项 说明 备注
mysqld basedir MySQL安装文件夹 字符串,
mysqld datadir 数据文件夹 字符串,
mysqld port 服务端口 整形,默认值3306,取值范围 [0, 65535]
mysqld max_connections 同时允许的最大客户端连接数 整形,默认值151,取值范围 [1,100000]
mysqld max_connect_errors 最大连接失败数 整形,默认值100,取值范围 [1,18446744073709551615]
mysqld character-set-server 服务(mysqld程序)的默认字符集 字符串,默认值utf8mb4
mysqld default-storage-engine 数据表的默认存储引擎 枚举,默认值InnoDB
mysqld default_authentication_plugin 默认的身份验证插件 枚举,默认值caching_sha2_password,
其他值:mysql_native_password 和 sha256_password
mysql default-character-set mysql(命令行客户端)默认的字符集 字符串,
client default-character-set 客户端(C API)默认的字符集 字符串,
client port 客户端(C API)默认的连接端口 整形,

(4)初始化、启动 服务

mysqld --initialize --console # 初始化并获取root初始密码
mysqld --install <服务名> # 安装服务,默认服务名为mysql,可以指定,例如:mysql80
net start <服务名> # 启动服务

(5)修改root账户密码

mysql -u root -p #进入mysql命令行工具,密码为root初始密码

ALERT USER root@localhost IDENTIFIED BY '<新密码>';
exit # 退出命令行工具

net stop <服务名> # 重启mysql服务
net start <服务名>
三、问题

(1)允许远程主机连接服务
  默认MySQL不允许远程主机连接。可修改:

mysql -u root -p #进入mysql命令行工具

use mysql; # 选择系统库mysql
select host from user where user='root'; # 查看允许主机
update user set host = '%' where user='root';
flush privileges; # 提交
select host from user where user='root'; # 验证查看
exit # 退出命令行工具

net stop <服务名> # 重启mysql服务
net start <服务名>

(2)数据库字符集修改
  早期默认字符集为utf8,现在几乎统一为utf8mb4(8.0的默认值即utf8mb4)。
  如有修改,可直接修改配置文件的项【character-set-server】即可。需重启服务。

四、结论

  MySQL 8.0相对5.6和5.7等早期版本,安装、配置的难点还是在配置文件。
  而配置项大致分为3组:服务端(mysqld)、mysql命令行(mysql)和客户端(client)。
  对应的配置项(变量)也各有定义:
  ① Server System Variables
  ② mysql Client Options
  ③ mysql_options

五、其他

(1)my.ini配置模板

[mysqld]

# 设置服务端端口
port=3306
# $MYSQL_HOME
basedir=D:\mysql
# 数据文件夹
datadir=D:\mysql\DATA
# 最大连接数
max_connections=200
# 最大连接失败次数
max_connect_errors=10
# 服务端字符集
character-set-server=utf8mb4
# 默认存储引擎
default-storage-engine=INNODB
# 默认认证插件
default_authentication_plugin=mysql_native_password

[mysql]
# 客户端默认字符集
default-character-set=utf8

[client]
# 客户端连接端口
port=3306
# 客户端默认字符集
default-character-set=utf8

(2)数据库创建模板

CREATE DATABASE `<数据库名>` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';

如图所示:
MySQL 8.0(winx64)安装笔记_第1张图片

你可能感兴趣的:(数据库,MySQL,mysql,笔记)