【发布时间】:2016-04-04 00:29:09
【问题描述】:
我正在使用 MySQL 5.7.10 和 Flyway 来处理我的数据库迁移。在 Linux 和 Mac 上一切正常,但在 Windows 10 上出现此错误:
Error on rename of '.\mydb\#sql-1da0_a.frm' to '.\mydb\proc_error_table.frm' (Errcode: 13 - Permission denied)
这是导致错误的 SQL 的一部分:
DROP TABLE IF EXISTS `proc_error_table`;
DROP TABLE IF EXISTS `error_import`;
CREATE TABLE `proc_error_table` (
`procedure_name` varchar(30) NOT NULL,
`sql_state` varchar(20) NOT NULL,
`sql_message` varchar(100) NOT NULL,
`error_timestamp` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
create index idx_proc on proc_error_table(procedure_name);
#
# This is the line causing the error.
#
create index idx_file_id on proc_error_table(data_set_file_id);
我尝试显式定义具有足够权限的 tmpdir,但没有奏效:
tmpdir = C:/temp
我试图为数据提供明确的完全访问权限 对 MySQL 数据目录的完全访问权限,但这没有用:
C:\ProgramData\MySQL\MySQL Server 5.7\Data\mydb
我尝试将运行 MySQL 的用户更改为我的个人帐户,但没有成功。
某事,某事阻止 MySQL 访问该目录和/或文件。 Windows 事件日志和 MySQL 都没有显示任何阻止它的迹象。
我可以使用什么工具来解决这个问题?
【问题讨论】:
-
你在运行
FlyWay as run as Administrator?? -
@Mr.Arjun,是的,我也在以管理员身份运行 Flyway。
标签: mysql windows permissions windows-10