天天看点

【mysql报错】mysql ERROR

mysql ERROR

1、ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

解决:SET PASSWORD = PASSWORD('root');

因用的是root的用户登录,故修改为原来的密码。

 2、ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'test.employee.d_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

场景:执行select d_id,sex from employee group by sex;报错

原因:

SQL的grop by 语法为,

select 选取分组中的列+聚合函数 from 表名称 group by 分组的列

从语法格式来看,是先有分组,再确定检索的列,检索的列只能在参加分组的列中选。

3、错误代码: 1064(一般是语法错误,如逗号,少/错关键字等)

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'test.ceshi2 change 标高 cbg decimal(10,3)' at line 1

场景:修改字段名,SQL:alter test.ceshi2 change 标高 cbg decimal(10,3)

原因:语法错误,少了一个table,正确的语句是

ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型;

少了table!!!

4、[Err] 1248 - Every derived table must have its own alias

每个派生出来的表都必须有一个自己的别名

5、ERROR! MySQL is running but PID file could not be found

解决:

检查系统空间时候不足,如果是清理一下不常用的文件,释放空间,或给系统添加硬盘。

6、ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

原因:

设置密码的时候过于简单,这个是在5.7后有可能会提示的,不能过于简单并且要大于8个字符;

解决:

重新设置一个复杂一点的密码就好。

7、ERROR 1396 (HY000): Operation CREATE USER failed for 'mysql'@'localhost'

原因:删除mysql用户直接使用delete from mysql.user where user like '%mysql%';

然后重新创建mysql用户报错;

解决:

drop user 'mysql'@'localhost';

删除后重新创建用户即可,如果还创建不成功有可能就是碰到mysql的一个bug,需要刷新权限

flush privileges;

然后重新创建用户。

8、ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/u01/run/mysql3306.sock' (2)

原因:

正常启动mysql服务后,使用mysql直接登录mysql报错;

因是使用编译安装mysql,当时指定的-DMYSQL_UNIX_ADDR=/u01/run/mysql3306.sock为这个值,但是在my.cnf里指定的socket=/u01/run/my3307/mysql.sock是这个值,每次使用my.cnf启动mysql的时候会在这个位置临时生成mysql.sock文件,并不是编译时指定的mysql3306.sock这个文件

解决:

启动mysql的时候加上--sorcket=/u01/run/mysql3306.sock这个参数,让mysql生成sock的位置为编译时指定的位置即可。

9、从库Slave_SQL_Running_State: Reading event from the relay log

原因:

因主库执行了delete大表的操作导致,而且表并没有主键

解决:

给表添加主键