一定要看日志,找到问题,不要盲目查资料。错误日志一般在/var/log/mysql/error.log
问题1:[InnoDB] Unable to create temporary file inside "/tmp"; errno: 13
原因:mysql没有权限在/tmp中创建文件。
解决方法:
提高/tmp
权限,chmod -R 0777 /tmp
问题2: [InnoDB] Unable to create temporary file; errno: 2
原因:/tmp
空间不足。
解决方法:删除/tmp
中的文件(都是临时文件,系统也会定期删除的,问题不大)。rm -f /tmp/*
问题3:[ERROR] Can't find messagefile '/usr/share/mysql-8.0/errmsg.sys'. Check error-message file location and 'lc-message-dir' configuration directive.
原因:查看了/usr/share/mysql-8.0/
下确实不存在errmsg.sys
文件。
解决方法:
/usr/share/mysql-8.0/english/
中有errmsg.sys
文件,将其复制到/usr/share/mysql-8.0/
下。执行命令cp /usr/share/mysql-8.0/english/errmsg.sys /usr/share/mysql-8.0/errmsg.sys
。
在配置文件中声明错误消息文件路径,mysql配置文件为/etc/mysql/my.cnf
,修改后的配置文件为
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
[mysqld]
lc-messages-dir = /usr/share/mysql-8.0/