После долгих испытаний и скорбей я подумала, что вымыла всех, готовых зарычать. Сильное волнение. Но тогда радости нет ...
Drush работает. Сайты работают нормально через MAMP. В любом случае, команда «drush cc all» возвращает:
No Drupal site found, only 'drush' cache was cleared. [warning]
'all' cache was cleared. [success]
Этот вопрос поставил в тупик посетителей drupalcon и очень опытных разработчиков. Любые идеи?
Я на Mac OS 10.9.3 с использованием MAMP (бесплатно) Версия 3.0.5
Вот мой статус пьяного:
Drupal version : 7.29-dev
Site URI : http://default
Database driver : mysql
Database hostname : localhost
Database username : db_user
Database name : db_name
PHP executable : /usr/bin/php
PHP configuration :
PHP OS : Darwin
Drush version : 7.0-dev
Drush temp directory : /tmp
Drush configuration :
Drush alias files :
Drupal root : /Applications/MAMP/htdocs/mysite.dev
Site path : sites/default
Пытался выполнить drush от /Applications/MAMP/htdocs/mysite.dev
; от /Applications/MAMP/htdocs/mysite.dev/sites/default
; и используяdrush cc all --uri=http://localhost/mysite.dev
Пробовал запускать drush с сайтов / default. Тот же результат.
Ответы:
Пожалуйста, проверьте, чтобы все нижеуказанные пункты были учтены.
drush
в корневой папке Drupal или в папке, содержащейsettings.php
файл.Команда
mysql
существует (и она у васPATH
).Обратите внимание, что команда базы данных зависит от вашей базы данных,
driver
заданной в вашем файле настроек (например,sqlcmd
для SQL Server; подробности смотрите в различных классах Drush's/src/Sql
).Если команда отсутствует при запуске в какой-либо папке, убедитесь, что путь к ее двоичному файлу добавлен в вашу
PATH
системную переменную.В вашем PHP включено расширение PDO (проверьте:
php -m | grep pdo
илиdrush sqlc
).mysqli
) (проверьте по:)php -m | grep mysql
.Чтобы выяснить, что именно не так, запустите
drush
с флагами-v
(verbose) и-d
(debug), напримери проверьте на наличие ошибок.
Установите расширение базы данных (например
mysqli
) (согласно пункту 4 выше).Для MAMP, см .: Drush не работает на моем Mac
MAMP
Поскольку вы используете MAMP, убедитесь, что вы используете правильную версию
php
бинарного файла (проверьтеwhich php
), и она должна указывать на/Applications/MAMP/bin/php/php5.X.X/bin/php
. Если нет, пожалуйста, добавьте путь в вашPATH
файл rc (например~/.bashrc
):XAMPP
Для XAMPP для Windows, аналогично, добавьте
C:\xampp\mysql\bin
свою переменную окруженияPATH
.Отладка
Если
drush
по какой-либо причине ваша команда не сработала, вот предложенные шаги для отладки drush (команды оболочки).xdebug
. Проверка наphp71 -i | grep xdebug
.drush status
.Создать файл трассировки:
или:
Если xdebug включен для другой версии PHP, укажите с помощью
DRUSH_PHP=/path/to/php
.В случае успеха выходной файл трассировки должен быть напечатан в конце, поэтому запомните это.
Теперь откройте и проверьте файл трассировки.
Чтобы протестировать или сравнить вывод Drush с чистым Drupal, вы можете установить новый Drupal в пустую папку:
источник
drush sqlc
помогло, так как это показало, что база данных не может быть связана с пользователем, что привело меня к проверке пользователя и пароля и выявило, что я их неправильно настроил. Спасибо!~/.my.cnf
файл, в котором указывался пользователь для подключений mysql, но не пароль. Я думаю, что это привело к тому, что пользователь из этого файла использовал пароль с паролем с сайта, который был неверным. Добавление пароля в мой~/.my.cnf
файл или удаление этого файла полностьюБыла такая же проблема с новым Drush 8 на моем Mac под управлением MAMP
Вам нужно добавить это в ваш экспорт .bash_profile PATH = / Applications / MAMP / Library / bin /: $ PATH.
После добавления убедитесь, что вы открыли новое окно терминала, так как оно не будет работать с вашим текущим окном, так как bash необходимо запустить снова.
источник
Как сказал @kenorb, используйте
drush -vd cc all
, это даст вам хорошее представление о том, что происходит в деталях. В моем случае это было связано с ошибкой"mysql command not found"
. Я решил это, установив путь для mysql в моих переменных окружения. Я чувствую, что вам нужно также проверить свой путь для Drush и MySQL и посмотреть, работает ли он.Спасибо!!
источник
Чтобы очистить All Cache с помощью Drush, вам нужно перейти в каталог сайта на терминале, где находится каталог вашего сайта, как в каталоге www или htdocs, а затем в папку вашего проекта после этого выполнить команду:
источник
Извлеките пакет Drush configure.md, в нем есть несколько полезных советов для платформ, поэтому раздел MAMP выглядит так:
источник
Запустив MAMP Pro, я заставил это работать, добавив эту строку в мой
~/.bash_profile
файл:источник