MySQL 8.0.19安装和配置超详细教程
一、下载MySQL
先去官网下载,网址:https://www.mysql.com
进入首页,然后点击 DOWNLOADS,如下图:
滚动条往下拉
点击MySQL Community(GPL) Downloads进入下载页
选择MySQL Community Server,进去后滚动条往下拉
点击Download进入如下页面:
点击 No thanks, just start my download. 开始下载。
二、解压到相应目录
下载完成后解压,如下图:(注意:解压后的目录并没有my.ini文件,my.ini文件需要自己新建)
三、配置my.ini文件
在当前文件夹下也就是根目录下新建文本文件,将文件类型改为.ini,写入基本配置:(注意:配置文件中的basedir和datadir的路径要和实际存放的路径一致哦,如果mysql的根目录下没有data文件夹,就自己手动创建一个)
[client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 [mysqld] # 设置3306端口 port=3306 # mysql根目录 basedir=D:\Developer\SoftWare\MySQL\mysql-8.0.19-winx64\ # mysql数据库的数据存放目录 datadir=D:\Developer\SoftWare\MySQL\mysql-8.0.19-winx64\data # 默认存储引擎 default-storage-engine=INNODB # 允许最大连接数 max_connections=200 # 允许连接失败的次数 max_connect_errors=10 # 服务端使用的字符集默认为utf8mb4 character-set-server=utf8mb4 # 默认使用“mysql_native_password”插件认证 #mysql_native_password default_authentication_plugin=mysql_native_password [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8mb4
四、初始化MySQL
右击cmd.exe,以管理身份运行 (注意:尽量以管理员身份运行CMD,要不然后续安装服务的时候会报错)
进入MySQL的bin目录,输入mysqld --initialize --console,回车
root@localhost后面的=tYhR&4kAWs#是初始密码(首尾没有空格),在没有修改密码之前,这个密码需要记住,后面登录要用到。
五、安装MySQL服务
输入mysqld --install,回车
如果出现Service successfully installed. 就代表成功啦。如果之前cmd.exe没有以管理员身份运行,这里就会失败。
六、启动MySQL服务
安装服务成功之后,再输入net start mysql来启动服务,回车
这样就OK了。
七、连接MySQL
首先我们需要一个数据库图形化工具,比如Navicat, SQLyog等,没有就去官网下载一个,随便哪个都行,我用的是SQLyog,Navicat的连接步骤也是一样的,以下的步骤Navicat同样适用。
打开SQLyog(或Navicat),新建MySQL连接
SQLyog点击新建,Navicat点击连接,连接名随便取就行,输入之前保存的root @ localhost:后的密码,复制粘贴,然后点击下方的测试连接测试一下。不出意外的话,应该是失败的,会报错,如下图所示:
在命令行里输入 mysql -uroot -p ,结果如下所示:
网上的解决方法大多都是同一个,直接修改my.ini文件,但是我试了并没有用,后来通过命令行的方式修改成功了。步骤如下:
1、以管理员身份打开cmd,切换到MySQL的bin目录
2、关闭MySQL服务器,输入 net stop mysql ,等它关闭成功
3、跳过输入密码的步骤,输入 mysqld --defaults-file="D:\Developer\SoftWare\MySQL\mysql-8.0.19-winx64\my.ini" --console --skip-grant-table (注意:别忘了把双引号里的路径改成自己my.ini文件所在的路径)
如上图所示这样,就是成功了。
4、重启服务器,输入 net start mysql ,等它开启成功
5、登录MySQL服务器,输入 mysql -uroot -p ,再次输入之前保存的密码,回车,就可以登录成功了。(注意:密码中数字1和字母l很像,要仔细)
八、修改密码
1、密码永不过期:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE NEVER;
2、密码有期限:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE;
然后重新登录一下服务器就OK了。