XAMPP и drush под (x)ubuntu: Can't connect to local MySQL server through socket

Главные вкладки

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 6 ноября 2012 в 12:59

Поставил Xampp 1.8. Сайты drupal7 устанавливаются и работают.

А вот drush почему-то не видит файлы настройки drushrc.php.
И, главное, не может подключиться к mysql:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
Пробовал ставить drush из репозиториев (там 5.4.1) и c d.org (там 7.x-5.7), а также через pear, как рекомендовано на странице модуля. Не помогает, "неизменно превосходный результат" (с)реклама.

Подозреваю, что это может быть проблемой mysql, поскольку просто запуск mysql выдает тот же error. Наверное, надо настроить drush на работу с mysql, которая устанавливается XAMPP'ом, а не на системную.

Гугление и яндексирование пока не помогло. Требуется помощь зала.

Комментарии

Аватар пользователя Alexei91 Alexei91 6 ноября 2012 в 17:00

На Ubuntu 12.04 LTS ставил так:

cd /opt && sudo wget http://ftp.drupal.org/files/projects/drush-All-versions-5.x-dev.tar.gz && sudo tar xzf drush-All-versions-5.x-dev.tar.gz && sudo chmod 777 -R drush/ && sudo ln -s /opt/drush/drush /usr/bin/drush

Кроме такой бяки, как "exec: 90: : Permission denied...", которую решил установкой пакета "php5-cli", ничего не встречал. XAMPP тот же - 1.8.1.

Аватар пользователя vadbars@drupal.org vadbars@drupal.org 20 ноября 2012 в 10:38

Проблему не победил. Снес XAMPP и поставил lamp-server c помощью пакета tasksel. На всякий случай инструкция (под ubuntu like системы):

0. Если еще не установлен tasksel, ставим его: sudo apt-get install tasksel

1. Ставим LAMP-сервер: sudo tasksel install lamp-server
или так: sudo apt-get install lamp-server^

2. Ставим PHPmyAdmin:
sudo apt-get install phpmyadmin

3. Настраиваем clean url:
- Включаем mod_rewrite
sudo a2enmod rewrite

- Редактируем файл default настроек apache2 (лежит в каталоге /etc/apache2/sites-available):
заменяем в директиве <Directory /var/www> параметр AllowOverride None на AllowOverride All

- Перезагружаем apache
sudo service apache2 restart

4. Настроим VirtualHosts:
Вариант из http://forum.ubuntu.ru/index.php?topic=34357.0 :
Для примера - создадим имя http://drupal.loc для сайта, который лежит в каталоге /var/www/drupal.loc

- Создаем файл drupal.loc в каталоге /etc/apache2/sites-available и символические ссылки на него в site-enabled:
cd /etc/apache2/sites-available/
sudo touch drupal.loc
sudo a2ensite drupal.loc

- Добавляем в файл /etc/hosts строку: 127.0.0.1 drupal.loc

- Редактируем файл /etc/apache2/httpd.conf. Должно получиться примерно так:
ServerName localhost
<VirtualHost *:80>
ServerName "drupal.loc"
DocumentRoot "/var/www/drupal.loc"
</VirtualHost>

Перезагружаем apache
sudo service apache2 restart

Теперь наш сайт доступен не только как http://localhost/drupal.loc/, но и как http://drupal.loc/