MySQL 5.7 for Windows 解压缩版配置安装
MySQL是一个小巧玲珑但功能强大的数据库,目前十分流行。但是官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的。很多人下了zip格式的解压发现没有setup.exe,面对一堆文件一头雾水,不知如何安装。下面笔者将介绍如何解决此情况下安装过程中的各种问题。
操作方法
- 01
MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的。如果是msi格式的可以直接点击安装,按照它给出的安装提示进行安装(相信大家的英文可以看懂英文提示),一般MySQL将会安装在C:\Program Files\MySQL\MySQL Server 5.7 该目录中;zip格式是自己解压,解压缩之后其实MySQL就可以使用了,但是要进行配置。
- 02
完成上述步骤之后,很多用户开始使用MySQL,但会出现图示的错误。这是因为没有配置环境变量所致。配置环境变量很简单: 我的电脑->属性->高级->环境变量 选择PATH,在其后面添加: 你的mysql bin文件夹的路径 (如:C:\Program Files\MySQL\MySQL Server 5.7\bin ) PATH=.......;C:\Program Files\MySQL\MySQL Server 5.7\bin (注意是追加,不是覆盖)
- 03
配置完环境变量之后先别忙着启动mysql,我们还需要修改一下配置文件(如果没有配置,之后启动的时候就会出现图中的错误哦!:错误2 系统找不到文件),mysql-5.7默认的配置文件是在C:\Program Files\MySQL\MySQL Server 5.7\my-default.ini,或者自己建立一个my.ini文件, 在其中修改或添加配置(如图): [mysqld] basedir=C:\Program Files\MySQL\MySQL Server 5.7(mysql所在目录) datadir=C:\Program Files\MySQL\MySQL Server 5.7\data (mysql所在目录\data)
- 04
以管理员身份运行cmd(一定要用管理员身份运行,不然权限不够), 输入:cd C:\Program Files\MySQL\MySQL Server 5.7\bin 进入mysql的bin文件夹(不管有没有配置过环境变量,也要进入bin文件夹,否则之后启动服务仍然会报错误2) 输入mysqld --initialize! 输入mysqld --initialize! 输入mysqld --initialize!官方修改了安装文档,所以以前的5.6安装的代码出现了变化。 先初始化data目录(如果不用管理员身份运行,将会因为权限不够而出现错误:Install/Remove of the Service Denied!) 安装成功
- 05
安装成功后就要启动服务了,继续在cmd中输入:net start mysql,服务启动成功! 此时很多人会出现错误,请看注意: 注意:这个时候经常会出现错误2和错误1067。 如果出现“错误2 系统找不到文件”,检查一下是否修改过配置文件或者是否进入在bin目录下操作,如果配置文件修改正确并且进入了bin文件夹,需要先删除mysql(输入 mysqld -remove)再重新安装(输入 mysqld -install); 如果出现错误1067,那就是配置文件修改错误,确认一下配置文件是否正确。图可以参考引用的5.6安装配置
- 06
服务启动成功之后,就可以登录了,如图,输入mysql -u root -p(第一次登录没有密码,直接按回车过),登录成功!如果能成功那么就恭喜。
- 07
因为是5.7与5.6不同,所以很多时候都并不能第一次成功,而且会出现 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
- 08
所以添加一些我个人所使用的解决方法: 1.在mysql所在的根目录下找到my-default.ini,复制里面的全部内容,如下图 新建一个txt文档,把内容复制进去,然后保存名字改为my.ini,注意需要把文件类型也改为ini,方法查看文件类型,然后把txt后缀改为ini,如果不懂可以上网查找。 2.my.ini配置文件,打开配置文件,找到[mysqld]一行,在下面添加skip-grant-tables后保存该文件,重新启mysql动服务。
- 09
通过cmd进如到Mysql下的bin目录下,输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为我们不能grant(没有权限)。
- 10
进入mysql数据库: mysql> use mysql;Database changed
- 11
输入update mysql.user set authentication_string=password('root') where user='root' ; 输入update mysql.user set authentication_string=password('root') where user='root' ;其中password(’‘)中为你今后的密码。 重复的原因是因为跟5.7以前的输入方式不同。 原因是:新安装的MySQL5.7,登录时提示密码错误,安装的时候并没有更改密码,后来通过免密码登录的方式更改密码,输入update mysql.user set password=password('root') where user='root'时提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',原来是mysql数据库下已经没有password这个字段了,password字段改成了authentication_string,所以如果按照用以前的update mysql.user set password=password('root') where user] ,就会报错。
- 12
编辑my.ini文件删掉skip-grant-tables 这一行,然后重启MySQL,否则MySQL仍能免密码登录。
- 13
这样5.7版本mysql就成功完成了。这个是参考了很多达人攻略然后按照我自己的实践,整合而成的一份帮助各位的参考。