|
|
|
| Не создаётся файл по абсолютному пути в каталоге и возникает ошибочка:
ERROR 1 (HY000) at line 3: Can't create/write to file '/home/boss/cboss/ext.unl' (Errcode: 13)
|
, а при указании относительного пути файл создаётся в директории с базой данных /var/lib/mysql/mag2
Вот примерчик:
#!/bin/bash
# customers_mag
#
ERROR=25
NO_ARGS=0
if [ $# -eq "$NO_ARGS" ]
then
echo "
-h что-то такое здесь написано
"
exit $ERROR
fi
while getopts "h" OPTION
do
case $OPTION in
h)
mysql -u root -p << ends
use mag2;
CREATE TEMPORARY TABLE temp_aaa SELECT * FROM customers;
SELECT * INTO OUTFILE "$HOME/cboss/ext.unl" FROM customers;
ends
;;
esac
done
shift $(($OPTIND - 1))
|
делаю всё от обычного пользователя. Мне кажется дело в правах, только не знаю какие кому права предоставить и в какую группу включить. Подскажите, пожалуйста, что нужно поменять, чтобы файл мог создаваться в домашних каталогах обычного пользователя
на папке /var/lib/mysql/ права
drwxr-xr-x 9 mysql mysql 4096 Июл 29 14:59 mysql
|
папка обычного пользователя
drwx------ 50 boss boss 4096 Июл 29 15:29 boss
|
| |
|
|
|
|
|
|
|
для: RomantikPro
(29.07.2007 в 15:44)
| | >папка обычного пользователя
>drwx------ 50 boss boss 4096 Июл 29 15:29 boss
И как сюда пользователь mysql сможет попасть? Либо права увеличивайте, либо изменяйте владельца, либо mysql включайте в группу boss и изменяйте права на drwxrwx---. | |
|
|
|
|
|
|
|
для: cheops
(29.07.2007 в 16:00)
| | да я понимаю, что mysql туда не может попасть :-) Просто как это сделать, чтобы всё не открыть.
Спасибо! Сейчас попробую. | |
|
|
|
|
|
|
|
для: RomantikPro
(29.07.2007 в 16:21)
| | mysql добавьте в группу boss, если только boss не выполняет роль root и установите права drwxrwx---. | |
|
|
|
|
|
|
|
для: cheops
(29.07.2007 в 19:43)
| | boss не выполняет роль root, это обычный пользователь.
После добавления mysql в группу boss и проставление прав 770 на все вложенные каталоги в директории /home и на нее саму, всё тоже самое. Я даже поставил везде 777. Не помогло.
Изначально у /home владелец был root, группа тоже root. И я нормально тогда заходил из под boss с помощью mysql -u root -p (из консоли). Менял группу для /home на mysql, потом на boss, всё тоже самое. Менял также владельца /home и всех вложенных файлов и каталогов на boss........не помогло!
Может быть нужно как-то в /etc/my.cnf указать явно путь к нужному каталогу в котором я хочу создать файл с выгружаемыми из MySQL данными?
PS: ОС - Fedora Core 6 | |
|
|
|
|
|
|
|
для: RomantikPro
(29.07.2007 в 23:35)
| | Хм... так в операторе SELECT * INTO OUTFILE вы можете указать любой путь какой хотите. | |
|
|
|