经历了两天的折磨,终于把这个最新版的mysql 8.0.16安装好了,各种细节要整死人了
链接:https://pan.baidu.com/s/1IW853DdgtJYvAsSfGTr6fg
提取码:fqi6
本文所用的mysql版本共享给大家
第一步 解压文件
解压完之后是如下的样子,其中my.ini需要你自己建立(新建文本文件,将文件类型改为的.ini)
第二步 配置环境变量
找到你解压的这个文件,找打mysql的bin路径,放到你的环境变量中
C:\Download\mysql-8.0.16-winx64\bin 这是我的路径
image.png
第三步 修改你的my.ini文件
image.png下面为my.ini的配置文件,你把安装目录和数据存放目录改成你自己的就可以了
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:/Download/mysql-8.0.16-winx64
# 设置mysql数据库的数据的存放目录
datadir=C:/Download/mysql-8.0.16-winx64/Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
第四步 安装mysql
1 以管理员身份打开cmd
image.png2 进入 mysql的bin目录
image.png在MySQL的安装目录的仓目录下执行命令:(必须用系统管理员身份运行的cmd中执行)
mysqld --initialize --console
执行完之后会有这个界面出现,系统会为你生成一个随机密码:
9P0gYk-?0,后面登录就要用这个,所以一定要记住
注意:这里有点坑,我自己生成的随机密码后面怎么都登不上,希望你不要遇到,解决方法我放在最后
image.png
第五步 安装服务
1.以管理员身份打开cmd
2.进入mysql的bin目录
image.png
3.执行以下命令
mysqld --install [服务名](服务名可以不加默认为mysql)
image.png
到这一步就差不多成功了
如果出现这个
image.png
说明mysql的服务还在把它删掉
用这个命令
SC删除的MySQL
image
在执行上面安装服务
image
image
服务安装成功之后通过命令net start mysql启动MySQL的服务
那么到这一步,如果没有问题,那么你打开cmd,输入
mysql -u root -p
再输入你刚刚生成的随机密码就行了
进入mysql之后再把密码改成你自己喜欢的就可以了
具体步骤(针对8.0.16)
1.首先登录MySQL。
2.连接权限数据库:
use mysql;
3.改密码:
ALTER USER root@localhost IDENTIFIED BY '123456';
输入上面的代码,之后你的登录密码就变成了123456
刷新权限(可要可不要):flush privileges;
附录:
8.0之前版本,忘记密码修改方法
找到bin目录:mysqld --skip-grant-tables
重新在开一个cmd窗口
找到bin目录:mysql就进入登陆状态了
5.7.22修改密码语句:
update user set authentication_string=password('123456') where user='root' and host='localhost';
5.6.修改密码语句:(我没有实验过,网上都是这么写的)
update user set password=password('123456') where user='root' and host='localhost';
异常情况
刚刚说了一种情况,就是你在安装好了之后,使用随机生成的密码登录mysql,但是显示一下信息
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
问题描述:在命令行输入 mysql -u root -p 登录mysql,返回”Can't connect to MySQL server on localhost (10061)”错误
image
解决办法
1、首先安装mysqld服务器,输入命令:mysqld --install image如果显示服务已存在,就参照上面的教程,删除服务,再安装服务即可
现在就安装好了
2、接下来就是启动服务器了,输入命令:net start mysql
image 本来我以为跟别人一样在这个地方就启动了,结果事与愿违,于是又找了很久,别走神!看下面!!
3、输入命令:mysqld --initialize-insecure
完了再次输入:net start mysql
image
4、又给我出了个问题:Access denied for user 'root'@'localhost' (using password: YES)
image
5、 安装的时候设了密码,但是我不用密码就可以登录,用了密码反而不能登录,为什么不用密码就可以登录???
image
问题解决:这里和你初始化的方式有关
这里初始化有两种方式
1.mysqld --initialize[服务名]
这种方式是安全的初始化方式,需要在登录的时候输入密码才能成功登录
2.mysqld --initialize-insecure
这种方式是不安全的登录方式,登录时不需要密码直接登录即可
mysql -u root即可登录
6、行!改密码呗。进入mysql数据库:use mysql
image.png
7.修修改完了,quit退出数据库,再进来试试就可以了
image.png
如果服务安装好了,下面方法也可以尝试:
image.png
具体步骤(针对8.0.16)
1.首先登录MySQL。
2.连接权限数据库:
use mysql;
3.改密码:
ALTER USER root@localhost IDENTIFIED BY '123456';
输入上面的代码,之后你的登录密码就变成了123456
刷新权限(可要可不要):flush privileges;
附录:
8.0之前版本,忘记密码修改方法
找到bin目录:mysqld --skip-grant-tables
重新在开一个cmd窗口
找到bin目录:mysql就进入登陆状态了
5.7.22修改密码语句:
update user set authentication_string=password('123456') where user='root' and host='localhost';
这边总结一下用到的命令:
如果忘记了密码,下面推荐一个方法:
http://www.manongjc.com/article/91673.htm
1.打开命令窗口cmd,输入命令:net stop mysql,停止MySQL服务,
2.开启跳过密码验证登录的MySQL服务
输入命令
mysqld --console --skip-grant-tables --shared-memory
3.再打开一个新的cmd,无密码登录MySQL,输入登录命令:mysql -u root -p
image.png
-
密码置为空,命令如下:
use mysql
update user set authentication_string='' where user='root';
5.退出mysql,执行命令:
quit
image.png -
关闭以-console --skip-grant-tables --shared-memory 启动的MySQL服务,
-
打开命令框,输入:net start mysql 启动MySQL服务。
8.步骤4密码已经置空,所以无密码状态登录MySQL,输入登录命令:mysql -u root -p
9.利用上一篇博客中更改密码的命令,成功修改密码,如下图:
(1)ALTER USER root@localhost IDENTIFIED BY '123456';
(2)ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
(3)ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '111111';
image.png
分享一个好用的数据库开发软件:
image.png
链接: https://pan.baidu.com/s/1zuKRjxMgGgYkZdN4Czc2YQ 提取码: h26r
网友评论