因为之前在安装mysql-5.x时,每一步都得小心翼翼看着文档一步步的安装,十次有九次到了最后一步,颤抖着按下Execute按钮后,结果窗体来了个未响应,所有的付出都白费了,特别是安装失败时,只在控制面板里卸载mysql,是远远不够的,它早在你电脑的角落里生成了注册表,mysql很挑剔,注册表不删干净,它是不会让你安装成功的,本着宁可错杀一百,也不放过一个的原则,我已经两次把系统删瘫痪了。
如果一台电脑从来没安装过mysql,那太好了,如果之前安装过,但是没成功,怎么办?
该删掉的都删掉了以后,要开始MySQL 8.0.11的安装了
1.下载压缩包
下载MySQL-8.0.11-winx64的压缩包
打开http://dev.mysql.com/downloads/mysql/进入页面后可以不登录。后点击底部“No thanks, just start my download.”就可以下载安装包。
2.安装
2.1 解压,重命名
把压缩包解压到安装目录,安装目录不要傻乎乎的选择C盘,把C盘都堆满了电脑怎么可能不卡顿,放到其他盘里也不影响,我放在了F盘,解压后文件夹名字是MySQL-8.0.11-winx64太长了!可以重命名为MySql,打开解压后的文件夹,如下图所示:
2.2 配置环境变量
右击->我的电脑->属性->高级系统设置->环境变量
找到path变量,点击“编辑”按钮,将解压文件夹下的bin路径添加到变量值中(bin路径怎么获得?不要手动敲,找到解压后的文件夹里的bin文件夹,打开bin文件夹,右击该文件夹里的任意文件,在菜单中点击属性,然后把“位置”后的路径复制一下),要以分号开头并以分号(分号是英文输入法中的分号不是中文输入法下的分号)结尾。添加完毕后,点击确定。
2.3 配置初始化的my.ini文件
我们发现解压后的目录并没有my.ini文件,要自行创建。在安装根目录下添加 my.ini(新建文本文件,将文件类型改为.ini),写入基本配置:(千万不要手动敲,容易出错,把下面的红色部分直接复制粘贴进去就好)
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=F:\\Mysql
# 设置mysql数据库的数据的存放目录
datadir=F:\\Mysql\\Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
注意: 在设置mysql的安装目录时,写自己实际解压的目录,我解压在F:盘所以我写的是
basedir=F:\\Mysql
设置mysql数据库的数据的存放目录,也是实际解压的目录
datadir=F:\\Mysql\\Data
创建完my.ini配置文件后,如下图所示:
2.4 安装
在安装时,必须以管理员身份运行cmd,否则在安装时会报错,会导致安装失败的情况。
①选中bin文件夹
②选择以管理员身份打开命令提示符
③输入
mysqld --initialize --console
(注意mysqld和--initialize之间有一个空格,--initialize和--console之间也有一个空格)
执行完成后,会打印 root 用户的初始默认密码
注意:执行输出结果里面有一段: [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: J;sZg_lgq9yl 其中root@localhost:后面的“J;sZg_lgq9yl”就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到。
如果你没记密码关掉了,那就把data文件夹删掉,再执行一遍初始化命令就OK了。
2.5 安装服务
①在刚刚看到的窗口里有一句 F:\Mysql\bin> 在它后面写上一句
mysqld --install
(mysqld和--install之间有空格)
看到这句,说明已经安装成功啦!
②安装完成之后,就可以通过命令net start mysql启动MySQL的服务了
如果在输入net start mysql命令后点击回车,提示‘net’不是内部或外部命令,稳住,不要慌
打开刚刚配置环境变量的地方(右击->我的电脑->属性->高级系统设置->环境变量->path),点击编辑,然后将“C:\windows\system32”以分号开(英文输入法下的分号)头并以分号结尾,添加进去就可以。
③在F:\Mysql\bin>后输入mysql -u root -p命令,然后会提示输入密码,密码就是刚刚要记下的密码,密码输入正确后就会看到如下界面,运行完不要关,接下来还要用这个窗口:
刚刚系统给的密码是随机生成的,特别不好记,我们可以修改一个好记的密码
在”mysql>”后输入ALTER USER “root”@”localhost” IDENTIFIED BY “你自己想设置的密码”;
如果点击回车后出现了错误提示,那就得去my.ini的[mysqld]底下加上一句话
default_authentication_plugin=mysql_native_password
对数据库初学者来说,如果直接在cmd窗口写数据库语句并执行,可能会受到极大的挫败感,如果在Navicat里学习练习就很easy了,下载并安装Navicat,开开心心的打开Navicat创建连接以后,想打开连接时发现系统报错了,错误还挺长:1251-Client does not support authentication protocol requested by sever:consider upgrading MySQL client
这时,重复2.4的①②在F:\Mysql\bin>后输入mysql -u root -p命令,然后会提示输入密码,输入刚刚自己设置的密码
在”mysql>”后输入
ALTER USER “root”@”localhost” IDENTIFIED WITH mysql_native_password BY “你自己设置的密码”;
mysql>FLUSH PRIVILEGES;
然后再打开Navicat建立连接,就连接上了。