1.MySQL8.0.15安装步骤(windows环境)
windows版mysql8.0安装详解
准备去下载一个本地mysql服务器时,突然发现mysql从5.7瞬间升级为8.0了,那还等什么,直接下载下来玩玩先.下载地址:
https://dev.mysql.com/downloads/mysql/
下载完成后将其解压到自定义目录下,我所有的工具都保存在D:\tools,解压完成后会看见以下目录:
随后,配置环境变量(我的电脑点右键,然后点属性,然后点击环境变量),步骤如下:
1.系统变量新增mysql家目录(都在系统变量,与用户变量没有关系);
系统变量编辑path指向bin目录,执行程序(都在系统变量,与用户变量没有关系);
此时,环境变量配置完成,接下来进行安装mysql的操作.
首先可以看见安装目录下没有my.ini文件或者my-default.ini文件,于是自己在安装目录下创建一个my.ini文件,文件内容如下:
[mysqld]
log-bin=slave-log-bin
relay-log=relay-log
relay-log-index=relay-log.index
server-id=19
bind-address=0.0.0.0
innodb_log_buffer_size=100M
innodb_log_file_size=512M
max_heap_table_size=1024M
tmp_table_size=1024M
thread_cache_size=512
sync_binlog=100
innodb_flush_log_at_trx_commit=2
innodb_flush_log_at_timeout=10
innodb_buffer_pool_size=50M
innodb_buffer_pool_chunk_size=1024M
innodb_buffer_pool_instances=1
read_rnd_buffer_size=16M
read_buffer_size=16M
sort_buffer_size=16M
join_buffer_size=16M
key_buffer_size=16M
bulk_insert_buffer_size=128M
# 参数
table_open_cache=20000
connect_timeout=60
#skip-name-resolve
# 设置3306端口
port=3306
max_allowed_packet=1024M
# 设置mysql的安装目录
basedir=C:\\mysql-8.0.15-winx64\\mysql-8.0.15-winx64 # 切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠。自己尝试吧
# 设置mysql数据库的数据的存放目录
datadir=C:\\mysql-8.0.15-winx64\\data # 此处同上
# 允许最大连接数
max_connections=1000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=200
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#default-storage-engine=MyISAM
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
#log_bin_trust_routine_creators=1
[mysql]
# 设置mysql客户端默认字符集
max_allowed_packet=1000M
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
#max_allowed_packet=1024M
default-character-set=utf8mb4
当然,datadir和basedir文件夹的路径可以根据个人喜好配置,写好了my.ini文件此时,用管理员身份打开cmd窗口
然后先给mysql服务创建名称(方便到时候建立多个mysql服务时不冲突)
mysqld --install mysql8
名字可以根据自己的需要配置,然后就是mysql的初始化:
mysqld --initialize --console
会出现如上的一段,此时要记住自己的初始化密码,如果手残关掉太快了,可以把datadir(即我这里的Data文件夹)删掉,然后在初始化一次.
当然,有些人可能会在此时报错,弹出框如下:
此时你需要下载VC++2015运行包:
vc_redist.x64-VC2015运行库64位.exe: https://page86.ctfile.com/fs/10806086-214297222
vc_redist.x86-VC2015运行库32位.exe: https://page86.ctfile.com/fs/10806086-214296515
这两个地址亲测有效,如果不放心或者链接失效的话可以去百度或者我的CSDN上下载,顺便赏我一丢丢币.嘻嘻
vc_redist.x64-VC2015运行库64位.exe: https://download.csdn.net/download/ycxzuoxin/10518759
vc_redist.x86-VC2015运行库32位.exe: https://download.csdn.net/download/ycxzuoxin/10518739
最近很多人出现这个报错来问我的,我统一回复一下,这个是下面这个链接,我放百度云盘了,大家塞到自己的 C:\Windows\System32 路径下就好了
微软官方网站:https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads
百度云盘:https://pan.baidu.com/s/1QA9r8qoUGG2g31YO_s4uzw 提取码:32am
然后启动mysql服务,在CMD窗口输入指令:
net start mysql8
后面输入的是服务的名称,根据自己的情况写入.
此时我们就可以登录mysql去看看了,输入指令:
mysql -uroot -p
然后它会让你输入密码,输入当时的初始化密码,就可以登录mysql了
弹出这样的信息就是登录成功了.此时我们可以输入更改密码指令更改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
BY后面输入的是你的新密码,我输入的root,方便进入,可以根据个人习惯配置密码.
此时密码更改成功后,我们可以看下用户信息:
select user,host,authentication_string from mysql.user;
创建用户:
CREATE USER root@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'root'@'%';
恩..先前版本的一些sql语句不能用了,一开始我还以为是哪个地方打错了,查了一下才知道是改了。
到这里原本以为应该是完了,不过远程登录一测试,又发现:
好吧,我这个是5.7版本的mysql,低版本的客户端认 mysql_native_password 认证插件,而高版本认 caching_sha2_password 插件,解决方法:
查看默认的密码认证插件:
show variables like 'default_authentication_plugin';
查看当前所有用户绑定的认证插件:
select host,user,plugin from mysql.user;
更改 root 用户的认证方式
-
-
-
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
-
-
-
-
此时用我的mysql可视化工具连接,测试连接成功