mysql安装常见问题(系统找不到指定的文件、发生系统错误 1067 进程意外终止)
https://blog.csdn.net/mhmyqn/article/details/17043921
mysql升级到5.7了,wordpress导数据报错 [Err] 1067 - Invalid default value for 'access_date'
https://blog.csdn.net/hbhcxs/article/details/85045056
MySQL报错: Found option without preceding group in config file:XXX; Fatal error in defaults handling.
https://blog.csdn.net/Life_android/article/details/56512606
MySQL5.7
参考 http://blog.csdn.net/u013205623/article/details/79171698
一、下载
https://dev.mysql.com/downloads/mysql/
按照自己电脑位数下载相应安装包
二、安装
1. 解压到想要安装的目录
2. 新建一个my.ini
注意:
a、文件编码必须为ANSI,不然install时可能会找不到my.ini
b、必须命名为my.ini而不是my-default.ini,防止在使用时mysql找不到配置文件
输入以下内容,安装目录记得改一下
[mysqld]
port=3306
# 设置为自己MYSQL的安装目录
basedir=F:\my\MySql5.7\mysql-5.7.20-winx64
# 设置为MYSQL的数据目录
datadir=F:\my\MySql5.7\mysql-5.7.20-winx64\data
#默认编码格式
character_set_server=utf8
init_connect='SET NAMES utf8'
#跳过数据库权限验证,如:跳过密码验证、允许修改数据表等
skip-grant-tables
#以下内容最后安装好后在打开,否则可能出错
#其他规则
#sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#允许默认时间字段为0
#explicit_defaults_for_timestamp=true
#查询数据表时,表名不区分大小写
#lower_case_table_names=1
3.配置环境变量
1)右键单击我的电脑->属性->高级系统设置(高级)->环境变量
点击系统变量下的新建按钮
输入变量名:MYSQL_HOME
输入变量值:F:\my\MySql5.7\mysql-5.7.20-winx64
#即为mysql的自定义解压目录。
2)选择系统变量中的Path
点击编辑按钮
在变量值中添加变量值:;%MYSQL_HOME%\bin
注意是在原有变量值后面加上这个变量,用;隔开,不能删除原来的变量值
4.以管理员身份运行cmd
在cmd.exe右键选择“以管理员身份运行”
5.在cmd进入bin目录,输入mysqld -install mysql --default-file= my.ini的物理路径
注意:
a、必须进入到bin,不然可能也会报错
b、安装时就指定配置文件,避免mysql找不到这个文件而导致里面的配置失效
三、测试
1. 继续在cmd输入net start mysql,此时报错如下
解决:在安装目录下新建一个data文件夹,在cmd继续输入mysqld --initialize --console初始化,再输入net start mysql,服务启动成功
2.服务启动成功之后,就可以登录了,如图,输入mysql -u root -p,第一次登陆没有密码直接按回车……又报错了
查相关资料,说data文件夹的auto.cnf文件用记事本打开,里面有生成的随机密码,要输入那个密码,试一下……还不行
解决:
找到刚才写入的my.ini文件,在[mysqld]下添加skip-grant-tables
在计算机右键,选择“管理”,依次在左侧选择“服务和应用程序”、“服务”,在右侧的服务中找到MySQL,右键,重启服务。
回到cmd,重新进入mysql,成功
修改密码:
mysql> update user set password=password('123456') where user='root';
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
更改方法:
mysql>update mysql.user set authentication_string=password('123qwe') where user='root' and Host ='localhost';
修改root下的密码,123qwe为新密码。
如果直接登录会如下出错:
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
运行如下指令:
SET PASSWORD = PASSWORD(123qwe);
重新设置密码,相当于确认密码。
使用quit,重新用密码登录即可。