Код: Выделить всё
Код: Выделить всё
#!/bin/bash
mysql -uroot -e 'SELECT id, programid FROM data.call' >> /d/testoutput.txt ;
printf 'SELECT id, programid FROM data.call\n' >> /d/testoutput.txt ;
exit ;
sh
При запуске из оболочки — sh /d/phpbash.sh — обе команды выполнены.< /p>
При запуске из браузера PHPBASH.PHP — выполнялась только команда PRINTF, MySQL SELECT игнорируется.
Поскольку PRINTF работает — это означает, что всех разрешений достаточно. для выполнения BASH, запущенного PHP.
Включен полный журнал для MySQL - там такой запрос даже НЕ возникал, так что даже из bash не перешел.
ERGO - в MySQL 8 я не могу передать запрос из BASH в MySQL, если BASH работает на PHP.
(Кстати, тот же скрипт на другом сервере работает в той же среде, но CentOS 7 и версия MySQL 5.5)
Может быть, в конфигурацию MySQL 8 следует добавить «секретную настройку», чтобы разрешить такой запрос? Или что-то конкретное от Apache?
Подробнее здесь: https://stackoverflow.com/questions/790 ... run-by-php