Mysql配置安装过程
配置完成以后,在启动mysql服务的时候net start mysql,出现了3534错误:
The service did not report an error.
More help is available by typing NET HELPMSG 3534.
这是因为在安装完mysql以后没有进行初始化造成的,重新执行初始化指令即可:
mysqld --initialize
上面的命令会生产一个随机的root密码,如果希望生成一个无密码的root用户,可以使用一下命令:
mysqld --initialize-insecure
备注:在执行初始化之前,需要先将mysql目录中的data文件夹清空或者直接将data文件夹删除,否则初始化完成以后,还是无法启动mysql服务。
安装完mysql,启动mysql服务以后,命令行输入mysql -uroot -p登录时,提示需要输入密码,mysql在安装的时候会生成一个默认的密码,但是我没找到,所以只能重置密码了,因为不知道初始密码,所以在修改密码之前必须先要跳过权限认证这一步:
- net stop mysql,关闭正在运行的mysql服务;
- 打开DOS窗口(管理员身份运行),转到mysql\bin目录下,输入以下命令:
mysqld --skip-grant-tables
skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
- 重新打开一个新的DOS窗口(管理员身份运行),输入mysql回车,此时应该可以正常登录,而且会出现mysql>命令提示符;
- 连接权限数据库: use mysql;
- 修改密码:update user set authentication_string =password("root") where user="root";
- 刷新权限(必须步骤):flush privileges;
- 退出 quit。
其中第5步修改密码,网上的资料大都是set password=...,我在执行的时候,会报错1054的错误,经检查是因为mysql5.7以后,user表password字段修改为了authentication_string ,所以5.7以后的版本要使用authentication_string ,5.7之前的版本还是使用password。