准备:下载好windows-mysql5.7.19压缩包并解压,所用命令行是管理员命令行
1)配置mysql环境变量: 将解压后的bin目录加入path环境变量
2)打开管理员命令提示符,安装mysql:
> mysqld install
3)在解压后的根目录下生成data文件夹: > mysqld --initialize
4)在解压后的根目录下找到*.ini文件(如果没有,自己新建然后去百度一份内容或者直接下载一份),在[mysqld]标记下方,修改内容如下:
basedir="你的mysql根目录"
datadir="你的mysql根目录\data"
#用户密码永不过期,这个是默认,可以删除;如果要限定多少天就设置多少,比如90就是90天
default_password_lifetime=0
5)启动服务: > net start mysql
6)在5.7中root用户会有一个随机的密码,可以在mysql根目录\data*.err中找到一下的一句话,后边的就是密码:
A temporary password is generated for root[@localhost](https://my.oschina.net/u/570656): 密码
7)这时的密码是过期的,也就是说,这个密码是不能对数据库进行操作的,只能登陆,所以必须修改密码(这个修改方式可以同时设置密码为不过期): > mysql -uroot -p后输入密码登陆mysql > alter user root@localhost identified by 'newpassword';
附,,如果不通过*.err文件找到密码,也可以有另一种方式(以下内容从第六步开始):
6)打开*.ini文件,在[mysqld]标记下加上一下的一句话然后保存,这一句让mysql服务跳过检查权限表直接进入安全模式(不需要密码登陆):
skip-grant-tables
7)关闭服务: > net stop mysql
8)开启服务: > net start mysql
9)进入mysql,使用名为mysql的数据库: > mysql > use mysql;
修改root用户的密码,5.7中password字段已经改为authentication_string,然后要flush刷新权限相关表让修改生效(这一步修改的只是密码字段,没有修改是否过期字段):
update user set authentication_string=password('新密码') where user='root'; flush privileges;
11)退出: > quit;
12)关闭服务,在*.ini文件中删除skip-grant-tables,最后开启服务,相关操作见以上步骤
13)同上第七步
可能的错误解决:
1、如果出现拒绝访问,检查mysql服务是否开启、端口(一般是3306,可以通过*.ini确定)是否开启、密码是否正确(如果不确定是否正确可以通过以上安全模式下改密码的方式),如果还是无法解决,笔者目前也还没深入理解mysql,所以无法给出建议。
DONE.