【发布时间】:2023-03-10 07:24:02
【问题描述】:
我正在尝试为 MySQL (5.1.54) 全文索引设置自己的停用词列表,但遇到了配置问题。我尝试了以下步骤:
-
我确实通过添加以下行在 /etc/mysql/my.cnf 中设置了系统变量:
ft_stopword_file = "/home/buli/stopwords.txt" - 我创建了文件 /home/buli/stopwords.txt,其中包含应忽略的单词
-
现在,当我使用 sudo service mysql restart 重新启动 MySQL 时,/var/log/mysql/error.log 中有条目说:
/usr/sbin/mysqld: File '/home/buli/stopwords.txt' not found (Errcode: 13) 111218 19:07:18 [Note] Event Scheduler: Loaded 0 events 111218 19:07:18 [Note] /usr/sbin/mysqld: ready for connections.
运行 perror 13 将其翻译为 permission denied 问题。然而该文件是存在的,我什至给了它完全的权限:
$ ls -l /home/buli/stopwords.txt
-rwxrwxrwx 1 buli buli 6 2011-12-18 18:41 /home/buli/stopwords.txt
是否有任何其他特定于 mysql 的原因导致此错误发生(因为文件权限似乎没问题)?
【问题讨论】:
-
/home/buli怎么样?它看起来像某人的主目录,因此默认情况下它可能不公开。 -
mysql 用户无法读取您的主目录。默认情况下,主目录通常为 0700。将文件移动到更公开的位置,例如 /opt、/usr/local 或 /etc。
标签: mysql linux permissions full-text-search