我正在运行带有MySQL 5.5.27-log的EasyPHP 5.4.6。
当我尝试使用以下内容创建临时表时:
CREATE TEMPORARY TABLE temp_table (x int);我得到以下错误:
ERROR 1005 (HY000): Can't create table 'temp_table' (errno: 22)但是,如果我删除“临时”,它就会起作用。
临时表的语法是从一个示例页面逐字复制过来的。我试着用谷歌搜索错误号,但没有得到任何有用的结果。
有没有人能想到可能发生了什么?
发布于 2012-11-30 06:29:48
错误号: 22表示MySQL正在尝试访问具有无效路径(fopen -> INVAL)的文件。MySQL不太可能生成无效路径,因此请检查您的临时路径是否设置正确。如果您的MySQL配置中有一个自定义的设置tmpdir,请确保它是一个有效的路径。如果没有,请使用SHOW VARIABLES LIKE '%tmp%'检查当前值;如果某些内容不正确或缺少,请检查系统的TEMP环境变量是否设置正确。有关更多信息,请查看http://dev.mysql.com/doc/refman/5.5/en/temporary-files.html。
发布于 2012-11-30 06:15:43
确保您使用的用户具有create_tmp_table_priv权限( mysql数据库的表user )
https://stackoverflow.com/questions/13635450
复制相似问题