MariaDb访问文件系统

时间:2018-04-13 21:33:42

标签: mysql file mariadb

我正在尝试将CS​​V文件读入MariaDb并收到一条显示“权限被拒绝”的错误消息。你能告诉我我做错了什么(详见下文)?

我在OSX High Serra上运行MariaDb 10.2.6。我以'root'@'localhost'的身份登录MariaDb。我已授予'root'@'localhost'FILE特权。用户'root'@'localhost'正在使用安全插件'unix_socket'。

我使用CONNECT存储引擎创建了一个表,如下所示:

create table twins (
  ABOT double,
  SCLK double,
  LMST varchar(30),
  LTST varchar(30),
  UTC varchar(30),
  HORIZONTAL_WIND_SPEED double,
  VERTICAL_WIND_SPEED double,
  WIND_DIRECTION double,
  AIR_TEMP double)
engine=CONNECT table_type=CSV file_name='twins_calib_8066_01.csv'
header=1;

我希望阅读的文件的权限是:

-rw-r--r--   1 ssackett  everyone    873837 Mar 20 11:29 twins_calib_8066_01.csv

当我发出SQL:select * from twins;

我收到错误消息:

  

ERROR 1296(HY000):在twins_calib_8066_01.csv上出现错误174'Open()错误13:来自CONNECT的权限被拒绝

2 个答案:

答案 0 :(得分:0)

CSV存储引擎不允许UPDATE或DELETE,但它允许INSERT,因此mysqld需要对该文件具有写入权限,否则无法打开它。

但是你的CSV文件归ssacckett所有,而不是“mysql”(或者mysqld运行的任何uid),所以它不能被mysqld进程写入。

尝试:

sudo chown mysql:mysql twins_calib_8066_01.csv

将其更改为用户& mysqld进程运行的组。

或者,将文件模式更改为全部可写:

chmod 666 twins_calib_8066_01.csv

答案 1 :(得分:0)

检查包含.csv文件的目录的权限。您需要对目录“搜索”(x)权限才能查看其中的文件。