大家好,我是你们超碎了心的于小二。最近后台有人问我mysql5.7怎么安装配置,自己搞了好久也没搞定,这里我特意的给大家整理了一篇关于安装MySQL的文章,亲测好用,需要的可以来撸了

前言

在安装MySQL的时候会遇到很多问题,博客上有很多解决问题的办法,在这里我附上一些链接,遇到问题的朋友们可以阅读参考哈~本文主要针对于刚接触数据库的小白,来安装MySQL数据库。目前官网上的MySQL版本有5.5,5.6,5.7和8,在开发的时候我们一般要选择比最新版低1到2个版本的,因此我选择了5.7作为要安装的数据库

1.下载步骤

  1. 访问官方网站:https://www.mysql.com/
    选择Downloads下的Community

img

  1. 下载对应的版本
    点击上图的MySQL Community Server,进入下载界面:

img

找到MySQL Community Server 5.7这一链接,点击进入:

img

根据你电脑的版本选择下载对应的ZIP文件,我的电脑是64位的,因此选择这项进行下载,点击Download会进入以下界面:

img

点击No thanks,just start my download
就好,然后开始下载

img

下载完毕后将文件解压到你想保存到的盘和目录内。我是将文件解压到E:\Program Files\Mysql目录下面。

img

以上就完成了下载的全部工作。

2.配置环境变量

  1. 系统—>高级系统设置—>环境变量—>系统变量

img

img

img

点击新建,变量名为:MYSQL_HOME,添加你的mysql-5.7.27-winx64文件夹所在位置。
我的是在E:\Program Files\Mysql\mysql-5.7.27-winx64,如图:

img

  1. 编辑Path,复制;%MYSQL_HOME%\bin到原有值的后面,如图:

img

3.配置my.ini文件

在你的mysql-5.7.27-winx64目录下新建my.ini文件,我的是在E:\Program Files\Mysql\mysql-5.7.27-winx64目录下新建,my.ini文件的内容为:

配置文件一

[mysqld]
#端口号
port = 3306
#mysql-5.7.27-winx64的路径
basedir=E:\Program Files\Mysql\mysql-5.7.27-winx64
#mysql-5.7.27-winx64的路径+\data
datadir=E:\Program Files\Mysql\mysql-5.7.27-winx64\data 
#最大连接数
max_connections=200
#编码
character-set-server=utf8

default-storage-engine=INNODB

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysql]
#编码
default-character-set=utf8

配置文件二

[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
#设置 3306 端口  
port = 3306  
 
# 设置 mysql 的安装目录  
basedir= D:/Java/mysql-5.7.36-winx64
 
# 设置 mysql 数据库的数据的存放目录  
datadir= D:/Java/mysql-5.7.36-winx64/data
 
# 允许最大连接数  
max_connections=200  
 
# 服务端使用的字符集默认为 8 比特编码的 latin1 字符集  
character-set-server=utf8mb4
 
# 创建新表时将使用的默认存储引擎  
default-storage-engine=INNODB

#explicit_defaults_for_timestamp=true

secure-file-priv=D:/Java/mysql-5.7.36-winx64/upload

#skip-grant-tables

img

创建完成后进入下一步。

4.安装MySQL

1.在输入框内输入cmd,以管理员的身份运行,注意这里一定一定一定要以管理员的身份运行,否则在安装过程中会出现因为管理权限不够而导致的Install/Remove of the Service Denied!(安装/卸载服务被拒绝),这一点非常重要!

img

  1. cmd中进入到**E:\Program Files\Mysql\mysql-5.7.27-winx64\bin

目录下:

img

输入安装命令:mysqld -install,若出现Service successfully installed

mysqld.exe --install MySQL57_36 --defaults-file="D:\Java\mysql-5.7.36-winx64\my.ini"

证明安装成功;如出现Install of the Service Denied,则说明没有以管理员权限来运行cmd:

img

3、初始化数据(注:root@localhost:后面的是你的登录密码,我的是“ -(ovmouPs91.”)

mysqld --initialize --user=mysql --console
在这里插入图片描述

然后继续输入命令:mysqld --initialize,此时不会有任何提示:

img

mysqld --initialize 出现Failed to find valid data directory

解决方法:
1、手动删掉自己创建的data文件夹
2、然后再管理员cmd下进入 bin 目录,移除自己的mysqld服务

D:\Program Files\MySQL\bin>mysqld -remove MySQL
Service successfully removed.

3、在cmd的bin目录执行 mysqld --initialize-insecure
程序会在动MySQL文件夹下创建data文件夹以及对应的文件
4、bin目录下执行,mysqld --install ,安装mysqld服务
5、在bin目录下运行net start mysql ,启动mysql服务。

再输入启动命令:net start mysql,出现以下提示证明MySQL启动成功:

img

mysql8.0.15用户root登录开启远程访问权限

1.在服务器端定位到mysql-8.0\bin,打开dos窗口,输入命令:

mysql -u root -p

2.出现让输入密码,输入密码后回车,登录成功后。
4.继续输入命令:

use mysql

select host,user from user;

5.结果如下:

mysql> use mysql
Database changed
mysql> select host,user form user;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'user'
 at line 1
mysql> select host,user from user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| localhost | mysql.infoschema |
| localhost | mysql.session    |
| localhost | mysql.sys        |
| localhost | root             |
+-----------+------------------+
4 rows in set (0.00 sec)

6.果然,发现root用户的访问权限是localhost,需要修改host为%,输入命令:

update user set host='%' where user='root';
flush privileges;

7.再次查询,结果如下:

 
mysql> select host,user from user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| %         | root             |
| localhost | mysql.infoschema |
| localhost | mysql.session    |
| localhost | mysql.sys        |
+-----------+------------------+
4 rows in set (0.00 sec)

8.解决OK,远程登录开启成功。

5.设置MySQL密码

1.在这里设置密码主要是为了解决:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)的问题

  1. 首先停止MySQL服务,输入命令行net stop mysql

img

  1. 在E:\Program Files\Mysql\mysql-5.7.27-winx64目录下找到my.ini,在[mysqld]字段下任意一行添加skip-grant-tables,保存即可:

img

  1. 重启MySQL,输入启动命令:

net start mysql,出现以下提示证明MySQL启动成功:

img

在输入命令mysql -u root -p,不需要输入密码,直接回车:

img

进入MySQL成功!哈哈,来到这一步后就应该值得高兴一下了!

  1. 输入命令行use mysql,进入数据库:

img

6.输入命令行

7.查看用户信息

select host,user,plugin,authentication_string from mysql.user;

8.修改用户密码(最好直接复制粘贴,手敲可能会报错)

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; 

更新user为root,host为% 的密码为123456

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

MySQL 5.5 版本重置密码

update user set password=password('root') where user='root';

更新user为root,host为localhost 的密码为123456

备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码

xxxxxx是你设置的新密码,敲击回车后若出现以下信息,证明修改成功!

  1. 手动停止MySQL服务,在win10搜索栏内输入服务,找到MySQL。点击右键,然后点击停止即可。

img

然后在刚刚的my.ini文件中删除skip-grant-tables这一行,保存关闭。

  1. 再次启动cmd(管理员身份),输入启动命令:net start mysql,再输入mysql -u root -p,再输入你刚刚设置的密码,出现以下信息证明设置成功!

img

然后输入命令行use mysql验证一下,结果报错

img

既然没有重置密码,那就重置一下呗
键入命令行`alter user user() identified by “xxxxxx”;

我的密码是123456,因此我键入alter user user() identified by “123456”;

回车!离胜利越来越近了! 再次输入命令行use mysql`验证一下,成功!

img

总结

算上我写博客的时间,安装这个数据库差不多花掉我4个小时的时间,原因是在安装途中我遇到很多问题,在此总结一下,并附上解决链接:

1.找不到my.ini文件
2.ERROR 1045 (28000): Access denied for user ‘ODBC’@‘localhost’ (using password: NO)
3.ERROR 1045 (28000): Access denied for user ‘ODBC’@‘localhost’ (using password: YES)
4.Unknown column ‘password’ in ‘field list’
5.You must reset your password using ALTER USER statement before executing this statement

转载:MySQL 5.7史上最详细下载安装配置教程

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐