软件准备
到MySQL官网下载MySQL的压缩包 点击下载
环境:windows 10 version 1709
一、解压并配置环境
1、到非系统盘下解压下载好的安装包(如果你非要解压到C盘我也不反对)
eg: D:\Program Files\mysql-8.0.11-winx64
并在其根目录下创建data文件夹(用于配置数据库信息和存放自定义表)
2、打开 my.ini 文件 (如果没有自己创建 )
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
basedir = D:\Program Files\mysql-8.0.11-winx64
datadir = D:\Program Files\mysql-8.0.11-winx64\data
port = 3306
# server_id = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
character-set-server = utf8mb4
performance_schema_max_table_instances = 600
table_definition_cache = 400
table_open_cache = 256
[mysql]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4
说明:basedir是MySQL的解压地址
datadir是存放数据的地方(路径必须存在)
3、配置环境变量
到环境下创建系统变量MySQL
在Path中添加变量%MySQL%\bin
进入cmd命令界面,使用mysql -V查看自己的mySql版本信息出现以下信息表示环境配置成功
二、初始化数据库
cmd窗口下使用命令
mysqld --initialize --console
下面第四行就是临时密码,牢记,待会儿会用到
C:\Users\AwesomeYue>mysqld --initialize --console
2018-07-03T12:54:58.457204Z 0 [Warning] [MY-010915] [Server] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2018-07-03T12:54:58.457315Z 0 [System] [MY-013169] [Server] D:\Program Files\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server in progress as process 2428
2018-07-03T12:55:29.982527Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: JKA.Zdq?q5*x
2018-07-03T12:55:56.756098Z 0 [System] [MY-013170] [Server] D:\Program Files\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) initializing of server has completed
三、安装服务
使用
mysqld -install mysql
安装服务,mysql为自己定义的服务的名称
如果出现服务安装被禁止,自行到安装目录的bin目录下执行语句
之后执行 net start mysql 启动服务
停止服务和移除服务执行下面指令
mysqld stop mysql
mysqld -remove mysql
四、修改密码
使用 mysql -uroot -p
使用刚才的临时密码进入mysql
在mysql界面执行
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
修改密码验证插件,同时修改密码。
到此大功告成
题外话:密码认证插件
在MySQL8.0.4以前,执行
SET PASSWORD=PASSWORD('[修改的密码]');
就可以更改密码,但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。
因为当前有很多数据库工具和链接包都不支持“caching_sha2_password”,为了方便,我暂时还是改回了“mysql_native_password”认证插件。在my.ini 的mysqld下添加
[mysqld]
default_authentication_plugin=mysql_native_password
参考:
https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html#upgrade-caching-sha2-password