MySQL 5.7 zip 包安装使用记录:
1. 配置环境变量,便到mysql的bin目录
2. 修改配置文件 my.ini (可以直接复制一份 my-default.ini)
basedir = D:/mysql-5.7.11
datadir = D:/mysql-5.7.11/data
3. mysqld -install # 安装mysql 服务
4. net start mysql # 启动mysql 服务
问题:
# 出错:
# TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option.
# 解决如下:
explicit_defaults_for_timestamp=true
# 出错:
# [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode.
# They will be merged with strict mode in a future release.
# 解决: 添加 NO_ZERO_DATE 或者 NO_ZERO_IN_DATE 或者 ERROR_FOR_DIVISION_BY_ZERO
# sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_AUTO_CREATE_USER
sql_mode=ONLY_FULL_GROUP_BY,NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES
5. 以上各种错误都是没有初始化的问题
mysqld --initialize # 初始化
6. 按以上方法做了后,虽然能启动了,但还有很多的Note和Warning,慢慢改吧
net start mysql # 启动服务
7.报错
d:\mysql-5.7.11\bin>mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:NO)
没有设置密码啊,怎么办?
8. 查看日志文件:
2016-03-15T09:22:40.846360Z 1 [Note] A temporary password is generated for root@localhost : sm*p/:(kz6fT
这一行就是在初始化的时候生成的密码: sm*p/:(kz6fT
9. 使用初始化密码登陆后,执行其它任何命令前都会提示你修改密码
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
修改密码的命令:
set password = password('123456');
修改后可以不用退出,就可以执行命令了
10. 在5.7的版本里面user表没有password字段了,密码保存在字段[authentication_string]